|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Создание нового типа линии (или MKLTYPE не работает)
Регистрация: 03.06.2010
Сообщений: 51
|
||
Просмотров: 9053
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,432
|
Попробуй нечто типа
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Просветите, плз, что такое "a=180"? "a" - от Angle?
Если это так, то чем это отличается от "r=180"? (наверное, от Rotate) Т.е., чем описание поворота с помощью "a=" отличается от "r="? Последний раз редактировалось АлексЮстасу, 18.06.2010 в 19:47. |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,432
|
АлексЮстасу, в исходном описании типа линии использовалось именно "a":
R=## Relative rotation A=## Absolute rotation S=## Scale X=## X offset Y=## Y offset Почему - не спрашивай, не знаю. Наверное, так было надо...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Цитата:
Т.е. чаще всего полезным будет именно "r" - разворот относительно линии, а не относительно осей координат. И Филиппу тоже нужно заменить "a" на "r" - иначе неправильно нарисуются формы-стрелки на всех негоризонтальных линиях. Спасибо за справку! |
||||
![]() |
|
||||
Регистрация: 03.06.2010
Сообщений: 51
|
спасибо всем. Помощь оказалась очень оперативной и квалифицированной.
Только осталось одно "но" Я подправил данные так, чтобы длины отрезков и промежутков были такими как мне требуется (длина отрезка 10 мм, длина промежутка 2 мм). *электрокабель2,электрокабель2 <---> --- <---> --- A,0,-2,[INDEX,cc_lines.shx,r=180,x=1,y=0.5],10,[INDEX,cc_lines.shx,x=-1,y=-0.5],-2,10 Вот только получается, что расстояние между началом линии и первым сегментом не контролируемое, т.е. меняется в зависимости от длины линии. Подскажите, можно ли сделать так, чтобы сам отрезок начинался с элемента <--->?А то получается, что он начинается с точки (А,0) а потом, рассточние до следующего сегмента <---> варьируется приблизительно от 2 до 10 мм (в зависимости от длины самой линии). Последний раз редактировалось Филипп, 21.06.2010 в 08:43. |
|||
![]() |
|
||||
Цитата:
Но у Автокада первый отрезок в любом случае почему-то переменной длины. Как с этим бороться я бы сам хотел узнать. |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,432
|
Наверняка проблема кроется в plinegen...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Цитата:
На переменную величину первого отрезка/пробела plinegen вроде бы не влияет, увы. Сделать plinegen==1 по умолчанию несложно. Нужно создать шаблон, в котором будет прописано plinegen==1, и на основе его создавать все новые чертежи. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Анализируя типы линий, я обратил внимание, что все Автодесковкие линии из файлов acad.pat и acadiso.pat заканчиваютмя пробелом. Небольшие опыты показали, что если описание типа линии заканчивается отрицательным числом, то такая линия будет всегда симметричной. На рисунке загружены эти типы линий Цитата:
![]()
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Цитата:
Если же в типе линий участвуют формы, то чаще всего необходимо генерацию включить (Enabled или plinegen==1). Но и при включенной геренации Автокад растягивает/укорачивает первый отрезок. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Не совсем так. plinegen влияет на поведение полилинии, тип линии Автокада существовал задолго до появления plinegen. И я специально в предыдущем посте не упоминал полилинию, а говорил об отрезке. Автокад всегда растягивает/укорачивает первый/последний штрих не зависимо от примитива и значений переменных типа plinegen
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 03.06.2010
Сообщений: 51
|
Для полного счастья, можете мне объяснить или направить меня по ссылке, где говорится о том, как задать вес и цвет создаваемой линии? Мне необходимо, чтобы линия при её выборе сразу имела вес =0.4. И есть ещё вариант, линия должна быть разной толщины, т.е. прямые отрезки должны иметь вес 0.4 а окружности входящие в её сотав имеют вес 0.2
Последний раз редактировалось Филипп, 22.06.2010 в 14:40. |
|||
![]() |
|
||||
Цитата:
Тогда штрихи (базовая линия) будет назначенной толщины, а формы - тонкие. Тонким - до 0.2 мм - ни вес, ни толщину задавать не нужно. Она все равно не выразится в масштабе. Любопытно было бы узнать, что значит "Мне необходимо, чтобы линия при её выборе сразу имела вес..."? Каким инструментом будете выбирать? |
||||
![]() |
|
||||
Регистрация: 03.06.2010
Сообщений: 51
|
Я видимо не очень понял как пользоваться global width.
Если я правильно понял, то global width устанавливает ширину линии после того, как я её начертил. Т.е. в любом случае, она чертится как тонкая линия. Чтобы её сделать утолщённой, нужно после того как её начертил, заходить в свойства и устанавливать нужное значение.Мне же надо, чтобы при выборе линии из окна "тип линии", она сразу чертилась утолщенной. ЗЫ. Дло в том, что я только 1 месяц работаю в Автокаде. После 9-ти лет работы в КОМПАСе, немного тяжело сразу перестроить мозг на другую логику :-) |
|||
![]() |
|
||||
Цитата:
Параметры линии (блока, текста и т.п.) для черчения можно задать в Tool Palettes (панели инструментов). В основе ее лежат макросы, которыми можно управлять самим. Там можно задать цвет, слой, толщину и т.п. Но я не знаю, как в макросе описать нужную global width. Это лучше спросить у сведущих людей. (А я подсмотрю ![]() |
||||
![]() |
|
||||
|
||||
![]() |
|
||||
Регистрация: 03.06.2010
Сообщений: 51
|
Я перерыл весь форум но не нашёл описания, как создаётся волнистый тип линии "кабельна линия связи подводная". (см вложение).
Точнее говоря тема создания волнистой линии есть, но не понятно как она создавалась. Начал читать хэлп по F1, но там конкретных примеров нет. Будте так любезны, подскажите где можно почерпнуть информацию о создании такого типа линии. С первым типом волнистой линии разобрался :-) А вот вторую пока не осилил :-( Последний раз редактировалось Филипп, 24.06.2010 в 17:18. |
|||
![]() |
|
||||
Цитата:
Ясно, что в таком случае трудно или невозможно обеспечить нужную длину штрихов и пробелов (приведенную в файле). Можно, конечно, создать столько форм, сколько штрихов укладывается до полной их повторяемости. Найти какую-то золотую середину. Но с типом линии, состоящии из одних форм, будут проблемы в начале и в конце... А какой документ определяет эти условные знаки? В топографических такого условного знака нет. |
||||
![]() |
|
||||
Регистрация: 03.06.2010
Сообщений: 51
|
Да, создал шейп, только не в ползигзага. Пришлось создать в 4 зигзага, т.к. волна повторяется именно через 4 зигзага. После создания обнаружил, что при начертании этой волны получается, что она начинается с примой неконтролируемой по длине линии (от 3,6 мм до 1 мм). В идеале, хочется научится описывать сложные формы вручную, а не с помощью mkshape -> _shape
Интересно, можно сделать так, чтобы волнистая линия начиналась с волны или хотябы с отрезка длиной 0.0001? см вложение |
|||
![]() |
|
||||
Регистрация: 28.04.2010
Сообщений: 268
|
Цитата:
|
|||
![]() |
|
||||
Регистрация: 03.06.2010
Сообщений: 51
|
Я сделал немного подругому.
После создания всех необходимых типов линий, я создал палитру, куда и вынес эти линии. А вот на палитре (в свойстве каждой линии) я и присвоил им необходимые цвета, слои и прочую атрибутику. Получилось шикарно. Всем спасибо. |
|||
![]() |
|
||||
Цитата:
И как выглядит полилиния, если ей сделать Enabled (генерация -> да)? Вручную формы: http://forum.dwg.ru/showthread.php?t=30924 А также см. приложенный файл - откуда взял не помню. PSG - к сожалению в слоях нельзя задать толщину линий, а только вес (до 2008, а дальше - не знаю). А для типов линий с формами вес дает плохой результат. |
||||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Несплошные линии, X-refы и... задача | Vova | AutoCAD | 6 | 20.04.2018 16:14 |
Сейсмозащита и сейсмоизоляция существующих, построенных зд. | IANationalInformAgentstvo | Прочее. Архитектура и строительство | 216 | 20.01.2015 16:51 |
Как сгладить 2 линии. Или как сгладить только часть линии. | Димас | AutoCAD | 3 | 14.03.2006 08:28 |
Создание surface из сплайна или полилинии | WinDer | AutoCAD | 2 | 02.02.2006 10:17 |
lisp : проверка наличия типа линии в файле | Кулик Алексей aka kpblc | LISP | 4 | 21.06.2005 08:04 |