sweep two along one如何用代码实现?它与放样曲面的区别在哪?
应该就是我们前一些帖子讨论过的两个方法:SolidUtil::Create::BodyFromLoft和BodyFromSweep
当前不支持勾选Parametric。
BodyFromSweep方法研究过,只能输入一个导向线和一个CurveVector,而microstation提供的工具功能包括一个导向线和两个CurveVector构面、两个导向线和一个CurveVector构面、两个导向线和两个CurveVector构面 三种扫略构面的方式,而我们项目中目前的需求是一个导向线和两个CurveVector构面,BodyFromSweep不能满足我们的要求哈,不知道microstation的工具是如何实现的?
Mstn工具中调用了许多非常底层未公开的函数来实现这些更复杂的功能的。目前公开的函数中没有能找到。
符老师,我现在用的是microstation ce update4版本,不知道有没有其它途径可以解决,这个问题已经卡了我们很长时间了!
找到一个内部未公开函数可以试一下:
Answer Verified By: 周谦益 Zhou Qianyi
测试了一下可以,确实是这个未公开的函数,太棒了!谢谢符老师!不知道这种未公开的函数是否会随着版本的升级而改变?
该未公开函数从V8i早期版本就存在了,内部代码也在用,改变的可能性不大。
double skinTolerance,int skinDirection,BoolInt bSectionRotate,BoolInt bSectionRotationAxisFromRail0,BoolInt bSectionOrthogonality,BoolInt bSectionScale,BoolInt bSectionScaleUniformly
函数的这几个参数如何给?老师能详细解释一下吗?
* @param pRail0 IN first rail curve (constant v/u=0 curve) * @param pRail1 IN second rail curve (constant v/u=1 cur ve) (or NULL) * @param pSection0 IN initial section, in position (constant u/v=0 curve) * @param pSection1 IN final section, in position (constant u/ v=1 curve) (or NULL)
其中,constant v/u的取值表示什么含义?
uv是理解B样条曲线和曲面的最最基本的概念,请先到网上搜索一些有关B样条的理论学习一下。
u和v分别表示B样条曲面的两个方向,=0表示起点,=1表示终点。