stoneball 发表于 2004-1-13 09:26:00

[求助]getSplitCurves时返回值为Acad::eInvalidInput

//用intersectWith求的交点,然后从交点处将pCurve分成两段,结果出现getSplitCurves时返回值为Acad::eInvalidInput,怎么回事??
        AcDbCurve* pCurve;
                     //打开实体pCurve和pEnt
                     //求交点
        pCurve->intersectWith(pEnt,AcDb::kOnBothOperands,ptArrInter);
        if(ptArrInter.length() > 0)
        {
                pCurve->getDistAtPoint(ptArrInter.first(),dDist);
                                          //获取分段
                es = pCurve->getSplitCurves(ptArrInter,pCurveSegments);
                      }

黑暗骑士 发表于 2013-4-10 20:32:37

zfbj 发表于 2013-4-11 22:58:03

正常,交点会有误差。计算一下每个交点到线的最近点,代替交点数组就行了。
页: [1]
查看完整版本: [求助]getSplitCurves时返回值为Acad::eInvalidInput