簡體   English   中英

獲取AS3中3D空間對象的寬度,高度和位置

[英]Getting width, height, positions along 3D space objects in AS3

我在查看對象的x和y位置與其3D旋轉和z位置之間的關系時遇到了一些麻煩。

在3D空間中操作對象時,如何確定對象的高度和寬度? 我假設它與getRelativeMatrix3D()有關,但不知道如何。

如果我想確定沿對象的全局x和y(不是對象的'main'x或y,而是沿着對象'surface'的任何點),我該怎么做?

謝謝你的幫助。

我認為getBounds可以解決寬度和高度問題。

  var obj:Sprite = new Sprite();
  obj.graphics.lineStyle(0,0,1);
  obj.graphics.beginFill(0xff9933,1);
  obj.graphics.drawRect(0,0,50,50);
  obj.graphics.endFill();

  obj.z = 0;
  addChild(obj);
  trace(obj.getBounds(obj));
  trace(obj.getBounds(this));

  obj.rotationX = 30;
  obj.rotationY = 50;
  trace(obj.getBounds(obj));
  trace(obj.getBounds(this));

  //output:
    (x=0, y=0, w=50, h=50)
    (x=0, y=0, w=50, h=50)
    (x=0, y=0, w=50, h=50)
    (x=0, y=-16, w=42, h=64)

我不確定你問的第二部分問題。 假設你還想要答案......

如果我想確定沿對象的全局x和y(不是對象的'main'x或y,而是沿着對象'surface'的任何點),我該怎么做?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM