iCAx开思工具箱
标题:
[CAA求助]CATIA可以阵列点,请问有直接调用的函数么
[打印本页]
作者:
ririyeyjl
时间:
2007-4-20 21:33
标题:
[CAA求助]CATIA可以阵列点,请问有直接调用的函数么
我想在曲线上生成很多点, 在CATIA可以通过阵列得到,但是我查找CAA,没有找到相关的方法,通过宏操作,发现阵列点的生成是依靠复制由一个点得到许多点的
请问各位高手:如何通过CAA在曲线上来生成许多点呢?
作者:
ririyeyjl
时间:
2007-5-6 16:14
自己回哦:
曲线上生成点可以通过先计算出曲线长度,然后在曲线上生成一个参考点,然后利用For循环来生成其他等距点。
作者:
cornerstone
时间:
2007-5-7 00:43
请问ririyeyjl ,如何得到生成点的绝对x,y,z 坐标呢?
我用用循环调用AddNewPointOnCurveFromPercent创建了一条曲线的多段平分点,可是返回的是 HybridShapePointOnCurve ,好像没有成员函数可以取得它在绝对坐标的x,y,z,怎么做呢?
附代码:
Dim pt As HybridShapePointOnCurve
Dim percent As Double
Dim i As Long
For i = 0 To 10
percent = i / CDbl(10)
Set pt = oHSF.AddNewPointOnCurveFromPercent(refCurve, percent, False)
'如何取得pt的(x,y,z)
Next i
作者:
cornerstone
时间:
2007-5-7 00:45
还有如何测量曲线的长度?谢谢啊
作者:
cornerstone
时间:
2007-5-7 00:54
原来你是校友阿,呵呵,我也是南航的
作者:
ririyeyjl
时间:
2007-5-22 09:21
我生成的点是用以下函数:
public virtual CATIGSMPointOnSurface_var CreatePoint( const CATISpecObject_var iSurface,
const CATISpecObject_var iPoint,
const CATIGSMDirection_var iDirection,
const CATICkeParm_var iDistance) = 0
对于CATIGSMPointOnSurface_var可以转为CATISpecObject_var然后挂到树上
我是通过获取它的Father->GetAllChildren("CATPoint",oPointList)
由CATPoint 就可以获得点的XYZ坐标了
而曲线的长度我通过CATDynCreateMassProperties3D(const CATEdge* iEdgeToAnalyze)得到
CATDynMassProperties3D然后对其进行GetLength()
是的我也是南航的
作者:
ririyeyjl
时间:
2007-5-22 09:23
我是用CAA搞的 可能对你帮助不大
欢迎光临 iCAx开思工具箱 (https://t.icax.org/)
Powered by Discuz! X3.3