关于根据空间中的三点如何求出抛物线方程并绘制软管

空间中取三个点A,B,C,并且这三个点所确定的平面需要垂直于xy平面;

假设A点和C点为需要绘制的抛物线的两个端点,B点为A和C之间抛物线上的任意一点。A和C两点可确立一条投影到XY平面的直线L,此直线后来用于确定绘制软管所用控制点的Y坐标;

 

根据y=a*x*x+b*x+c这个抛物线的一般方程可以根据空间中取得的三个点投影到xz平面后的a,b,c求出抛物线方程,根据抛物线方程计算软管的控制点。注意需要使用下面的方法:

public static FlexPipe Create(
	Document document,
	ElementId systemTypeId,
	ElementId pipeTypeId,
	ElementId levelId,
	XYZ startTangent,
	XYZ endTangent,
	IList<XYZ> points
)

startTangent和endTangent分别为两个端点的控制点的切线向量,一般分别为第一个点到第二个控制点的方向和倒数第二个点到最后一个点的方向,方向的控制可使绘制出来的软管更加像抛物线。
软管的Curve可转为HermiteSpline并设置里面的控制点向量。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值