ObjectARX, AutoCAD. Среда программирования библиотеки C++

       

Характеристики


Кривые имеют следующие характеристики:

§

Ориентация

§          Периодичность

§          Замкнутое выражение

§          Planarity

§          Длина

Ориентация кривой определена направлением, в котором его параметр увеличивается. Вы можете использовать AcGeCurve2d:: reverseParam () или AcGeCurve3d:: reverseParam () функция, чтобы полностью изменить ориентацию кривой.

Некоторые кривые периодические, что означает, что они повторяют себя после некоторого интервала. Например, период круга - 2p. Используйте эти функции, чтобы определить,является ли кривая периодической:

Adesk::Boolean

AcGeCurve2d::isPeriodic(double& period) const;

Adesk::Boolean

AcGeCurve3d::isPeriodic(double& period) const;

Замкнутая кривая имеет точки начала и оконечные точки, которые являются тем же самый. Кривые могут быть или закрыты или открытый. Используйте эти функции, чтобы определить, закрыта ли кривая:

Adesk::Boolean

AcGeCurve2d::isClosed(

const AcGeTol&=AcGeContext::gTol) const;

Adesk::Boolean

AcGeCurve3d::isClosed(

const AcGeTol&=

AcGeContext::gTol) const;

Кривая 3D может быть плоска (значение, что все его точки постоянно находятся в том же самом плане) или неплоский. Используйте эту функцию, чтобы определить,является ли кривая 3D плоской:

Adesk::Boolean

AcGeCurve3d::isPlanar(

AcGePlane&,

const AcGeTol&=AcGeContext::gTol) const;

Учитывая два значения параметра, Вы можете получить длину кривой между этими двумя значениями, использующими следующие функции:

double

AcGeCurve2d::length(

double fromParam, double toParam,

double=AcGeContext::gTol.equalPoint()) const;

double

AcGeCurve3d::length(

double fromParam, double toParam,

double=AcGeContext::gTol.equalPoint()) const;

Вы можете использовать AcGeCurve2d:: evalPoint () и AcGeCurve3d:: evalPoint () функции, чтобы получить точку пространства модели, которая соответствует данному параметрическому значению. Если ваше приложение исполняет оценку часто, вы вероятно найдете AcGePointOnCurve3d, и AcGePointOnCurve2d классифицирует более эффективный (см. “ Специальные Классы Оценки ” на странице 738). Функции кривой для оценки точек следующие:

AcGePoint2d

AcGeCurve2d::evalPoint(double param) const;

AcGePoint2d

AcGeCurve2d::evalPoint(

double param, int numDeriv,

AcGeVector2dArray& derivArray) const;

AcGePoint3d

AcGeCurve3d::evalPoint(double param) const;

AcGePoint3d

AcGeCurve3d::evalPoint(

double param, int numDeriv,

AcGeVector3dArray& derivArray) const;



Содержание раздела