Better textured model placement in model display

pull/670/head
Piero Toffanin 2019-06-08 18:07:45 -04:00
rodzic 7e04f23e6b
commit e553deacbd
3 zmienionych plików z 14 dodań i 10 usunięć

Wyświetl plik

@ -188,11 +188,12 @@ class ModelView extends React.Component {
const objLoader = new THREE.OBJLoader();
objLoader.setMaterials(materials);
objLoader.load(this.objFilePath(), (object) => {
object.position.set(this.pointCloud.position.x,
this.pointCloud.position.y,
this.pointCloud.position.z);
const bboxWorld = this.pointCloud.getBoundingBoxWorld();
const pcCenter = new THREE.Vector3();
bboxWorld.getCenter(pcCenter);
object.position.set(pcCenter.x, pcCenter.y, pcCenter.z);
// Bring the model close to center
if (object.children.length > 0){
const geom = object.children[0].geometry;
@ -200,10 +201,11 @@ class ModelView extends React.Component {
// Compute center
geom.computeBoundingBox();
const center = geom.boundingBox.getCenter();
let center = new THREE.Vector3();
geom.boundingBox.getCenter(center);
object.translateX(-center.x + this.pointCloud.boundingBox.max.x / 2);
object.translateY(-center.y + this.pointCloud.boundingBox.max.y / 2);
object.translateX(-center.x);
object.translateY(-center.y);
object.translateZ(-center.z);
}

Wyświetl plik

@ -109,7 +109,9 @@ export class POCLoader {
pco.nodes = nodes;
callback(pco);
}
}else if (xhr.status === 404){
callback();
}
};
xhr.send(null);

Wyświetl plik

@ -1020,7 +1020,7 @@ export class Viewer extends EventDispatcher{
i18n.init({
lng: 'en',
resGetPath: Potree.resourcePath + '/lang/__lng__/__ns__.json',
preload: ['en', 'fr', 'de', 'jp'],
preload: ['en'],
getAsync: true,
debug: false
}, function (t) {