gpt4 book ai didi

c++ - 在 C/C++ 中使用 GSL 将多边形投影到平面上

转载 作者:行者123 更新时间:2023-11-30 02:11:31 26 4
gpt4 key购买 nike

将多边形投影到平面上的一般问题已得到广泛解决,但我想知道是否有人可以针对我的特殊情况提出一些建议。

我在 3 维空间中有一个平面多边形 P,我想通过与单位 vector u 正交的原点将它投影到平面上。 P 的顶点和 u 的坐标是我仅有的数据(所有 w.r.t. R^3 的标准基础)。

但是,我不只是想要投影坐标。我实际上想找到与 u 正交的平面的正交基,然后在这个新基中找到投影顶点的坐标。

基本身并不重要,只要它是正交的即可。所以我真的需要在 GNU 科学图书馆的框架内做两件事:

(1) 求与单位 vector u正交的齐次平面的两个正交基 vector 。

(2) 在此基础上求P的顶点在平面上的投影坐标。

关于如何使用 gsl 执行此操作的任何想法?

最佳答案

我没用过GSL,不过你只需要用点积、叉积、归一化就可以得到结果。

(1) 选择任何不是u 倍数的 vector r。设 v = ru 的归一化叉积。设 w = uv 的叉积。您的正交基 vector 是 vw

(2) 投影一个顶点a到这个平面,它是(av) * v + (aw) * w。 (v坐标是avw坐标是aw)

为了帮助思考这是如何工作的,请选择 u = <1,0,0> 和 r = <3,0,5> 开始,然后可视化3-d vector 。

关于c++ - 在 C/C++ 中使用 GSL 将多边形投影到平面上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3383105/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com