kopia lustrzana https://github.com/OpenDroneMap/WebODM
Add task extent
rodzic
424fb7a2cc
commit
9d29a89227
|
@ -52,6 +52,7 @@ class TaskSerializer(serializers.ModelSerializer):
|
||||||
processing_node_name = serializers.SerializerMethodField()
|
processing_node_name = serializers.SerializerMethodField()
|
||||||
can_rerun_from = serializers.SerializerMethodField()
|
can_rerun_from = serializers.SerializerMethodField()
|
||||||
statistics = serializers.SerializerMethodField()
|
statistics = serializers.SerializerMethodField()
|
||||||
|
extent = serializers.SerializerMethodField()
|
||||||
tags = TagsField(required=False)
|
tags = TagsField(required=False)
|
||||||
|
|
||||||
def get_processing_node_name(self, obj):
|
def get_processing_node_name(self, obj):
|
||||||
|
@ -82,6 +83,16 @@ class TaskSerializer(serializers.ModelSerializer):
|
||||||
|
|
||||||
return []
|
return []
|
||||||
|
|
||||||
|
def get_extent(self, obj):
|
||||||
|
if obj.orthophoto_extent is not None:
|
||||||
|
return obj.orthophoto_extent.extent
|
||||||
|
elif obj.dsm_extent is not None:
|
||||||
|
return obj.dsm_extent.extent
|
||||||
|
elif obj.dtm_extent is not None:
|
||||||
|
return obj.dsm_extent.extent
|
||||||
|
else:
|
||||||
|
return None
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = models.Task
|
model = models.Task
|
||||||
exclude = ('orthophoto_extent', 'dsm_extent', 'dtm_extent', )
|
exclude = ('orthophoto_extent', 'dsm_extent', 'dtm_extent', )
|
||||||
|
@ -93,7 +104,7 @@ class TaskViewSet(viewsets.ViewSet):
|
||||||
A task represents a set of images and other input to be sent to a processing node.
|
A task represents a set of images and other input to be sent to a processing node.
|
||||||
Once a processing node completes processing, results are stored in the task.
|
Once a processing node completes processing, results are stored in the task.
|
||||||
"""
|
"""
|
||||||
queryset = models.Task.objects.all().defer('orthophoto_extent', 'dsm_extent', 'dtm_extent', )
|
queryset = models.Task.objects.all().defer('dsm_extent', 'dtm_extent', )
|
||||||
|
|
||||||
parser_classes = (parsers.MultiPartParser, parsers.JSONParser, parsers.FormParser, )
|
parser_classes = (parsers.MultiPartParser, parsers.JSONParser, parsers.FormParser, )
|
||||||
ordering_fields = '__all__'
|
ordering_fields = '__all__'
|
||||||
|
|
|
@ -526,6 +526,10 @@ _('Example:'),
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setAlignmentPolygon = (task) => {
|
||||||
|
console.log(task.extent)
|
||||||
|
}
|
||||||
|
|
||||||
download = format => {
|
download = format => {
|
||||||
let output = "";
|
let output = "";
|
||||||
let filename = `images.${format}`;
|
let filename = `images.${format}`;
|
||||||
|
|
|
@ -184,6 +184,13 @@ class NewTaskPanel extends React.Component {
|
||||||
|
|
||||||
handleAlignToChanged = e => {
|
handleAlignToChanged = e => {
|
||||||
this.setState({alignTo: e.target.value});
|
this.setState({alignTo: e.target.value});
|
||||||
|
if (this.mapPreview){
|
||||||
|
if (e.target.value !== "auto"){
|
||||||
|
this.mapPreview.setAlignmentPolygon(this.state.alignTasks.find(t => t.id === e.target.value));
|
||||||
|
}else{
|
||||||
|
this.mapPreview.setAlignmentPolygon(null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.handleFormChanged();
|
this.handleFormChanged();
|
||||||
|
|
Ładowanie…
Reference in New Issue