Создание нового типа линий - Страница 21
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Создание нового типа линий

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

Ответ
Поиск в этой теме
Непрочитано 04.03.2004, 12:16 2 |
Создание нового типа линий
Apelsinov
 
Проектировщик ВК. LISP-любитель.
 
Москва
Регистрация: 15.12.2003
Сообщений: 1,202

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

Есть способы проще?
Просмотров: 656998
 
Непрочитано 04.12.2012, 15:47
#401
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от LiSa Посмотреть сообщение
Но ведь как-то этот тип линии со сплошной заливкой прописан?
Мне нужно, чтобы сами формы были других размеров. Подобрать на готовой линии через масштаб типа линий не получается.
Файл описания типов линий-LIN приложите же.
Размерами форм управляют с помощью масштаба в описании форм типов линий. ["имя формы","имя файла SHP", s=]

Так у Вас прямоугольные - это не формы! Это глобальная ширина полилинии. Т.е. прямоугольная форма Вам вообще не нужна.

Последний раз редактировалось АлексЮстасу, 04.12.2012 в 15:52.
АлексЮстасу вне форума  
 
Непрочитано 04.12.2012, 16:38
#402
LiSa


 
Регистрация: 11.03.2008
Сообщений: 234


Цитата:
Сообщение от АлексЮстасу Посмотреть сообщение
Файл описания типов линий-LIN приложите же.
Тогда без формы прямоугольника прилагаю. Спасибо.
Вложения
Тип файла: rar test.rar (655 байт, 84 просмотров)
LiSa вне форума  
 
Непрочитано 04.12.2012, 19:16
#403
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от LiSa Посмотреть сообщение
Тогда без формы прямоугольника прилагаю. Спасибо.
В чем именно проблема?
Код:
[Выделить все]
*test, Линия направления движения
A,150,-20,[01,test.shx,S=1],-26.07
С помощью S=..., т.е. масштаба формы установите нужный размер формы.
АлексЮстасу вне форума  
 
Непрочитано 05.12.2012, 08:32
#404
LiSa


 
Регистрация: 11.03.2008
Сообщений: 234


Цитата:
Сообщение от АлексЮстасу Посмотреть сообщение
В чем именно проблема?
Может я не совсем понятно написала. Мне нужен тип линии: прямоугольник 150 на 7 со сплошной заливкой, далее перо поднято на 20 единиц, далее повернутый равнобедренный треугольник со сплошной заливкой 7 на 7 на 7. Пусть прямоугольник будет формой 2, повернутый треугольник формой 1.
С формой 1 нет проблем. Рисую треугольник, делаю _offset через 0,2, _mkshape, _compile.
Проблема с формой 2. Рисую прямоугольник, делаю _offset через 0,2, _mkshape, _compile.
При вызове формы 2 через команду _shape половина линий внутри прямоугольника исчезает. Т.е. при печати он не получится со сплошной заливкой.
Вопрос в том, что может быть есть другие варианты создания залитых форм? Или может попробовать сделать форму меньшего размера и ее отмасштабировать. Видимо есть какие-то ограничения.
LiSa вне форума  
 
Непрочитано 05.12.2012, 09:19
#405
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,431


Есть вариант использовать штриховку типа ANSI31 с мелким шагом и ее разбитием. Но скорость обработки такого файла будет аховая..
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 05.12.2012, 14:28
1 | #406
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от LiSa Посмотреть сообщение
Может я не совсем понятно написала. Мне нужен тип линии: прямоугольник 150 на 7 со сплошной заливкой, далее перо поднято на 20 единиц, далее повернутый равнобедренный треугольник со сплошной заливкой 7 на 7 на 7. Пусть прямоугольник будет формой 2, повернутый треугольник формой 1.
С формой 1 нет проблем. Рисую треугольник, делаю _offset через 0,2, _mkshape, _compile.
Проблема с формой 2. Рисую прямоугольник, делаю _offset через 0,2, _mkshape, _compile.
При вызове формы 2 через команду _shape половина линий внутри прямоугольника исчезает. Т.е. при печати он не получится со сплошной заливкой.
Вопрос в том, что может быть есть другие варианты создания залитых форм? Или может попробовать сделать форму меньшего размера и ее отмасштабировать. Видимо есть какие-то ограничения.
Почему форма 2 рисуется не так, как хотелось - вроде бы объяснено в #385.
Вместо формы 2 (прямоугольника) много лучше подходит именно то, что у Вас и сделано - применена глобальная ширина. Т.е. задаете глобальную ширину 7, а длину регулируете длиной штриха в типе линий.
И тогда форма для прямоугольника просто не нужна. А использование прямоугольной длинной формы никогда не даст такой плавной линии как у Вас в примере.
Что Вас не устраивает в Вашем типе линий?
Вложения
Тип файла: dwg
DWG 2004
test_02.dwg (301.1 Кб, 9165 просмотров)

