【问题标题】:Convert 3D(x,y,z) to 2D(x,y) (orthogonal) along its direction沿其方向将 3D(x,y,z) 转换为 2D(x,y)(正交)
【发布时间】:2011-06-12 23:24:24
【问题描述】:

我已经尽可能多地浏览了互联网上所有可用的学习资源,它们以简单方程、向量或三角方程的形式出现。 我找不到做以下事情的方法:

假设 Y 在 3D 世界中。 我需要为 3D 轨迹正交绘制两个 2D 轨迹(不是投影),例如 XY 平面 用于轨迹的侧视图 w.r.t.轨迹本身和俯视图的 XZ 平面相同。

我有3D轨迹的所有3D点,初速度,两个角度都可以用向量数学计算出来。

我应该如何继续?

参考: 在不同角度的曲线下方,如果沿 XY 平面投影,可能会失去其意义。我想要的只是沿着自身转换红色曲线,沿着绿色曲线转换绿色曲线等等。以及如何将侧视图映射到飞机。俯视图比较简单,只需取每个点的 X 和 Z 坐标即可。

我的意思是这个要求。 :)

【问题讨论】:

  • 我认为这与插值有关。

标签: visual-c++ unmanaged 3d curve directx-9


【解决方案1】:

我不认为我理解这个问题,但我还是会回答我的解释。

您有一个由一系列点 p0、...、pN 描述的 3D 轨迹。给定平行于 Y 轴的平面 P 的角度 v,并希望计算点 pi, hi) sub>i 投影到该平面上,其中 hi 是 Y 方向上的 高度 坐标,di 是 距离在v方向上的坐标。假设p0 = (0, 0, 0),否则从所有向量中减去p0

设 pi = (xi, yi, zi)。高度坐标为 hi = yi。假设角度 v 是相对于 Z 轴给出的。那么方向v的向量就是r = (sin(v), 0, cos(v)),距离坐标变成di = dot(pi , r)。

【讨论】:

  • 你已经完全理解我的问题了。 \m/ 我试图想象第三段。我会回来的。 (我想知道我可以用你的方式解释。)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-12-10
  • 1970-01-01
  • 1970-01-01
  • 2015-10-30
  • 2013-02-26
  • 2017-08-12
  • 1970-01-01
相关资源
最近更新 更多