Позначення шорсткості – КОМПАС в DELPHI

Інтерфейс ksRoughPar служить для опису основних параметрів позначення шорсткості Розглянемо його властивості

ang – Кут нахилу позначення шорсткості до вертикальної осі На малюнку нижче показаний цей кут

around – Якщо значення цього параметра дорівнює нулю, то ставиться звичайне позначення шорсткості Якщо ж значення цього параметра дорівнює одиниці, то ставиться позначення шорсткості «по контуру» На малюнку нижче представлений приклад позначення шорсткості «по контуру»

Наступні 3 властивості (cText0, cText1 і cText2) Визначають кількість рядків у відповідних частинах позначення шорсткості На малюнку нижче ці частини показані

Де і як задаються ці рядки буде розказано нижче

Властивість cText3 дуже схоже на розглянуті раніше властивості cText0, cText1 і cText2 Воно визначає кількість рядків під лінією виноски (вона буде розглянута трохи пізніше) якщо використовується лінія виноски Це в теорії, тобто згідно документації КОМПАС На ділі ж домогтися виведення цього тексту під лінією виноски мені так і не вдалося

Однак якщо ви визначаєте значення цієї властивості відмінним від нуля, КОМПАС вимагає від вас вказівки додаткового рядка В іншому випадку позначення шорсткості побудовано не буде

Більше того, значення цієї властивості не може перевищувати одиницю Якщо ви задасте більшого значення, позначення шорсткості нічого не буде побудовано

style_ – Номер системного стилю текст Системні стилі тексту та їх номери я вже наводив в главі 22 Повторюватися не буду Зазначу лише, що для позначення шорсткості передбачений системний стиль з номером 4 type_1 – визначає вид позначення шорсткості в залежності від наявності та виду обробки поверхні Допустимі значення цієї властивості

і їх опису представлено в таблиці нижче

Значення

Опис

Вид позначення

0

Обробка не визначена

1

Обробка видаленням шару матеріалу

2

Обробка без видалення шару матеріалу

Останні дві властивості (x і y) Задають координати точки привязки знака шорсткості На малюнку нижче показано, що це за точка така

1 У документації КОМПАС він описується як type (без знака підкреслення на кінці) Але в заголовному файлі він представлений саме як type_ (зі знаком підкреслення на кінці)

На цьому властивості інтерфейсу ksRoughPar закінчуються Переходимо до розгляду методів цього інтерфейсу

GetpText() – Повертає інтерфейс динамічного масиву рядків ksDynamicArray Саме в цьому масиві і повинні бути визначені рядки, що виводяться в позначенні шорсткості

За замовчуванням, даний масив має тип CHAR_STR_ARR Це означає, що рядки в ньому задаються у вигляді інтерфейсу ksChar2551

Порядок рядків в масиві має бути таким: cText0, cText1, cText2, cText3 (див опис відповідних властивостей)

Кількість рядків у масиві має дорівнювати сумі значень властивостей cText0, cText1, cText2 і cText3 Якщо в масиві визначено інше

кількість рядків, то позначення шорсткості побудовано не буде

InitEx – Ініціалізує значення властивостей інтерфейсу В якості єдиного параметра він приймає нове значення властивості style, що визначає номер системного стилю тексту

Init() – Ініціалізує нулями значення властивостей інтерфейсу У разі успіху повертає значення TRUE

SetpText – Встановлює інтерфейс динамічного масиву рядків ksDynamicArray Встановлюваний інтерфейс передається методу в якості його єдиного параметра У разі успіху метод повертає значення TRUE

Інтерфейс ksShelfPar використовується для опису параметрів лінії виноски Рассмотрм властивості цього інтерфейсу

ang – Кут нахилу лінії виноски до горизонталі На малюнку нижче показаний кут, що задається значенням цієї властивості

1 Інтерфейси ksDynamicArray і ksChar255 детально розглядалися в розділі 22

length – Довжина лінії виноски Розмір, задається значенням цієї властивості, показаний на малюнку вище

psh – Орієнтація полки Допустимі значення цієї властивості і з опису представлені в таблиці нижче

Значення

Опис

Вид внесений полки

0

Внесений полки немає

-1

Виносна полку орієнтована вліво

1

Виносна полку орієнтована вправо

2

Виносна полку орієнтована вертикально вгору

3

Виносна полку орієнтована вертикально вниз

Метод у інтерфейсу ksShelfPar всього один – Init() Даний метод инициализирует нулями властивості інтерфейсу У разі успіху він повертає значення TRUE

Інтерфейс ksRoughParam служить для опису параметрів позначення шорсткості Отримати цей інтерфейс можна за допомогою методу GetParamStruct інтерфейсу KompasObject Для цього в якості єдиного параметра даному методу потрібно передати константу ko_RoughParam

Властивостей у інтерфейсу ksRoughParam немає, тому відразу переходимо до розгляду його методів

GetrPar() – Повертає інтерфейс параметрів позначення шорсткості ksRoughPar, який ми розглядали на початку цієї глави

GetshPar() – Повертає інтерфейс параметрів виносної лінії ksShelfPar, який ми розглядали в попередньому розділі поточної глави

SetrPar – Дозволяє встановити інтерфейс параметрів позначення шорсткості ksRoughParam Встановлюваний інтерфейс передається методу в якості його єдиного параметра У разі успіху метод повертає значення TRUE

SetshPar – Дозволяє встановити інтерфейс параметрів виносної лінії ksShelfPar Встановлюваний інтерфейс передається методу в якості його єдиного параметра У разі успіху метод повертає значення TRUE

Для побудови позначення шорсткості використовується метод KsRough інтерфейсу ksDocument2D Даний метод в якості єдиного параметра приймає розглянутий раніше інтерфейс ksRoughParam У випадку успіху даний метод повертає ідентифікатор побудованого позначення шорсткості, а в разі помилки – значення нуль

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

var

kompas: KompasObject Document2D: ksDocument2D RoughParam: ksRoughParam RoughPar : ksRoughPar DynamicArray : ksDynamicArray Char255  : ksChar255

………………………………

Begin

………………………………

/ / Горизонтальний відрізок, на якому будемо обзначать шорсткість

Document2DksLineSeg(90, 100, 150, 100, 1)

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

RoughParam := ksRoughParam(kompasGetParamStruct(ko_RoughParam))

/ / Отримуємо інтерфейс параметрів позначення шорсткості RoughPar := ksRoughPar(RoughParamGetrPar()) RoughParang := 90  / / Розташувати горизонтально

RoughPararound := 0 / / Звичайна шорсткість

RoughParcText0 := 1

RoughParcText1 := 0

RoughParcText2 := 0

RoughParcText3 := 0

RoughParstyle := 4 / / Стиль тексту позначення шорсткості

RoughPartype_ := 0 / / Без обробки

RoughParx := 100

RoughPary := 100

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

DynamicArray := ksDynamicArray(RoughParGetpText())

/ / Очищаємо масив

DynamicArrayksClearArray()

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

Char255 := ksChar255(kompasGetParamStruct(ko_Char255))

Char255str := Ra04;

/ / Додаємо рядок у масив

DynamicArrayksAddArrayItem(-1,Char255)

/ / Будуємо саме позначення шорсткості

Document2DksRough(RoughParam)

kompasVisible:=true

end

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

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

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


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

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

Ваш отзыв

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

*

*