通过圆弧的圆心及两个端点坐标,绘制圆弧的三维形状。 ¶Introduction 起源于某同学今年打研究生数学建模竞赛。绘制飞机航迹图。通过中心点坐标c(x,y,z)、端点坐标1p1(x,y,z)和端点坐标2p2(x,y,z),绘制三维圆弧。起初以为很简单,接锅后发现事情不简单。。。 ¶Method 主要思路为:通过将圆弧端点c,p1,p2旋转到XOY平面,插值后,再旋转回原平面。 主要步骤如下: 计算c, p1, p2 三点共面的平面法向量cp 通过平面法向量cp,计算其与z轴夹角sita及旋转轴roteAxis 通过旋转轴roteAxis和sita计算旋转矩阵roteMatrix和逆向旋转矩阵roteBackMatrix 将c,p1,p2旋转到XOY平面,根据step插值得到弧线点坐标roteArc 利用roteBackMatrix将roteArc旋转到原坐标系, 得到圆弧曲线坐标arc ¶Code GitHub ¶arc.py 12345678910111213141516171819202122232425262728293031323334353...
通过圆弧的圆心及两个端点坐标,绘制圆弧的三维形状。 ¶Introduction 起源于某同学今年打研究生数学建模竞赛。绘制飞机航迹图。通过中心点坐标c(x,y,z)、端点坐标1p1(x,y,z)和端点坐标2p2(x,y,z),绘制三维圆弧。起初以为很简单,接锅后发现事情不简单。。。 ¶Method 主要思路为:通过将圆弧端点c,p1,p2旋转到XOY平面,插值后,再旋转回原平面。 主要步骤如下: 计算c, p1, p2 三点共面的平面法向量cp 通过平面法向量cp,计算其与z轴夹角sita及旋转轴roteAxis 通过旋转轴roteAxis和sita计算旋转矩阵roteMatrix和逆向旋转矩阵roteBackMatrix 将c,p1,p2旋转到XOY平面,根据step插值得到弧线点坐标roteArc 利用roteBackMatrix将roteArc旋转到原坐标系, 得到圆弧曲线坐标arc ¶Code GitHub ¶arc.py 12345678910111213141516171819202122232425262728293031323334353...