fix: vue de face de l'échantillon virtuel quand xMax est pair (#188)
La division (xMax + 1) / 2 produisait un float (ex: 4.5) quand xMax est pair, générant un nom de fichier introuvable et un undefined dans le tableau images, ce qui plantait le rendu entier. - Math.round() pour obtenir un index entier - fallback sur le premier fichier si la vue de face est introuvable - filter(Boolean) en défense sur le tableau images - console.warn pour signaler les cas de nommage non conforme Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
a4cc5c8efe
commit
9ee827c106
1 changed files with 6 additions and 3 deletions
|
|
@ -25,7 +25,7 @@ const images = computed(() => {
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
return allVariations.value.map((variation) => getFrontView(variation)) ?? [];
|
return allVariations.value.map((variation) => getFrontView(variation)).filter(Boolean) ?? [];
|
||||||
});
|
});
|
||||||
|
|
||||||
const uri = addLocalePrefix(step.uri);
|
const uri = addLocalePrefix(step.uri);
|
||||||
|
|
@ -35,10 +35,13 @@ function getFrontView(variation) {
|
||||||
const xMax = parseInt(
|
const xMax = parseInt(
|
||||||
variation.files[variation.files.length - 1].name.split('_')[1].split('.')[0]
|
variation.files[variation.files.length - 1].name.split('_')[1].split('.')[0]
|
||||||
);
|
);
|
||||||
const xFrontView = (xMax + 1) / 2;
|
const xFrontView = Math.round((xMax + 1) / 2);
|
||||||
const extension = variation.files[0].name.split('.')[1];
|
const extension = variation.files[0].name.split('.')[1];
|
||||||
const frontViewName = '0_' + xFrontView + '.' + extension;
|
const frontViewName = '0_' + xFrontView + '.' + extension;
|
||||||
const frontView = variation.files.find((file) => file.name === frontViewName);
|
const frontView = variation.files.find((file) => file.name === frontViewName);
|
||||||
return frontView;
|
if (!frontView) {
|
||||||
|
console.warn(`[VirtualSample] Front view "${frontViewName}" not found in variation "${variation.title}", falling back to first file.`);
|
||||||
|
}
|
||||||
|
return frontView ?? variation.files[0];
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue