Главная » Delphi, OLE, САПР » Смещенная плоскость – КОМПАС в DELPHI

0

Параметры смещенной плоскости (ksPlaneOffsetDefinition)

Смещенная плоскость представляет собой плоскость, расположенную параллельно заданной плоскости (она называется базовой) и удаленную от нее на фиксированное расстояние (смещение).

Параметры смещенной плоскости описываются интерфейсом ksPlaneOffsetDefinition. Этот интерфейс возвращает метод GetDefinition() интерфейса          ksEntity.          Рассмотрим          свойства          интерфейса

ksPlaneOffsetDefinition.

direction – направление смещения от базовой плоскости. Если значение данного свойства равно TRUE, то смещение имеет прямое направление. Если же значение этого свойства равно FALSE, то смещение имеет обратное направление. Обычно прямое направление указывает вверх.

offset – смещение (расстояние) от базовой плоскости.

Теперь рассмотрим основные методы интерфейса ksPlaneOffsetDefinition.

GetPlane() – возвращает интерфейс ksEntity, описывающий базовую плоскость.

SetPlane – устанавливает новую базовую плоскость. В качестве единственного параметра данный метод принимает интерфейс ksEntity, который описывает новую базовую плоскость.

Пример

Ниже приводится ключевой фрагмент исходного текста программы, демонстрирующей создание смещенной плоскости. Создаваемая плоскость расположена параллельно плоскости XOY и удалена от нее на 10 мм.

const

pTop_Part = -1;

o3d_planeXOY = 1;

o3d_planeOffset = 14;

var

kompas: KompasObject; Document3D: ksDocument3D; Part: ksPart;

EntityPlane, EntityOffsetPlane: ksEntity; PlaneOffsetDefinition: ksPlaneOffsetDefinition;

begin

//Подключаемся к КОМПАСу

kompas:=KompasObject(CreateOleObject(‘Kompas.Application.5′));

//Получаем интерфейс документа-модели

Document3D:=ksDocument3D(kompas.Document3D());

//Создаем документ-модель

Document3D.Create(FALSE,true);

//Получаем интерфейс компонента

Part:= ksPart(Document3D.GetPart(pTop_Part));

//Получаем интерфейс объекта "плоскость XOY"

EntityPlane:=ksEntity(Part.GetDefaultEntity(o3d_planeXOY));

//Получаем интерфейс объекта "смещенная плоскость"

EntityOffsetPlane:=ksEntity(Part.NewEntity(o3d_planeOffset));

//Получаем интерфейс параметров смещенной плоскости

PlaneOffsetDefinition:=ksPlaneOffsetDefinition(EntityOffsetPlane.GetDefinition()); PlaneOffsetDefinition.direction:=TRUE; //Прямое направление смещения PlaneOffsetDefinition.offset:=10;     //Величина смещения

//Устанавливаем базовую плоскость

PlaneOffsetDefinition.SetPlane(EntityPlane);

//Создаем смещенную плоскость

EntityOffsetPlane.Create();

//Включаем отбражение плоскостей

Document3D.hideAllPlanes:=FALSE;

//Делаем КОМПАС видимым

kompas.Visible:=true;

end;

На рисунке ниже показан результат работы этой программы.

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

По теме:

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