IT-практикум: DELPHI и AutoCAD
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: налоги и налогообложение, allbest
| Добавил(а) на сайт: Favsta.
Предыдущая страница реферата | 1 2 3 4 5 6 7 | Следующая страница реферата
В ней мы приводим переменную AutoCAD к типу lACadApplication, используя для этого специальный интерфейс IDispatch. Теперь разместите на форме кнопку, назовите ее «Имя текущего документа» и напишите для нее в обработчике: ShowMessage('l/ta текущего документа: '+AcadDocument1 .Name); Идем дальше — начертим линию с помощью стандартного метода AutoCAD -AddLine():
АddLine(НачальныеКоординаты, КонечныеКоординаты), где НачальныеКоординаты — массив из трех точек (ось X, Y, I), определяющий координаты начала линии, где КонечныеКоординаты — массив из трех точек (ось X, Y, I), определяющий координаты конца линии.
Прежде чем передать массив в качестве аргумента, воспользуемся функцией VarArrayCreate, которая создаст его:
УаrАrrауСrеаtе([Размерность],Тип данных) Создание массива с заданной размерностью и заданным типом значений его элементов. Пример:
V:= VarArrayCreate([0,2], varDouble) Создание массива, состоящего из трех элементов типа Double.
Итак, необходимо разместить на форме еще одну кнопку. Назовем ее «Линия» и объявим две переменные FirstPoint и SecondPoint типа OleVariant. Теперь нам понадобится следующий код:
FirstPoint:=VarArrayCreate([0, 2],
varDouble); //массив начальной точки SecondPoint:=VarArrayCreate([0, 2],
varDouble); //массив конечной точки
А сейчас можно задать и сами координаты линий, делается это таким образом:
FirstPoint[0]:=10; //начальная X координата
FirstPoint [1] :=10; //начальная Y координата
FirstPoint[2]:=10; //начальная Z координата
Далее нам будет нужна переменная AutoCadLine типа lAcadLine (хотя можно ее сделать и OleVariant, такой вариант тоже будет работать). В ней мы сохраним ссылку на созданную линию, чтобы в дальнейшем обращаться к этой фигуре, внося нужные изменения (о том, как это сделать, вы обязательно узнаете далее). А пока осталось начертить линию с помощью следующей строчки кода:
AutoCadLine:=AcadDocumentl. ModelSpace.AddLine(FirstPoint, SecondPoint);
Стоит отметить, что для работы с графическими объектами я использовал коллекцию ModelSpace, которая позволяет обращаться ко всем графическим объектами чертежа. Можно также воспользоваться коллекцией PaperSpace, правда, в этом случае нам будут доступны только объекты, содержащиеся в активном на данный момент слое. На рисунке 3 вы можете видеть упрощенную схему объектной структуры AutoCAD.
Итак, продолжаем. Линия у нас уже есть, теперь проведем над ней одну манипуляцию: покрасим ее в красный цвет с помощью всего одной строчки кода:
AutoCadLine. color:=acRed;
После того как работа с чертежом окончена, нужно сообщить об этом AutoCAD. Делается это следующим образом:
AcadDocumentl. Application. Update;
Полный листинг для обработчика события OnClick кнопки «Линия» вы найдете в исходнике программы, расположенной на компакт-диске.
Разместим на форме еще одну кнопку, назовем ее «Линия с запросом». С помощью нее мы нарисуем такую же обычную линию, предварительно запросив координаты у пользователя. Для этого используется объект Utility и его метод GetPointQ. Снова зададим две локальные переменные StartPoint и SecondPoint с типом OleVariant. Сделаем для них такие же массивы и напишем код:
FirstPoint :=AcadDocumentl. Utility.
GetPoint(EmptyParam, 'Укажите начальную координату: ');
SecondPoint :=AcadDocumentl. Utility. GetPoint(EmptyParam, 'Укажите конечную координату: ');
Рекомендуем скачать другие рефераты по теме: доклад по биологии, век реферат.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 6 7 | Следующая страница реферата