if AutoCadObject.
EntityName='AcDbCircle' then begin
//Координаты центра круга
t:=(AutoCadObject as lAcadCircle). Center;
ListBoxl.Items.Add('06beKT — Круг');
Li stBoxl. Items. Add ('Координаты центра X-'+IntToStr(t[0])+' Y-'+IntToStr (t [1]) +' Z-'+IntToStr (t [2])) ;
t:=(AutoCadObject as lAcadCircle). Radius;
ListBoxl.Items.АсШСРадиус круга R='+IntToStr(t)); end;
Круг по понятиям AutoCAD называется AcDBCircle. Чтобы обратиться к его свойствам, нужно привести объект AutoCADObject, который ссылается на обрабатываемую в данный момент фигуру к типу lAcadCircle, а далее все просто: из свойства Center вытаскиваем координаты центра, из свойства Radius — длину радиуса. Обратите внимание, в процессе обработки полилинии перед нами встанет практически философский вопрос: «Как узнать количество точек, из которых она состоит?». Дело в том, что это может быть обычный прямоугольник, который будет содержать 4 точки или ломаная фигура, состоящая из 10. Способ решения прост — для вариантного массива есть специальная функция VarArrayHighBoundQ, которой в качестве первого параметра передаем имя массива, а в качестве второго — единицу.
Полезные возможности
Предлагаю не останавливаться на достигнутом. Нарисуем круг и заштрихуем его. Для этого служит метод AddHatch(), принадлежащий коллекции ModelSpace. Итак, разместим на форме кнопку, назовем ее
«Штриховка» и впишем в ее обработчик следующий код:
AutoCADHatch, Zalivka: OleVariant;
TypeColorl, TypeColor2: OleVariant;
Points:01eVariant; begin
Points:= VarArrayCreate([0, 2], VarDouble);
Points[0]:= 400; Points[l]:= 700; Points[2]:= 500;
//Задаем границы штриховки
Zalivka:= VarArrayCreate([0, 0], varDispatch);
Zalivka[0]:= AcadDocumentl. ModelSpace.AddCircle(Points,500);
//Задаем параметры штриховки
AutoCADHatch:= AcadDocumentl. ModelSpace. AddHatch (acPreDefinedGradie nt, 'LINEAR', True, acGradientObject);
//Задаем цвета заливки
TypeColorl:= AutoCADHatch. GradientColorl;
TypeColorl.SetRGB(200, 50, 200);
AutoCADHatch.GradientColorl:= TypeColorl;
TypeColor2:= AutoCADHatch. GradientColor2;
TypeColor2.SetRGB(0, 250, 0);
AutoCADHatch.GradientColor2:= TypeColor2;
//Передаем границы заливки
AutoCADHatch. AppendOuterLoop(Zal ivka);
//Осуществляем заливку
AutoCADHatch.Evaluate;
//Сообщаем о совершенных изменениях в AutoCAD
AcadDocumentl.Application.Update; end;
Обратите внимание на второй параметр функции AddHatch(). Он отвечает за шаблон штриховки и может принимать следующие значения:
- LINEAR
- CYLINDER
- INVCYLINDER
- SPHERICAL
- HEMISPHERICAL
- CURVED
- INVSPHERICAL
- INVHEMISPHERICAL
- INVCURVED
Методом RGB() мы задаем два цвета штриховки, которые затем смешаются в соответствии с указанным шаблоном. Рассмотрим создание собственного слоя с возможностью рисования в нем фигуры. В решении этой задачи нам поможет следующая строчка кода:
AcadDo cumentl. Layers. AddTMyLayer');
Вот и все — разве чтоперед рисованием будет нужно его активировать. Для нашего следующего примера понадобится кнопка с названием «Выберите объект», нажатие на нее позволит пользователю простым щелчком мыши указывать фигуру на чертеже, после чего она будет выделена желтым цветом. Необходимый листинг вы найдете в исходниках программы. И на закуску: разместите две кнопки «Проверить наличие изменений» и «Сохранить». С помощью первой мы будем узнавать, был ли изменен текущий чертеж с момента его открытия,используя системную переменную AutoCAD — DBMOD. Если она содержит 0, то чертеж не был изменен, иначе — был. Вторая кнопка позволит нам сохранить чертеж.
Из истории создания AutoCAD
В апреле 1982 года была организованна компания Autodesk - автор ныне популярного программного продукта для автоматизированного проектирования AutoCAD. В то время она состояла всего лишь из 15 программистов. Новый продукт кардинально изменил положение дел в сфере разработки конструкторской документации. В настоящее время AutoCAD используют миллионы людей по всему миру, он переведен более чем на 18 языков. Кстати, одним из факторов популярности, которую AutoCAD приобрел в России, является то обстоятельство, что компания Autodesk перевела свой продукт на русский язык еще в начале продвижения первых версий программы.
Версии AutoCAD
Версия 1.0 (Release 1)Декабрь1982г
Версия 1.2 (Release 2) Апрель 1983 г
Версия 1.3 (Release 3)Август1983г
Версия 1.4 (Release 4) Октябрь 1983 г
Версия 2.0 (Release 5) Октябрь 1984 г
Версия 2.1 (Release 6) Май 1985 г
Версия 2.5 (Release 7) Июнь 1986 г
Версия 2.6 (Release 8) Апрель 1987 г
Версия 9 - Сентябрь 1987 г
Версия 10 - Октябрь 1988 г
Версия 11 - Октябрь 1990 г
Версия 12-Июнь 1992 г (последний выпуск для Apple Macintosh)
Версия 13-Ноябрь 1994 г (последний выпуск для Unix, MS-DOS и Windows 3.11)
Версия 14 - Февраль 1997 г
AutoCAD 2000 (R15.0)- Март 1999г
AutoCAD 2000I (R15.1)- Июль 2000г
AutoCAD 2002 (R15.6)- Июнь 2001г
AutoCAD 2004 (R16.0)- Март 2003г
AutoCAD 2005 (R16.1)- Март 2004г
AutoCAD 2006 (R16.2)- Март 2005г
AutoCAD 2007 (R17.0)- Март 2006г
AutoCAD 2008 (R17.1)- Март 2007г
Список литературы
IT спец № 07 ИЮЛЬ 2007