Ескіз – КОМПАС в DELPHI

Інтерфейс ksSketchDefinition служить для опису параметрів обєкта

«Ескіз» Отримати цей інтерфейс можна за допомогою методу GetDefinition () інтерфейсу ksEntity, що описує ескіз Розглянемо основні методи інтерфейсу ksSketchDefinition

BeginEdit () – відкриває режим редагування ескізу У разі успіху даний метод повертає інтерфейс ksDocument2D, за допомогою якого і

здійснюється побудова самого ескізу Виконання геометричних побудов за допомогою інтерфейсу ksDocument2D ми докладно розглядали в главах 8 – 21

EndEdit () – закриває режим редагування ескізу У разі успіху повертає значення TRUE

GetLocation – повертає зсув центру системи координат ескізу щодо проекції центру системи координат моделі на площину ескізу У разі успіху повертає значення TRUE Нижче наводиться прототип цього методу

GetLocation(

var x: Double / / Зміщення уздовж осі x

var y: Double / / Зміщення уздовж осі y

): WordBool

GetPlane () – повертає інтерфейс ksEntity, що описує площину, в якій розташований ескіз

SetLocation – встановлює нове зсув центру системи координат ескізу щодо проекції центру системи координат моделі на площину ескізу У разі успіху даний метод повертає значення TRUE

Нижче наводиться прототип цього методу

SetLocation(

x: Double  / / Нове зсув уздовж осі x

y: Double   / / Нове зсув уздовж осі y

): WordBool

SetPlane – встановити площину, в якій розташований ескіз В якості єдиного параметра даний метод приймає інтерфейс ksEntity, що описує площину, в якій розташовуватиметься ескіз У випадку успіху метод SetPlane повертає значення TRUE

Нижче наводиться ключовий фрагмент програми, яка демонструє побудову простого ескізу в площині XOY

const

pTop_Part   = -1

o3d_planeXOY = 1

o3d_sketch  = 5

…………………………

Var

kompas: KompasObject Document3D: ksDocument3D Part: ksPart

EntityDraw, EntityPlane: ksEntity

SketchDefinition: ksSketchDefinition Document2D : ksDocument2D

……………………………

Begin

……………………………

/ / Підключаємося до компаса

kompas:=KompasObject(CreateOleObject(KompasApplication5))

/ / Отримуємо інтерфейс документа-моделі

Document3D:=ksDocument3D(kompasDocument3D())

/ / Створюємо документ-модель

Document3DCreate(FALSE,TRUE)

/ / Отримуємо інтерфейс 3D-моделі

Part:= ksPart(Document3DGetPart(pTop_Part))

/ / Отримуємо інтерфейс обєкта Ескіз

EntityDraw:=ksEntity(PartNewEntity(o3d_sketch))

/ / Отримуємо інтерфейс параметрів ескізу

SketchDefinition:=ksSketchDefinition(EntityDrawGetDefinition())

/ / Отримуємо інтерфейс обєкта площину XOY

EntityPlane:=ksEntity(PartGetDefaultEntity(o3d_planeXOY))

/ / Встановлюємо площину XOY базовою для ескізу

SketchDefinitionSetPlane(EntityPlane)

/ / Створюємо ескіз

EntityDrawCreate()

/ / Входимо в режим редагування ескізу

Document2D:=ksDocument2D(SketchDefinitionBeginEdit())

/ / Будуємо окружність

Document2DksCircle(0,0,15,1)

/ / Виходимо з режиму редагування ескізу SketchDefinitionEndEdit() kompasVisible:=true

end

На малюнку нижче показаний ескіз, побудований цією програмою

Джерело: Норсеев Сергій, «розробка програм під КОМПАС У DELPHI»

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*