• Авторизация


Автокад 18-03-2020 10:30 к комментариям - к полной версии - понравилось!

Это цитата сообщения Кель_РА Оригинальное сообщение

Создание нового типа линий




На форуме достаточно часто появляются вопросы по поводу создания типов линий в автокад. Хочется разобраться с этим вопросом получше. Как это делаю и понимаю я: Для начала определимся с понятиями - существуют два типа линий - простые и сложные. 1. Простые - типы линий описываемые только файлом *.lin соответствующим синтаксисом. Это достаточно просто. Пишется сразу ручками в файле, либо с помощью команды express "mkltype". Как писать - рассматривать не будем, т.к. это и правда просто. Для тех, кто хочет разобраться, советую поэкспериментировать с этой командой и посмотреть результаты в файле *.lin, единственное дополнение - команда иногда выдает не совсем то что от нее требуешь, но возможно, это просто я не до конца в ней разобрался, приходится подправлять результат непосредственно в файле. 2. Сложные - типы линий с вставленными графическими примитивами. Соответственно, сам тип линии описывается в файле *.lin, а примитивы в файле *.shx - получаемым компиляцией (команда compile) исходного файла *.shp. C синтаксисом описания форм в *.shp я сам до конца не разобрался, но создаю это описание с помощью express команды mkshape, то есть рисую в акаде необходимый набор примитивов, и перевожу его mkshape в файл *.shp. Итого - рисуем примитивы, переводим их в *.shp, компилируем, создаем нужный *.lin (mkltype) , ручками вписываем в него ссылку на формы в *.shx, сохраняем, загружаем в акад. Все.



________________________________________________



С Вашего позволения добавлю.

Сложные типы линий:

1. Рисуем то как линия должна выгляедеть.

2. Запускаем команду mkshape получаем файл *.shp

3. Запускаем команду shape и вставляем созданный объект (Нужно будет указать имя объекта а не файла)

4. Делаем mkltype и указываем наш загруженный объект.

Новый тип линий создан и ручками ничего прописывать не надо (только если отредактировать)



_____________________________________________________



Текстовые объекты в пользовательских типах линий



В состав сложных типов линий могут входить текстовые объекты. Линии, в состав которых входят текстовые объекты, используются для обозначения инженерных сетей, границ, топографических горизонталей и т.д. Как и простые, сложные линии строятся динамически между задаваемыми пользователем вершинами. Текстовые объекты, являющиеся частью сложных линий, всегда отображаются полностью и никогда не обрезаются.



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



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



Формат текстовых элементов начертания

Текстовые элементы начертания типов линий записываются следующим образом:



["строка",стиль,масштаб,поворот,x-отступ,y-отступ]

Элемент добавляется в описание начертания простого типа линий. Например, вот описание типа линий ГОРЯЧАЯ_ВОДА:



*ГОРЯЧАЯ_ВОДА,---- ГВ ---- ГВ ---- ГВ ---- ГВ ---- ГВ ----

A,.5,-.2,["ГВ",STANDARD,S=.1,R=0.0,X=-0.1,Y=-.05],-.2

штрих длиной 0.5 единиц, пробел длиной 0.2 единиц, последовательность символов ГВ и еще один пробел, длиной также 0.2 единиц. Текстовые символы записываются стилем STANDARD с масштабом 0,1, относительным углом поворота 0 градусов, смещением по X -0,1 единиц и смещением по Y -0,05 единиц. При формировании линии такая структура повторяется требуемое число раз; линия начинается и заканчивается штрихом длиной 0,5 единиц. Вот как это выглядит:







Вот как это выглядит: При таком описании, кстати, длина штриха составляет 0.2 + 0.2 = 0.4, а начальная точка текста смещена от конца штриха на расстояние -0.1 единиц в направлении X. Точно такой же на вид тип линий можно описать по-другому:



*ГОРЯЧАЯ_ВОДА,---- ГВ ---- ГВ ---- ГВ ---- ГВ ---- ГВ ----

A,.5,-.1,["ГВ",STANDARD,S=.1,R=0.0,X=0.0,Y=-.05],-.3

Здесь длина промежутка между штрихами также равна 0.4 (0.1 + 0.3), но текст не смещен в направлении X.



Далее приведены сведения об отдельных элементах описания текстового элемента. Значениями параметров должны быть положительные или отрицательные десятичные числа, такие как 1, -17 или 0.01.



текст



Текст, используемый в сложной линии.



стиль



Имя используемого текстового стиля. Если он не задан, AutoCAD использует текущий стиль.



масштаб



S=значение. Масштаб текстового стиля; т.е. коэффициент, на который умножается высота текстового стиля. Если высота текстового стиля равна 0, то в качестве высоты текста используется абсолютное значение S.



поворот



R=значение или A=значение. R= обозначает относительный или тангенциальный угол поворота относительно направления линии. A= обозначает абсолютный угол поворота текста, т.е. относительно начала координат; все текстовые объекты поворачиваются одинаково, независимо от их положения относительно линии. К значению можно добавить букву для обозначения единиц измерения угла поворота: d для градусов (если буква опущена, градусы используются по умолчанию), r для радиан, g для градов. Если угол поворота не указан, то его значение принимается равным 0.



Центр поворота располагается посередине между базовой линией и границами текста номинальной высоты.



