Add support for geo files

pull/140/head
Piero Toffanin 2021-01-04 09:54:19 -05:00
rodzic 1aae1e4957
commit 27b3d1e9fb
3 zmienionych plików z 12 dodań i 5 usunięć

Wyświetl plik

@ -138,7 +138,7 @@ app.post('/task/new/init', authCheck, taskNew.assignUUID, formDataParser, taskNe
* - * -
* name: images * name: images
* in: formData * in: formData
* description: Images to process, plus an optional GCP file (*.txt) and/or an optional seed file (seed.zip). If included, the GCP file should have .txt extension. If included, the seed archive pre-polulates the task directory with its contents. * description: Images to process, plus an optional GEO file (geo.txt) and/or an optional GCP file (*.txt) and/or an optional seed file (seed.zip). If included, the GCP file should have .txt extension. If included, the seed archive pre-polulates the task directory with its contents.
* required: true * required: true
* type: file * type: file
* - * -
@ -205,13 +205,13 @@ app.post('/task/new/commit/:uuid', authCheck, taskNew.getUUID, taskNew.handleCom
* - * -
* name: images * name: images
* in: formData * in: formData
* description: Images to process, plus an optional GCP file (*.txt) and/or an optional seed file (seed.zip). If included, the GCP file should have .txt extension. If included, the seed archive pre-polulates the task directory with its contents. * description: Images to process, plus an optional GEO file (geo.txt) and/or an optional GCP file (*.txt) and/or an optional seed file (seed.zip). If included, the GCP file should have .txt extension. If included, the seed archive pre-polulates the task directory with its contents.
* required: false * required: false
* type: file * type: file
* - * -
* name: zipurl * name: zipurl
* in: formData * in: formData
* description: URL of the zip file containing the images to process, plus an optional GCP file. If included, the GCP file should have .txt extension * description: URL of the zip file containing the images to process, plus an optional GEO file and/or an optional GCP file. If included, the GCP file should have .txt extension
* required: false * required: false
* type: string * type: string
* - * -

Wyświetl plik

@ -48,6 +48,7 @@ module.exports = class Task{
this.setStatus(statusCodes.QUEUED); this.setStatus(statusCodes.QUEUED);
this.options = options; this.options = options;
this.gcpFiles = []; this.gcpFiles = [];
this.geoFiles = [];
this.output = []; this.output = [];
this.runningProcesses = []; this.runningProcesses = [];
this.webhook = webhook; this.webhook = webhook;
@ -74,11 +75,14 @@ module.exports = class Task{
if (err) cb(err); if (err) cb(err);
else{ else{
files.forEach(file => { files.forEach(file => {
if (/\.txt$/gi.test(file)){ if (/^geo\.txt$/gi.test(file)){
this.geoFiles.push(file);
}else if (/\.txt$/gi.test(file)){
this.gcpFiles.push(file); this.gcpFiles.push(file);
} }
}); });
logger.debug(`Found ${this.gcpFiles.length} GCP files (${this.gcpFiles.join(" ")}) for ${this.uuid}`); logger.debug(`Found ${this.gcpFiles.length} GCP files (${this.gcpFiles.join(" ")}) for ${this.uuid}`);
logger.debug(`Found ${this.geoFiles.length} GEO files (${this.geoFiles.join(" ")}) for ${this.uuid}`);
cb(null); cb(null);
} }
}); });
@ -463,6 +467,9 @@ module.exports = class Task{
if (this.gcpFiles.length > 0){ if (this.gcpFiles.length > 0){
runnerOptions.gcp = fs.realpathSync(path.join(this.getGcpFolderPath(), this.gcpFiles[0])); runnerOptions.gcp = fs.realpathSync(path.join(this.getGcpFolderPath(), this.gcpFiles[0]));
} }
if (this.geoFiles.length > 0){
runnerOptions.geo = fs.realpathSync(path.join(this.getGcpFolderPath(), this.geoFiles[0]));
}
this.runningProcesses.push(odmRunner.run(runnerOptions, this.uuid, (err, code, signal) => { this.runningProcesses.push(odmRunner.run(runnerOptions, this.uuid, (err, code, signal) => {
if (err){ if (err){

Wyświetl plik

@ -1,6 +1,6 @@
{ {
"name": "NodeODM", "name": "NodeODM",
"version": "2.1.2", "version": "2.1.3",
"description": "REST API to access ODM", "description": "REST API to access ODM",
"main": "index.js", "main": "index.js",
"scripts": { "scripts": {