В Unity можно использовать Raycasting для расчета различных измерений. Примеры, такие как диаметр, толщина стенки и ширина. Один из способов сделать это - захватить щелчок мышью на объекте и использовать RaycastHits для захвата местоположения щелчка мышью на объекте, а затем наложить дополнительные лучи в зависимости от желаемого измерения.
Видно ниже:
Толщина щелкаемых стен составляет .0098, .0096 и .0072. Ширина составляет .0615, .0611 и .060. Диаметр .0475.
Хотя эти измерения (как полагают) выполняются и рассчитываются правильно, неясно, как результаты переводятся в реальные единицы измерения.
Это лучше всего продемонстрировано и показано на четвертом изображении. При проверке того же диаметра в других программах САПР, таких как NX, диаметр составляет 0,4210 "или дюймы. Толщина и ширина были рассчитаны также для 0,075244" и 0,2252872 "соответственно.
Итак, как результаты в Unity (результаты, полученные с использованием Vector3.Distance для вычисления расстояния между двумя точками) преобразовать в реальные единицы измерения ?
Поиск объекта в Google дает общий ответ: измерения Unity являются «игровыми единицами» и могут использоваться по желанию. Понимая это, я не понимаю, как выполнить перевод «игровых единиц» или того, какими на самом деле являются единицы измерения Unity, на результаты измерений, которые я вижу в программах CAD.
Результаты (CAD x Unity):
Толщина: .075244 "x .0098, .0096 и .0072.
Ширина: .252872 "x .0615, .0611 и .060.
Диаметр: 0,4210 "х 0,0475
(примечание 1: масштабы модели идентичны в Unity и внешней программе CAD.)
(примечание 2: небольшое изменение в толщине и ширине является результатом измерений Unity, происходящих под углами, когда программа CAD измеряет расстояние между двумя плоскостями, то есть .009x и .06x.)
(примечание 3: игнорируйте неправильную маркировку ширины на втором визуальном изображении как «Толщина» и маркировку дюйма на всех визуальных изображениях Unity, «как неверные).
![diameter_cadprgm](https://i.stack.imgur.com/7MM8S.png)