x-отступ



X=значение. Этот параметр задает отступ текста по оси X, отсчитываемый вдоль линии. Если x-отступ не задан или равен нулю, то текст располагается без отступа. Этот параметр употребляется, если необходима сплошная линия, включающая текст. На значение не влияет масштаб, заданный выражением S=значение, но масштаб типа линий к нему применяется.



y-отступ



Y=значение. Этот параметр задает отступ текста по оси Y, которая направлена перпендикулярно линии. Если y-отступ не задан или равен нулю, то текст располагается без отступа. Параметр определяет поперечное расположение текста относительно линии. На значение не влияет масштаб, заданный выражением S=значение, но масштаб типа линий к нему применяется.


Цитата:


Сообщение от Формы в пользовательских типах линий


Сложные типы линий могут содержать встроенные формы, которые хранятся в файлах форм. Линии сложных типов используются для обозначения инженерных сетей, границ, контуров и т.д.



Как и простые, сложные линии строятся динамически между задаваемыми пользователем вершинами. Формы и текстовые объекты, являющиеся частью сложных линий, всегда отображаются полностью и никогда не обрезаются.



При описании элементы начертания линий сложного типа, так же как и в простых линиях, отделяются друг от друга запятыми. В качестве элементов начертания описания сложных типов линий могут содержать, помимо точек и штрихов, формы и текстовые объекты.



Формы в типах линий описываются следующим образом:



[[имя_формы,имя_файла_shx] или [имя_формы,имя_файла_shx,преобразование]

Здесь атрибут преобразование является необязательным и может задавать любую последовательность следующих параметров (через запятую):



R=##?Относительный угол поворота



A=##?Абсолютный угол поворота



S=##?Масштаб



X=## Смещение по X



Y=## Смещение по Y



В данном случае ## обозначает десятичное число со знаком (1, -17, 0,01 и т.д.). Угол поворота измеряется в градусах, остальные величины в единицах рисунка в соответствии с масштабом типа линий. После букв, обозначающих операции преобразования, ставятся знак равенства и число.



Ниже приведено описание линии с именем CON1LINE, повторяющееся звено которой состоит из линейного участка, пробела и формы CON1 из файла ep.shx. es.shx (файл)



*CON1LINE, --- [CON1] --- [CON1] --- [CON1]

A,1.0,-0.25,[CON1,ep.shx],-1.0

За исключением выражения в квадратных скобках, описание полностью совпадает с описанием простого типа линий.



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



[CAP,ep.shx,S=2,R=10,X=0.5]

Строится форма с именем CAP, описанная в файле ep.shx, в масштабе, в два раза превышающем масштаб единиц данной линии, повернутая относительно касательной к линии на 10 градусов против часовой стрелки и с отступом в 0.5 единиц по оси X.



[DIP8,pd.shx,X=0.5,Y=1,R=0,S=1]

С помощью кода, приведенного выше, можно построить форму с именем DIP8, описанную в файле pd.shx, со смещением по оси X на 0,5 единиц рисунка, по оси Y на 1 единицу рисунка, с нулевым углом поворота и в масштабе, равном масштабу единиц данной линии.



Для описания форм в сложных типах линий принят следующий синтаксис.



[имя_формы,файл_формы,масштаб,поворот,смещение_по_x,смещение_по_y]

Ниже приведена расшифровка параметров описания.



имя_формы



Имя используемой формы. Обязательный параметр. При его отсутствии тип линий не определяется. Если форма с таким именем отсутствует в указанном файле, линия строится без формы.



файл_формы



Имя скомпилированного файла описания формы (.shx). При его отсутствии тип линий не определяется. Если путь к файлу формы не задан, программа ищет его в папке библиотечных файлов. Если путь задан, но программа не может найти файл по заданному пути, то поиск осуществляется в папке библиотечных файлов. Если заданный файл не найден, линия строится без формы.



масштаб



S=значение. Масштаб формы, т.е. коэффициент, на который умножается изначальный масштаб формы. Если изначально форма определена с масштабом 0, то в качестве масштаба используется только S=значение.



поворот



R=значение или A=значение. R= обозначает относительный или тангенциальный угол поворота относительно направления линии. A= обозначает абсолютный угол поворота формы, т.е. относительно начала координат; все формы поворачиваются одинаково, независимо от их положения относительно линии. Значение угла поворота может быть дополнено буквами d, r, или g. Буквы соответствуют единицам измерения угла — градусам, радианам или градам. Если угол поворота не указан, то его значение принимается равным 0.



x-отступ



X=значение. Этот параметр задает отступ формы по оси X, отсчитываемый от вершины линии. Если отступ по оси X не задан или равен нулю, форма строится без отступа. Этот параметр употребляется, если необходима сплошная линия, включающая формы. На значение не влияет масштаб, заданный выражением S=.



y-отступ



Y=значение. Этот параметр задает отступ формы по оси Y, отсчитываемый от вершины линии. Если отступ по оси Y не задан или равен нулю, форма строится без отступа. На значение не влияет масштаб, заданный выражением S=.
вверх^ к полной версии понравилось! в evernote


Вы сейчас не можете прокомментировать это сообщение.

Дневник Автокад | mika_n - Дневник mika_n | Лента друзей mika_n / Полная версия Добавить в друзья Страницы: раньше»