Обновлена страничка «Лекции»
С неё можно скачать материалы, которые были розданы на лекции по основам параметрического
проектирования.
Обновлен список претендентов на «автомат»
Список
претендентов (по состоянию на 02/03/2004)
АВ
-01
Котова Е.
Демчишин А.
Пашкевич А.
Токарев А.
Сидоренко А.
Панас Ю.
Буфан П.
Беренок Н.
Федотов А.
Шараевский Т.
Пацера Е.
*Мандес-Монсанто О.
Савельева А.
Свинарский А.
*Осецкий В.
*Фжевский А.
АВ-02
Падерно А.
Сегеда Д.
*Ралло С.
*Хижняк Р.
Бондарчук Ю.
*Пукай К.
Костюченко И.
Устыменко Н.
Должиков Г.
Сидорка А.
Чернышов А.
Мирошник Д.
Мирошник А.
Цибульский Е.
Степанчук А.
*Гольденберг
*Лазебников
*Шурбований
АВ-03
Перерва В.
Давыдов Д.
Мищенко В.
Кононенко А.
Кульчицкий А.
Куклев Е.
Солодкий Д.
Чечель А.
Подрезов А.
Иванов А.
Осипчук С.
Гармаш К.
Бугаев В.
Елисеев Е.
*Перерва И
*Тищенко А.
*Ткач П.
*Цукренко Ю.
*
Студенти, которые пропустили одну лекцию докажут, что их отсутствие было
вызвано уважительной причиной, имеют возможность остаться в списке претендентов.
Использование расширенных данных
К любому примитиву чертежа можно добавлять расширенные данные, т.е. текстовые
или числовые данные, которые желательно хранить вместе с геометрией (например,
марки материалов, наименования узлов, секций и т.п.). Обычно наличие такой информации
позволяет разрабатывать программы связи с базами данных. Расширенные данные
связываются с именем определенного приложения. У одного графического примитива
могут быть данные нескольких приложений, которые располагаются последовательно
в определенной структуре.
В том случае, когда расширенные данные присоединены к примитиву, то в базе
чертежа они следуют за обычными данными. Для расширенных данных отведено пространство
(нужно вспомнить DXF-коды) начиная с 1000 по 1071.
Строковые
константы
1000. Строковые константы в расширенных данных могут быть длиной не более 255
знаков (256-й знак зарезервирован под символ с кодом 0).
Имя приложения
1001 (тоже строковая константа). Используется только для указания имени приложения,
длиной не более 31 знака (если код 1001 попадает внутрь списка, организуемого
с помощью DXF-кодов 1002, то он интерпретируется как обычная строковая константа,
а не имя приложения). Имя приложения должно состоять только из латинских букв,
цифр и символов $, -, _.
Название
слоя
1003. Название слоя, с которым связываются расширенные данные.
Метка
в базе чертежа
1005. Метка объекта в базе чертежа
3D точка
1010. Три вещественных числа, обозначающие координату точки в 3-х мерном пространстве.
Вещественное
число
1040. Вещественное число.
Короткое
целое число
1070. 16-битовое целое число (со знаком или без знака).
Длинное
целое число
1071. 32-битовое целое число. Если присвоить значение в группе 1071 как короткое
целое число или вещественное число, то оно будет преобразовано в длинное целое
число. Если присвоит, например строковую константу, то оно преобразуется в 32-битный
нуль (0L).
ObjectARX всегда трактует группы 1071 как длинные целые.
Существуют и другие группы специальных расширенных данных:
Управляющая
строка
1002. Расширенными данными можно управлять используя скобки "{" и
"}". С помощью группы 1002 можно формировать в расширенных данных
списковые структуры. Они должны начинаться открывающей скобкой с кодом 1002,
затем должны идти данные, включаемые в список, а закрывающая скобка с кодом
1002 завершает оформление списка.
Двоичные
данные
1004. Двоичные данные длиной не более 127 байтов. Обрабатываются только в ObjectARX.
3-х мерная
точка положения в МСК
1011. Трехмерная точка интерпретируется как положение в МСК. Такая точка перемещается,
масштабируется, поворачивается, и симметрируется одновременно с родительским
примитивом рисунка.
3-х мерная
точка перемещения
1012. Такая точка не перемещается, не масштабируется и не растягивается одновременно
с родительским примитивом, но участвует вместе с ним в операциях масштабирования,
поворота и симметрирования.
3-х мерная
точка направления
1013. Трехмерная точка интерпретируется как направление в МСК. Учавствует в
операциях поворота и симметрирования. Вектор с координатами, взятыми из группы
с кодом 1013, является нормализованным, т.е. единичной длинны.
Расстояние
1041. Вещественное число, интерпретируемое как расстояние. Оно масштабируется
одновременно с родительским примитивом.
Коэффициент
масштаба
1042. Вещественное число, интерпретируемое как коэффициент масштаба. Масштабируется
одновременно с родительским примитивом.
Пример использования расширенных данных на Object Pascal
(Delphi).
function
AcPoint(x, y, z: double) : OleVariant; begin
Result := VarArrayCreate([0, 2], varDouble);
Result[0] := x; Result[1] := y; Result[2] := z; end;
procedure CadDev_XDataExample; const
appid = 'MYAPPID'; var
AcadApplication, Objects, vaPoint, vaType, vaData: OleVariant;
i : integer; begin
// Получаем ссылку на откытый AutoCAD 2004
или запускаем новый
AcadApplication := GetActiveOleObject('AutoCAD.Application.16');
// Получаем множество выбранных объектов
Objects := AcadApplication.ActiveDocument.SelectionSets.Add('XDATAEXAMPLE');
Objects.SelectOnScreen;