Главная » Delphi, OLE, САПР » Радиальный размер – КОМПАС в DELPHI

0

Построение радиального размера

Для построения радиального размера используется метод ksRadDimension интерфейса ksDocument2D. В качестве единственного параметра данный метод принимает интерфес параметров радиального размера ksRDimParam. Мы рассматривали этот интерфейс в предыдущей главе. Повторяться я не буду.

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

Пример

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

var

kompas: KompasObject; Document2D: ksDocument2D; RDimParam: ksRDimParam;

RDimDrawingParam: ksRDimDrawingParam;

RDimSourceParam: ksRDimSourceParam; DimTextParam: ksDimTextParam; DynamicArray: ksDynamicArray;

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

Begin

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

//Строим дугу окружности, радиус которой будем измерять

Document2D.ksArcByAngle(100, 100, 15, 10, 70, 1, 1);

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

RDimParam:=ksRDimParam(kompas.GetParamStruct(ko_RDimParam));

//Получаем интерфейс ksRDimDrawingParam RDimDrawingParam:=ksRDimDrawingParam(RDimParam.GetDPar()); RDimDrawingParam.ang:=30; //Угол наклона размерной линии

RDimDrawingParam.pt1:=1; //Первая стрелка изнутри RDimDrawingParam.pt2:=0; //Игнорируется RDimDrawingParam.shelfDir:=0; //Выносной полки нет RDimDrawingParam.textPos:=0;//Автоматическое размещение текста

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

RDimSourceParam := ksRDimSourceParam(RDimParam.GetSPar());

//Координаты центра измеряемой окружности RDimSourceParam.xc:=100; RDimSourceParam.yc:=100;

//Радиус измеряемой дуги окружности

RDimSourceParam.rad:=15;

//Получаем интерфейс ksDimTextParam DimTextParam:=ksDimTextParam(RDimParam.GetTPar()); DimTextParam.bitFlag:=1;//Автоматическая простановка размера DimTextParam.sign:=3;//Значок радиуса

DimTextParam.stringFlag:=false; DimTextParam.style:=3;//Текст размерной надписи

//Получаем интерфейс ksDynamicArray DynamicArray:=ksDynamicArray(DimTextParam.GetTextArr()); DynamicArray.ksClearArray(); //Очищаем массив

//Строим радиальный размер Document2d.ksRadDimension(RDimParam); kompas.Visible:=true;

end;

Как видите, простановка радиального размера практически ничем не отличается от рассмотренной ранее простановки диаметрального размера. В результате работы этой программы вы увидите приблизительно следующую картину:

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

По теме:

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