Если ваши модели не настроены с совмещением или с общими координатами ранее, то они не будут выровнены с опцией globalOffset
.
И да, модель можно перемещать после загрузки.Вы можете проверить это удивительное расширение, Просмотр. Расширение. Преобразование , написанное нашим классным коллегой Филиппом, и инструмент перевода: здесь .
Вот пример, показывающийКак переместить всю модель -100 единиц в направлении X.Его ключевая концепция заключается в применении смещений вашей модели к каждому фрагменту Forge, как показано ниже.
const fragCount = viewer.model.getFragmentList().fragments.fragId2dbId.length;
// Move whole model -100 units in the x-direction
const offset = new THREE.Vector3( -100, 0 , 0 );
for( let fragId = 0; fragId < fragCount; ++fragId ) {
const fragProxy = viewer.impl.getFragmentProxy( model, fragId );
fragProxy.getAnimTransform();
const position = new THREE.Vector3(
fragProxy.position.x + offset.x,
fragProxy.position.y + offset.y,
fragProxy.position.z + offset.z
);
fragProxy.position = position;
fragProxy.updateAnimTransform();
}
viewer.impl.sceneUpdated( true );