Главная » Delphi, OLE, САПР » Обозначение шероховатости – КОМПАС в DELPHI

0

Параметры обозначения шероховатости (ksRoughPar)

Интерфейс 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)

Интерфейс ksShelfPar используется для описания параметров линии выноски. Рассмотрм свойства этого интерфейса.

ang – угол наклона линии выноски к горизонтали. На рисунке ниже показан угол, задаваемый значением этого свойства.

1 Интерфейсы ksDynamicArray и ksChar255 подробно рассматривались в главе 22.

length – длина линии выноски. Размер, задаваемый значением этого свойства, показан на рисунке выше.

psh – ориентация полки. Допустимые значения этого свойства и из описания представлены в таблице ниже.

Значение

Описание

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

0

Выносной полки нет

-1

Выносная полка ориентирована влево

1

Выносная полка ориентирована вправо

2

Выносная полка ориентирована вертикально вверх

3

Выносная полка ориентирована вертикально вниз

Метод у интерфейса ksShelfPar всего один – Init(). Данный метод инициализирует нулями свойства интерфейса. В случае успеха он возвращает значение TRUE.

Параметры обозначения шероховатости (ksRoughParam)

Интерфейс ksRoughParam служит для описания параметров обозначения шероховатости. Получить этот интерфейс можно с помощью метода GetParamStruct интерфейса KompasObject. Для этого в качестве единственного параметра данному методу нужно передать константу ko_RoughParam.

Свойств у интерфейса ksRoughParam нет, поэтому сразу переходим к рассмотрению его методов.

GetrPar() – возвращает интерфейс параметров обозначения шероховатости ksRoughPar, который мы рассматривали в начале этой главы.

GetshPar() – возвращает интерфейс параметров выносной линии ksShelfPar, который мы рассматривали в предыдущем разделе текущей главы.

SetrPar – позволяет установить интерфейс параметров обозначения шероховатости ksRoughParam. Устанавливаемый интерфейс передается методу в качестве его единственного параметра. В случае успеха метод возвращает значение TRUE.

SetshPar – позволяет установить интерфейс параметров выносной линии ksShelfPar. Устанавливаемый интерфейс передается методу в качестве его единственного параметра. В случае успеха метод возвращает значение TRUE.

Построение обозначения шероховатости

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


Пример 1. Построение обозначения шероховатости без выносной линии

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

var

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

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

Begin

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

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

Document2D.ksLineSeg(90, 100, 150, 100, 1);

//Получаем интерфейс параметров обозначения шероховатости

RoughParam := ksRoughParam(kompas.GetParamStruct(ko_RoughParam));

//Получаем интерфейс параметров обозначения шероховатости RoughPar := ksRoughPar(RoughParam.GetrPar()); RoughPar.ang := 90;  //Расположить горизонтально

RoughPar.around := 0; //Обычная шероховатость

RoughPar.cText0 := 1;

RoughPar.cText1 := 0;

RoughPar.cText2 := 0;

RoughPar.cText3 := 0;

RoughPar.style := 4; //Стиль текста обозначение шероховатости

RoughPar.type_ := 0; //Без обработки

RoughPar.x := 100;

RoughPar.y := 100;

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

DynamicArray := ksDynamicArray(RoughPar.GetpText());

//Очищаем массив

DynamicArray.ksClearArray();

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

Char255 := ksChar255(kompas.GetParamStruct(ko_Char255));

Char255.str := ‘Ra0.4′;

//Добавляем строку в массив

DynamicArray.ksAddArrayItem(-1,Char255);

//Строим само обозначение шероховатости

Document2D.ksRough(RoughParam);

kompas.Visible:=true;

end;

Обратите внимание, что в данном примере мы не обращаемся к интерфейсу ksShelfPar. Поскольку у нас нет выносной линии, он нам не нужен. На рисунке ниже представлен результат работы этой программы.

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

По теме:

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