Последний раз редактировалось АлексЮстасу, 05.12.2012 в 14:39.
АлексЮстасу вне форума  
 
Непрочитано 05.12.2012, 17:49
#407
Олег К.

Инженер-теплотехник
 
Регистрация: 17.08.2006
Смоленск
Сообщений: 311


Правильно АлексЮстасу говорит, не нужна здесь форма прямоугольника. При таком соотношении ее ширины к длине получается много проблем при рисовании. Вот для примера 2 типа линии и как они отрисовываются (правда с именами форм я малость ошибся).
Однако, возник вопросец один. Окружность не есть полилиния и ей нельзя задать фиксированную ширину (width), возможна только толщина (weight) которая масштабируется при печати. Получается, тут придется использовать длинный прямоугольник набранный из ~10 небольших форм?
Вложения
Тип файла: zip test03.zip (9.0 Кб, 61 просмотров)
Олег К. вне форума  
 
Непрочитано 05.12.2012, 18:47
#408
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,431


Есть еще команда _donut
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 05.12.2012, 20:09
#409
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от Олег К. Посмотреть сообщение
Окружность не есть полилиния и ей нельзя задать фиксированную ширину (width), возможна только толщина (weight) которая масштабируется при печати. Получается, тут придется использовать длинный прямоугольник набранный из ~10 небольших форм?
Преобразуйте такие окружности с помощью PLTools в полилинии.
Да, об альтернативе в виде составления длинной формы из многих коротких - здесь немного тоже упоминалось. Но если можно нормально обойтись глобальной шириной?

И не забывайте, что типы линий с формами нормально отображаются при Генерации типа линий (Linetype generation) == "Да" (Enabled). (См. в свойствах).
Если таких большинство, то выставьте переменную PLINEGEN в 1 - сами чаще всего будут чертиться "Да" (Enabled).
АлексЮстасу вне форума  
 
Непрочитано 06.12.2012, 14:36
#410
LiSa


 
Регистрация: 11.03.2008
Сообщений: 234


АлексЮстасу Спасибо. Понятно, что данный тип линии с формой прямоугольника не получится сделать. Только через global wigth присвоить нужную ширину полилинии.
LiSa вне форума  
 
Непрочитано 06.12.2012, 15:14
#411
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от LiSa Посмотреть сообщение
АлексЮстасу Спасибо. Понятно, что данный тип линии с формой прямоугольника не получится сделать. Только через global wigth присвоить нужную ширину полилинии.
Я бы сформулировал по-другому: данный тип линий с формой прямоугольника не нужно делать, т.к. использование global wigth даст лучший результат.
АлексЮстасу вне форума  
 
Непрочитано 06.12.2012, 16:19
#412
LiSa


 
Регистрация: 11.03.2008
Сообщений: 234


Цитата:
Сообщение от АлексЮстасу Посмотреть сообщение
Я бы сформулировал по-другому: данный тип линий с формой прямоугольника не нужно делать, т.к. использование global wigth даст лучший результат.
Возможно. Но было интересно, возможно ли сделать данный тип линии с залитой формой прямоугольника или нет.
LiSa вне форума  
 
Непрочитано 06.12.2012, 16:44
#413
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от LiSa Посмотреть сообщение
Возможно. Но было интересно, возможно ли сделать данный тип линии с залитой формой прямоугольника или нет.
#395
АлексЮстасу вне форума  
 
Непрочитано 12.02.2013, 09:15
#414
Nata1

Инженер
 
Регистрация: 10.11.2008
Владимирская обл., пос. Вольгинский
Сообщений: 147


Форумчане, в чем у меня ошибка, почему не компилируется файл форм?
Хочу создать тип линии в виде стрелок различных. Нарисовала полилиниями желаемый вид стрелок, создала с помощью команды mkshape файл форм (все свела в один файл Strelki.shp). Компилирую командой КОМПИЛ (_compile) и не компилируется. Вот, что пишет в командной строке:
Цитата:
Команда: компил

Компилируется файл описания форм или шрифта
Неверное определение формы в строке 7 файла C:\Documents and
Settings\User Name\Мои документы\Чертежи\Strelki.shp:
Повторная форма номер 1
Вот файл формы:
Цитата:
; Strelki.shp - файл с формами стрелок

*1,50,STR1
4,250,4,4,3,227,3,94,002,9,(0,0),001,9,(88,0),(0,0),002,9,(0,9),(0,0),001,9,(40,-9),(-40,-9),(0,18),(0,0),002,9,(-88,-9)
(0,0),001,4,94,4,227,3,4,3,250,0

