在nx使用分割曲线的功能或者函数的时候,偶尔会提示如下:
“输入行的长度为0”。实际上这是翻译的过,应该是the length of input is 0 之类的直译。
针对这种情况,一般要考虑是输入的曲线有问题或者点有问题,这时候我们首先可以把曲线和点输出到别的地方,检查曲线是否正常,并且点是否在曲线上,如果点不在曲线上,则分割会出现这个提示。
比如我就碰到了这种情况:
如图所示,我把点和曲线的位置进行偏移,其中点偏移了相同的距离,但是实际检查发现点的高度并不相同,于是找到了原因。
for (auto it = vInsertBottomPtsAll.begin(); it != vInsertBottomPtsAll.end(); ++it)
{
double dHeightPt = (*it).AsVector() * ivecUserZ;
double dHeightPlane = ptCommonBottomPlane.AsVector() * ivecUserZ;
if (fabs(dHeightPt - dHeightPlane) < 0.001)
{
vInsertBottomPtsSel.push_back(*it);
}
}
通过保证点的位置在曲线上,最终去掉了这个错误提示,供参考。