iCAx开思工具箱

标题: 在一条三维曲线上如何找到一个点 [打印本页]

作者: xieqling    时间: 2012-10-17 11:36
标题: 在一条三维曲线上如何找到一个点
用CAA 在一条三维曲线上如何找到一个点呀?已知这个点的x和y坐标了。即是求它的z坐标。
作者: linlily0925    时间: 2012-10-17 18:22
以已知的X和Z坐标,任意的Z值创建一个点,用这个点沿着Z方向创建一条直线,这条直线与三维曲线的交点的Z值即为 你要求的值~~~
作者: xieqling    时间: 2012-10-19 14:48
linlily0925 发表于 2012-10-17 18:22
以已知的X和Z坐标,任意的Z值创建一个点,用这个点沿着Z方向创建一条直线,这条直线与三维曲线的交点的Z值即 ...

创建直线之后将它与三维曲线相交,求得的交点x、y、z坐标都是0啊,而且最短距离也不是0,代码如下CATIMeasurableInContext_var spMeasurableCurve = TheCurve;
  CATIMeasurable_var spMeasurableLine = linePtDir;
  CATMathAxis iOtherMathAxis22;
  double minDistance22;
  CATMathPoint ioPointOnObject22;
  CATMathPoint ioPointOnOtherObject22;
  rc = spMeasurableCurve -> MinimumDistance(spMeasurableLine,iOtherMathAxis22,minDistance22,ioPointOnObject22,ioPointOnOtherObject22);
  cout << "minDistance22:   " << minDistance22 << endl;
  double xCor122 = ioPointOnObject22.GetX();
  double yCor122 = ioPointOnObject22.GetY();
  double zCor122 = ioPointOnObject22.GetZ();
  cout << xCor122 << " " << yCor122 << " " << zCor122 << endl;

作者: xieqling    时间: 2012-10-19 15:10
linlily0925 发表于 2012-10-17 18:22
以已知的X和Z坐标,任意的Z值创建一个点,用这个点沿着Z方向创建一条直线,这条直线与三维曲线的交点的Z值即 ...

这和MinimumDistance的第二个参数iOtherMathAxis22有关吗
作者: linlily0925    时间: 2012-10-19 16:16
你在catia里面手绘,可能求出交点~~?




欢迎光临 iCAx开思工具箱 (https://t.icax.org/) Powered by Discuz! X3.3