代码之家  ›  专栏  ›  技术社区  ›  Shubham Agrawal

获取以米为单位的可转换节点大小

  •  0
  • Shubham Agrawal  · 技术社区  · 6 年前

    我现在要的是Vector3中的缩放可变换节点大小(单位:米)。 我尝试了这些,但没有得到任何解决办法:

    Vector3 vec = transformableNode.getLocalPosition();
    Vector3 vector = transformableNode.getWorldPosition();
    Vector3 vector31 = transformableNode.getWorldScale();
    Vector3 vector32 = transformableNode.getLocalScale();
    Log.e("Vector Local Position: ", String.valueOf(vec.x + " " + vec.y + " " + vec.z));
    Log.e("Vector World Position: ", String.valueOf(vector.x + " " + vector.y + " " + vector.z));
    Log.e("Vector World Scale: ", String.valueOf(vector31.x + " " + vector31.y + " " + vector31.z));
    Log.e("Vector Local Scale: ", String.valueOf(vector32.x + " " + vector32.y + " " + vector32.z));
    
    1 回复  |  直到 6 年前
        1
  •  3
  •   Dsternfeld    6 年前

    要获得以米为单位的可渲染对象的大小,可以执行以下操作:

    Box box = (Box) transformableNode.getRenderable().getCollisionShape();
    Vector3 renderableSize = box.getSize();
    

    Vector3 transformableNodeScale = transformableNode.getWorldScale();
      Vector3 finalSize =
          new Vector3(
              renderableSize.x * transformableNodeScale.x,
              renderableSize.y * transformableNodeScale.y,
              renderableSize.z * transformableNodeScale.z);