Главная » Delphi, OLE, САПР » Дуга эллипса Параметры дуги эллипса (ksEllipseArcParam) – КОМПАС в DELPHI

0

Параметры дуги эллипса задаются интерфейсом ksEllipseArcParam. Для получения этого интерфейса нужно вызвать метод GetParamStruct интерфейса KompasObject со значением ko_EllipsArcParam. Рассмотрим свойства этого интерфейса:

A, B – размеры полуосей эллипса; angleFirst – угол первой точки дуги; angle – угол наклона оси эллипса; angleSecond – угол второй точки дуги; direction – направление отрисовки дуги; style – стиль линии дуги;

xc, yc – координаты центра эллипса, то есть точки пересечения его

осей;

Для  того чтобы было более  понятно  назначение свойств  angleFirst,

angleSecond и direction, рекомендую вспомнить построение дуги окружности по центру и углам (глава 9). Здесь они имеют аналогичное назначение.

Построение дуги эллипса

Для   построения   дуги   эллипса   используется   метод   ksEllipseArc интерфейса ksDocument2D. Вот его прототип:

ksEllipseArc(

const par: IDispatch //интерфейс ksEllipseParam

): Integer;

В случае успеха данный метод возвращает указатель на дугу эллипса, а в случае ошибки – нуль.

В   качестве   примера   рассмотрим   построение,   если   можно   так выразиться «полуэллипса».

var

kompas: KompasObject; Document2D: ksDocument2D;

EllipseArcParam: ksEllipseArcParam;

………

begin

………

//Указываем параметры дуги эллипса

EllipseArcParam:=ksEllipseArcParam(kompas.GetParamStruct(ko_EllipsArcParam)); EllipseArcParam.A:=50;

EllipseArcParam.B:=20; EllipseArcParam.angleFirst:=0; EllipseArcParam.angle:=0;

EllipseArcParam.angleSecond:=180; EllipseArcParam.direction:=1; EllipseArcParam.style:=1; EllipseArcParam.xc:=100; EllipseArcParam.yc:=100;

//Строим саму дугу

Document2D.ksEllipseArc(EllipseArcParam);

………

дуга:

На рисунке ниже представлена полученная таким нехитрым образом

Источник: Норсеев Сергей, «РАЗРАБОТКА ПРИЛОЖЕНИЙ ПОД КОМПАС В DELPHI»

По теме:

  • Комментарии