как рассчитать площадь и объем с помощью файла svf в программе просмотра кузницы

Мне нужно рассчитать объем и площадь поверхностей 3D файла. Поскольку forge api может конвертировать все виды 3D-файлов в формат svf, поэтому, если я могу вычислить площадь и объем из файла формата svf, моя программа может обрабатывать все 3D-файлы формата, которые поддерживают forge api. Но в программе просмотра Forge Viewer нет API для расчета площади и объема. Поскольку программа просмотра кузницы основана на THREE.js, я думаю, могу ли я использовать api THREE.js для расчета объема и площади. Я прочитал api программы просмотра forge, но нет api для получения геометрии THREE.js из представления forge.

var viewables = Autodesk.Viewing.Document.getSubItemsWithProperties (doc.getRootItem (), {'type': 'geometry'}, true);

Я пробую это, это не геометрия THREE.js, а программа просмотра кузницы. Его нельзя использовать для расчета.


person john.le    schedule 11.07.2017    source источник
comment
THREE.js также не имеет API для расчета объема и площади (AFAIK), поэтому я не совсем уверен, каков ваш подход. Любой код для этой цели, который легко доступен из других ответов SO, должен применяться к любой геометрии на основе треугольников, поэтому, если вы можете выяснить формат геометрии Forge, который должен быть выполнимым.   -  person Paul-Jan    schedule 11.07.2017


Ответы (1)


Приносим извинения за плохие новости, насколько мне известно, в Forge Viewer нет API для расчета площади или объема, но вы сами решаете проблему.

Чтобы преобразовать фрагмент Forge в THREE.Mesh, вы можете проверить здесь, здесь и здесь. Для расчета площади вы можете обратиться к некоторым кодам Forge Viewer в Autodesk.Viewing.Extensions.Measure.Snapper.prototype.snapping3D и Autodesk.Viewing.Extensions.Measure.MeasureTool.prototype.getFaceArea.

Надеюсь на эту помощь.

person Eason Kang    schedule 12.07.2017
comment
Спасибо, и моя проблема решена с помощью ваших здесь, здесь и здесь. И еще один, ‹a href=stackoverflow.com/questions/23279521/ ›, спасибо большое. - person john.le; 13.07.2017