Приклад 7. Горизонтальний розмір з виносної полицею – КОМПАС в DELPHI

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

var

kompas: KompasObject Document2D: ksDocument2D Char255: ksChar255 DynamicArray: ksDynamicArray LDimParam: ksLDimParam

DimDrawingParam: ksDimDrawingParam

LDimSourceParam: ksLDimSourceParam DimTextParam: ksDimTextParam

……………………………

Begin

……………………………

/ / Відрізок, довжину якого ми будемо проставляти в розмірі

Document2DksLineSeg(100, 100, 120, 100, 1)

/ / Отримуємо інтерфейс ksLDimParam

LDimParam:=ksLDimParam(kompasGetParamStruct(ko_LDimParam))

/ / Отримуємо інтерфейс ksDimDrawingParam

DimDrawingParam:=ksDimDrawingParam(LDimParamGetDPar())

/ / Встановлюємо параметри отрисовки розміру DimDrawingParamang: = 60/ / Кут нахилу ніжки внесений полки DimDrawingParamlenght:=10 / / Довжина ніжки внесений полки

DimDrawingParampl1:=false / / Малювати першу виносну лінію DimDrawingParampl2:=false / / Малювати другий виносну лінію DimDrawingParampt1:=1    / / У першому виносної лінії стрілка всередині DimDrawingParampt2:=1    / / У другої виносної лінії стрілка всередині DimDrawingParamshelfDir:=1/ / Виносний полки орієнтована вправо DimDrawingParamtextBase:=0/ / Текст розміщується в центрі DimDrawingParamtextPos:=0 / / Автоматичне розміщення тексту

/ / Отримуємо інтерфейс ksDimSourceParam

LDimSourceParam:=ksLDimSourceParam(LDimParamGetSPar())

/ / Встановлюємо параметри привязки лінійного розміру

LDimSourceParambasePoint: = 1 / / Малюємо від першої точки до другої

/ / Вектор спрямування розмірного напису LDimSourceParamdx: = 0 LDimSourceParamdy: = 10

LDimSourceParamps:=0 / / Розмірна лінія розміщена горизонтально

/ / Координати першої точки вимірюваного відрізка

LDimSourceParamx1:=100 LDimSourceParamy1:=100

/ / Координати другої точки вимірюваного відрізка

LDimSourceParamx2:=120

LDimSourceParamy2:=100

/ / Отримуємо інтерфейс ksDimTextParam

DimTextParam:=ksDimTextParam(LDimParamGetTPar)

/ / Встановлюємо параметри розмірного напису

DimTextParambitFlag:=0 / / Виводимо тільки номінал

DimTextParamsign:=0 / / Значка немає

DimTextParamstringFlag:=false

/ / Отримуємо інтерфейс KsChar255

Char255 := ksChar255(kompasGetParamStruct(ko_Char255))

/ / Отримуємо інтерфейс ksDynamicArray

DynamicArray := ksDynamicArray(DimTextParamGetTextArr()) DynamicArrayksClearArray()

/ / Рядок з номіналом

Char255str:=30; DynamicArrayksAddArrayItem(-1, Char255)

/ / Будуємо сам розмір Document2DksLinDimension(LDimParam) kompasVisible:=true

end

Як ми задали виносну полку Дуже просто:

1)&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp Властивості shelfDir інтерфейсу ksDimDrawingParam задали значення 1, яке говорить системі КОМПАС: по-перше, у нас є виносна полку (якщо її немає, даній властивості присвоюється нульове значення) і, по-друге, вона орієнтована вправо

2)&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp Поставили властивості ang і length того ж інтерфейсу, які визначають кут нахилу і довжину внесений полки відповідно

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

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

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


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

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

Ваш отзыв

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

*

*