Тема: getSplitCurves()

делаю getSplitCurves(points,newCurves) для AcDbCurve. В points>1 точки. точки points не совпадают с концами разрываемой кривой и все лежат на ней. Почему длинна  newCurves всегда 2? ведь в документации написано "The first subcurve starts at the original curve’s start point and ends at the first point in the points array. The second subcurve starts at the first point in the points array and ends at the second point in the points array. The third subcurve starts at the second point and ends at the third, and so on. The last subcurve starts at the last point in the points array and ends at the original curve’s endpoint." Помогите плз.
С уважением.

Re: getSplitCurves()

> giena
Не пробовал менять порядок следования точек так чтобы они распологались от начала к концу кривой? И уточни версию AutoCAD и конкретный класс кривой.

Re: getSplitCurves()

Autocad 2007, Object ARX под него. сейчас попробую поменять порядок следования точек, наверное дело действительно в этом. А разве конкретный класс кривой имеет какое-нибудь значение? главное же чтобы примитив был наследником AcDbCurve? я делаю так:

        acedEntSel(_T("\nУкажите объект для деления "), ent1, pt1);
        acdbGetObjectId(entId1, ent1);
        acdbOpenAcDbEntity(pEnt1, entId1, AcDb::kForRead);
    
        AcDbVoidPtrArray newCurves;
        AcGePoint3dArray points;
        /* задаем массив точек для деления */
    AcDbCurve *pCurv = AcDbCurve::cast(pEnt1);
    pCurv->getSplitCurves(points,newCurves);

так разве нельзя?

Re: getSplitCurves()

> giena
Просто реализация getSplitCurves в конкретном классе наследнике AcDbCurve может содержать ошибку. Это я спросил для того чтобы иметь возможность самому проверить, а не перебирать все варианты (AcDbLine,AcDbPolyline,AcDbSpline,...)

Re: getSplitCurves()

дело было действительно в порядке следования точек. Сейчас все работает. Спасибо.