Papervision 3D: как я могу наложить размеры на файл collada - PullRequest
0 голосов
/ 25 февраля 2010

Я работаю с файлами Collada, и мне нужно, чтобы они были определенного размера. При их создании в pv3d вы устанавливаете имя файла, материалы и масштаб. Масштаб работает как процент, и нет способа получить ширину, высоту или глубину DAE за один раз во флэш-памяти. Я хочу иметь возможность указать размер DAE в трехмерном пространстве относительно другой собственной геометрии pv3d.

1 Ответ

0 голосов
/ 04 июня 2010

Вы можете попытаться рассчитать это, используя Выравнивающую ось с выравниванием по оси (AABB).

В полном обработчике получите доступ к aabb объекта, содержащего геометрию. В зависимости от того, насколько вложенными являются ваши DAE-объекты, вам может потребоваться перейти по иерархии немного, чтобы добраться до объектов, которые на самом деле содержат геометрию, как .geometry свойство, которое содержит aabb для пустого контейнера, равно нулю.

, например

//in the complete handler, assuming object is a reference to a DisplayObject3D of the collada
//containing geometry
trace('width: ' + (object.geometry.aabb.maxX - object.geometry.aabb.minX)); 
            trace('height: ' + (object.geometry.aabb.maxY - object.geometry.aabb.minY)); 
            trace('depth: ' + (object.geometry.aabb.maxZ - object.geometry.aabb.minZ));

НТН, George

...