Лекции и лабораторные работы по AutoCAD'у


           

Название приложения должно быть вначале


2004 или запускаем новый
   AcadApplication := GetActiveOleObject('AutoCAD.Application.16');
   // Получаем множество выбранных объектов
   Objects := AcadApplication.ActiveDocument.SelectionSets.Add('XDATAEXAMPLE');
   Objects.SelectOnScreen;
   // Регестрируем приложение
   AcadApplication.ActiveDocument.RegisteredApplications.Add(appid);
   // Создаем гркппы кодов и массивы данных
   vaType := VarArrayCreate([0, 4], varSmallInt);
   vaData := VarArrayCreate([0, 4], varVariant);
   // Создаем вариантый массив 3D точки
   vaPoint := AcPoint(4.0, 6.0, 0.0);
   // Заполняем массив
   vaType[0] := 1001; // Название приложения должно быть вначале
   vaData[0] := appid;
   vaType[1] := 1070; // Целочисленное
   vaData[1] := 99;
   vaType[2] := 1040; // Вещественное
   vaData[2] := 2.5;
   vaType[3] := 1000; // Строка
   vaData[3] := 'Здавствуй яблочко!';
   vaType[4] := 1010; // 3D точка
   vaData[4] := vaPoint;
   // К каждому объекту в выбранных объктах
   // присоеденим расширенные данные XData
   For i := 0 to Objects.Count - 1 do
      Objects.Item(i).SetXData(vaType, vaData);
   Objects.Delete;
end;

Содержание  Назад  Вперед