Я работал над проектом ARCore.
, и мне пришлось показать реальный размер в сантиметрах.
, поэтому я использовал приведенный ниже код.
Box box = (Box) transformableNode.getRenderable().getCollisionShape();
Vector3 size = box.getSize();
Vector3 transformableNodeScale = transformableNode.getWorldScale();
Vector3 finalSize =
new Vector3(
(float) (Math.round((size.x * transformableNodeScale.x * 100) * 10) / 10.0),
(float) (Math.round((size.y * transformableNodeScale.y * 100) * 10) / 10.0),
(float) (Math.round((size.z * transformableNodeScale.z * 100) * 10) / 10.0));
x_cm = String.valueOf(finalSize.x); //세로
y_cm = String.valueOf(finalSize.y); //높이
z_cm = String.valueOf(finalSize.z); //가로
mtextView.setText("( 가로 : " + z_cm + "cm " + "세로 : " + x_cm + "cm " + "높이 : " + y_cm +"cm )");
поэтому, добавив некоторое объяснение, создайте прямоугольник, охватывающий текущую визуализированную модель,
и получите ее масштаб в мире.
, поскольку Unity использует метр, преобразуйте его в сантиметр и покажите Размер на экране.
Я не уверен, что это сработает, но я думаю, что вы можете получить размер мирового масштаба, используя это
и использовать его при масштабировании вашей модели (возможно, получая информацию от пользователя (seekbar et c) .)).
Извините, если этот не соответствует вашим потребностям.