*1,72,STR2
4,250,4,4,3,67,3,13,3,21,002,9,(35,7),(0,0),001,9,(-35,-7),(35,-7),(0,14),(0,0),002,9,(58,0),(0,0),001,9,(35,-7),(-35,-7)
(0,14),(0,0),002,9,(-58,-7),(0,0),001,9,(58,0),(0,0),002,9,(-93,0),(0,0),001,4,21,4,13,4,67,3,4,3,250,0

*1,68,STR3
4,250,4,4,3,227,3,94,002,9,(92,3),(0,0),001,9,(16,-3),(-16,-3),(0,6),(0,0),002,9,(-4,6),(0,0),001,9,(40,-9),(-40,-9),(0,18)
(0,0),002,9,(-88,-9),(0,0),001,9,(88,0),(0,0),002,9,(-88,0),(0,0),001,4,94,4,227,3,4,3,250,0

*1,104,STR4
4,250,4,4,3,67,3,13,3,21,002,9,(31,3),(0,0),001,9,(-14,-3),(14,-3),(0,6),(0,0),002,9,(4,4),(0,0),001,9,(-35,-7),(35,-7)
(0,14),(0,0),002,9,(62,-4),(0,0),001,9,(14,-3),(-14,-3),(0,6),(0,0),002,9,(-4,4),(0,0),001,9,(35,-7),(-35,-7),(0,14),(0,0)
002,9,(-58,-7),(0,0),001,9,(58,0),(0,0),002,9,(-93,0),(0,0),001,4,21,4,13,4,67,3,4,3,250,0
Все названия форм уникальные, не повторяются. Почему же вылезает ошибка? Второй день мучаюсь, не могу понять в чем дело. Во вложении файл .dwg и .shp
Миниатюры
Нажмите на изображение для увеличения
Название: Стрелки.jpg
Просмотров: 115
Размер:	34.5 Кб
ID:	96529  
Вложения
Тип файла: rar Стрелки.rar (25.0 Кб, 100 просмотров)
__________________
AutoCAD 2014
Nata1 вне форума  
 
Непрочитано 12.02.2013, 09:26
#415
PSG


 
Регистрация: 28.04.2010
Сообщений: 268


После звездочки указывается номер формы, а у тебя он во всех формах 1.
PSG вне форума  
 
Непрочитано 12.02.2013, 09:30
#416
Nata1

Инженер
 
Регистрация: 10.11.2008
Владимирская обл., пос. Вольгинский
Сообщений: 147


Это mkshape такой номер присвоил, а я имена форм разные задала. И что делать? Можно эти единички перебить вручную?
Начинаю догадываться, что все дело в том, что я вручную сводила в один файл.
__________________
AutoCAD 2014
Nata1 вне форума  
 
Непрочитано 12.02.2013, 09:35
#417
PSG


 
Регистрация: 28.04.2010
Сообщений: 268


Открой файл strelki.shp блокнотом и отредактируй.
PSG вне форума  
 
Непрочитано 12.02.2013, 09:37
#418
Nata1

Инженер
 
Регистрация: 10.11.2008
Владимирская обл., пос. Вольгинский
Сообщений: 147


УРА! Спасибо! Уже получилось.
__________________
AutoCAD 2014
Nata1 вне форума  
 
Непрочитано 14.02.2013, 16:54
#419
Tamogawk


 
Регистрация: 16.04.2010
Сообщений: 10


Кто-нибудь может помочь с созданием сложного типа линии?
Раньше создавал сам, но после переустановки автокада команды express tools стали "неизвестными"
Файл в приложении.
За ранее огромное спасибо!!!!!
Вложения
Тип файла: dwg
DWG 2010
Чертеж1.dwg (70.9 Кб, 10157 просмотров)
Tamogawk вне форума  
 
Непрочитано 14.02.2013, 18:10
#420
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,431


Цитата:
Сообщение от Tamogawk Посмотреть сообщение
команды express tools стали "неизвестными"
А ET вообще установлены?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Создание нового типа линий

Реклама i
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание нового материала в AutoCAD 2008 termit-spb AutoCAD 1 21.12.2009 22:14
Создание нового стиля таблиц AutoCAD 2006 (VL) Дмитрий Голованов Программирование 21 20.12.2009 02:37
Как отключить создание каждый раз нового файла .bak при нажатии на кнопку "Сохранить" или при закрытии любого файла .dwg в Автокад 2008? gve2005 AutoCAD 4 30.10.2009 10:30
ГОСТ на ванты и оттяжки ??? зщцук? Поиск литературы, чертежей, моделей и прочих материалов 1 17.05.2005 06:53
Загрузка типа линии из макроса Кулик Алексей aka kpblc Программирование 4 24.01.2005 14:57