川西 裕幸のブログ

Windows Graphics & Presentaiton Technologies for Developers

WPF3.5の新機能⑥ GeneralTransform3Dなど

WPF3.5の新機能⑥ GeneralTransform3Dなど

  • Comments 1

WPF3.0ではViewport3D内の3D空間内の階層の座標変換を追跡したり、Canvasなどの2Dレイアウト上での2D座標との関連性を追跡する(つまり3D空間から2D空間への座標変換やその逆)のはかなり困難でした。GeneralTransform3Dなどを使えばこれが容易になります。WPFのプログラミングでこれを使うことはほとんどないでしょうが、おそらく新機能④⑤⑥で、内部的に利用されているのではないかと思います。

GeneralTransform3Dは3D空間の階層を上下できますが、2Dと3Dの階層を上下するにはGeneralTransform3DTo2DとGeneralTransfor2DTo3Dが使えます。

  • GeneralTransform3D
    • Visual3D.TransformToAncestor(Visual3D)
    • Visual3D.TransformToDescendant(Visual3D)
  • GeneralTransform3DTo2D
    • Visual3D.TransformToAncestor(Visual)
  • GeneralTransform2DTo3D
    • Visual.TransformToAncester(Visual3D) 

Leave a Comment
  • Please add 8 and 2 and type the answer here:
  • Post