Fix mess with canvas name for HSI
This commit is contained in:
@@ -144,13 +144,28 @@ Common.getImageSize = async function (imageId) {
|
||||
}
|
||||
/**
|
||||
* Get image name for given canvas
|
||||
* @todo Use regex in filter!!
|
||||
* @param {Canvas} canvas
|
||||
* @returns {string}
|
||||
*/
|
||||
Common.getImageName = async function (canvas) {
|
||||
const images = await this.getImageList(canvas.resourceId);
|
||||
|
||||
return images.filter(i => i.includes(canvas.name))[0];
|
||||
|
||||
let name = canvas.name;
|
||||
|
||||
// Adjust canvas name for HSI with PCA...
|
||||
if (/pc(1|3)/.test(name)) {
|
||||
name = name.replace(
|
||||
/pc((1|3))/,
|
||||
function (match, group1) {
|
||||
return `_HSI_PC${group1}`;
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
console.log('Canvas name: ' + name);
|
||||
|
||||
return images.filter(i => i.includes(name))[0];
|
||||
}
|
||||
/**
|
||||
* Create a canvas from an image filename
|
||||
@@ -172,10 +187,9 @@ Common.createCanvas = async function (manifest, filename) {
|
||||
dn: 2
|
||||
};
|
||||
|
||||
const canvasName = filename.split('_')[namePos[manifest.technique]]
|
||||
let canvasName = filename.split('_')[namePos[manifest.technique]]
|
||||
.replace(/\.\w{1,3}$/, '');
|
||||
|
||||
canvas.generateID(manifest.resourceId, canvasName);
|
||||
let label = canvasName
|
||||
.replace(/c(\w{1,2})0+(\d+).*(\.\w{2,3})?$/i, function (str, c, number) {
|
||||
return `C${c}. ${number}`;
|
||||
@@ -183,8 +197,10 @@ Common.createCanvas = async function (manifest, filename) {
|
||||
// Add PCA to canvas label for HSI images
|
||||
if (manifest.technique === 'hsi') {
|
||||
label += ` ${filename.split('_')[3].replace(/\..*$/,'')}`;
|
||||
canvasName += `${filename.split('_')[3].replace(/\..*$/,'')}`;
|
||||
}
|
||||
|
||||
canvas.generateID(manifest.resourceId, canvasName.toLowerCase());
|
||||
canvas.label = label;
|
||||
|
||||
let image = new Image(canvas.id);
|
||||
|
||||
Reference in New Issue
Block a user