|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Расстановка номеров пикетов по трассе трубопровода.
Регистрация: 18.06.2009
Сообщений: 118
|
||
Просмотров: 53704
|
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
![]() |
Первый способ:
tcount это из express-ov автоматический текстовый нумератор, можно задавать префиксы, приращение... второй способ: создаешь блок с атрибутом , а потом с помощью xblocknum.lsp нумеруешь
__________________
Kiev, Ukraine |
|||
![]() |
|
||||
Регистрация: 18.06.2009
Сообщений: 118
|
Express-ov к сожелению у меня нет...
По второму способу тоже не получается...создаю блок с атрибутом, расставляю его по трассе, затем загружаю этот лисп, пишу имя блока/префикс/суффикс/стартовый номер, выбираю все эти блоки и ничего не происходит. Что я не правильно делаю? |
|||
![]() |
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
![]() |
Да, что-то не так с коммандой measure?
Кто подскажет, почему, при пользовании measure , с применением блока с атрибутом , такое впечатление, что атрибут как-то проваливается, что его не видно (но внутри блока он лежит..) См. файл: если я всавляю блок qwerty через insert , то я вижу его атрибут, при measure с блоком, атрибут уже не видно? Кто может подсказать, в чем причина??? (для вручную вставленных блоков lisp из №2 работает)
__________________
Kiev, Ukraine |
|||
![]() |
|
||||
Регистрация: 18.06.2009
Сообщений: 118
|
на твоем чертеже у меня все работает, перед тем как использовать лисп нужно выбрать все блоки, которые получились после применения команды _measure и обновить их.
а вот на своем чертеже я почему то не могу заставить работать этот лисп... и еще, как лисп выбирает с какого конца начинать нумерацию? он всегда нумерует снизу вверх? |
|||
![]() |
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
![]() |
Цитата:
Цитата:
__________________
Kiev, Ukraine |
|||
![]() |
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
![]() |
Цитата:
Спасибо за _battman
__________________
Kiev, Ukraine |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
А если поискать?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
Jeriko, сорри.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Jeriko, а вот теперь я упустил здесь ход мысли...
![]() У меня получается с этим лиспом, что для каждого пикета нужен щелчок ПКМ или ввод. ![]() Так должно быть или должно быть автоматом - сразу все пикеты по всей выбраной полилинии?
__________________
*...И Случай, бог изобретатель. * |
||||
![]() |
|
||||
Регистрация: 18.06.2009
Сообщений: 118
|
Все автоматом делается, лисп сразу проставляет блоки по трассе с заданным шагом и нумерует их.
Алгоритм такой: создаете блок с атрибутом / далее запукаете лисп (_b2p) / пишете название блока, который необходимо рассавить по трассе / указываете шаг расстановки / число с которого начнется нумерация блока / шаг нумерации / пишите префикс (если он не нужен жмете пробел) / пишите суффикс (если он не нужен жмете пробел) / выбираете объект по которому необходимо раставить блоки и вуаля, все готово ![]() |
|||
![]() |
|
||||
Ну вроде все так и делаю... - блок точка с атрибутом по умолчанию хх
запускаю лисп и далее по тексту... После выбора полилинии ставит в ее начале блок - хх и точка и все ![]() Команда: b2p Name of blok? 1 Distance? 100 Start number? 0 Step? 1 Prefiks? ПК Suffiks? Выберите объект: 63.694577 63.694577 63.694577 63.694577 63.694577 и.т.д.
__________________
*...И Случай, бог изобретатель. * |
||||
![]() |
|
||||
Цитата:
![]() Похоже sasha_lif прав... - у меня 2008-ой русский... Ну да ладно... - если нажать и держать ввод, то все получается автоматом... ![]()
__________________
*...И Случай, бог изобретатель. * Последний раз редактировалось skif58, 25.06.2009 в 12:50. |
||||
![]() |
|
||||
С Вашим блоком работает, с моим нет.
![]() И ориентация блока не та. Сравните плиз с моим блоком 2, может я блок как-то не так делаю?
__________________
*...И Случай, бог изобретатель. * Последний раз редактировалось skif58, 25.06.2009 в 14:28. |
||||
![]() |
|
||||
Остекляем!!! Алюминим!!! Регистрация: 21.02.2005
Москва
Сообщений: 3,925
![]() |
Victor, может еще пару запросов пусть обрабатывает??
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search: |
|||
![]() |
|
||||
Регистрация: 11.12.2006
Сообщений: 24
|
|
|||
![]() |
|
||||
Остекляем!!! Алюминим!!! Регистрация: 21.02.2005
Москва
Сообщений: 3,925
![]() |
гдето мелькала прога по изменению свойств аттрибутов блока, поищи.
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search: |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
Ну тогда, как вариант:
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 18.06.2009
Сообщений: 118
|
skif58, найди 10 отличий...искал, искал... не нашел, наши блоки идентичны, видимо проблемма в самом лиспе. причем попробовал команды _measure и _divide с вашим блоком все работает как надо, то есть ориентация у блоков получается перпендикулярно трассе, по чему лиспом они не расставляются я не знаю. С лиспом, который выложил Кулик Алексей aka kpblc, все работает, значит проблемма в самом лиспе.
Кулик Алексей aka kpblc, вопрос по лиспу: можно ли там какнибудь изменить ориентацию текста? тоесть добавить опцию выбора, размещать его горизонтально или же в соответствии с планом трассе. Последний раз редактировалось Jeriko, 25.06.2009 в 15:53. Причина: добавление |
|||
![]() |
|
||||
Остекляем!!! Алюминим!!! Регистрация: 21.02.2005
Москва
Сообщений: 3,925
![]() |
Кулик Алексей aka kpblc, критику немного наведу
1. запрос на приращение?? 2. запрос на то, каким образом расставлять блоки а) по указанной длине, б) указание каждого последующего пикета в) либо разбить на равное количество участков 3. запрос на поворот блока и его атрибута.
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search: |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
zenon, у меня времени на написание лиспа было около 15 минут... По идее (если делать нормальную команду) надо прописывать вообще диалог, в котором все и указывать. Вариант dcl-а я могу накидать, но на этом я и закончусь
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
Сильно опасаюсь, что "закончусь". В любом варианте сегодня заняться уже не получается
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Цитата:
Спасибо Алексей. - работает. ![]() ![]()
__________________
*...И Случай, бог изобретатель. * |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
Пока вариант dcl (скажите, устраивает или нет)
Код:
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
vlide -> новый файл -> вставить содержимое -> Tools -> Interface tools -> Preview DCL In Editor
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Остекляем!!! Алюминим!!! Регистрация: 21.02.2005
Москва
Сообщений: 3,925
![]() |
Кулик Алексей aka kpblc, может что-то не то делаю, но у меня пункт "Preview DCL In Editor" неактивный???
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search: |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
zenon, Сделай окно с открытым файлом dcl активным. По моему его надо сохранить как dcl. Вот наткнулся на еще один автонумератор. Может быть кое-что в плане dcl позаимствовать
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
zenon, skif58, Проверил. После копирования из буфера сохраните файл как, например, test.dcl
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
Нет, не окончательная. У меня тут на работе серьезная запарка, сесть за код не получается. Даже диалог до конца еще не прописал
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
Да хреново
![]() ![]() Обработчик диалога переписываю уже в 4 раз ![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 23.07.2009
Сообщений: 35
|
Я тут воспользовался xblocknum (в самом первом сообщении есть ссылка), немного поправил под себя, но я не знаю как реализовать один момент, чтобы программа меняла номера не одного атрибута, а и второго тоже, который в этом же блоке и с тем же значением. Даже название этого атрибута может быть тем же.
У меня есть клемма, на клемме две циферки (номер клеммы) сверху и снизу, вот их то мне и нужно менять. И как еще выбирать tag нужного атрибута кликом на него, а не задавая в программе? Или такое не выйдет? Последний раз редактировалось Bart, 23.07.2009 в 14:43. |
|||
![]() |
|
||||
Чайник Регистрация: 01.12.2011
Сообщений: 27
|
Кулик Алексей aka kpblc, Здравствуйте!
Приходится поднимать старую тему, но рассчитываю на вашу (а может еще кого из знающих людей) помощь. Лисп изучаю без году неделю, но пытаюсь вникнуть.. В одном из предыдущих сообщений есть код лиспа: Код:
Код:
|
|||
![]() |
|
||||
Регистрация: 14.06.2009
Бат-Ям
Сообщений: 295
|
(setq my_blok (entlast)) получаем имя блока
(setq my_att (entnext my_blok)) получаем имя атрибута (setq spis_att (entget my_att)) ;spisok список (setq att_old (assoc 1 spis_att)) ;name содержимое атрибута (setq num_new (itoa i)) номер в строку (setq num_new (strcat pref num_new suff))) добавляем суффикс и префикс (setq att_new (cons 1 num_new)) ;создаём пару (setq spis_att (subst att_new att_old spis_att)); zamena замена старой ппары на новую (entmod spis_att) обновляем (entupd (cdr (assoc -1 spis_att))) и апдейтим сколько лет , сколько зим |
|||
![]() |
|
||||
Регистрация: 15.05.2010
Сообщений: 4
|
to Victor: программа P2B - то, что надо, только есть 2 краеугольных препятствия к ее использованию:1-как сделать так, что бы выбирать нумерацию, с хвоста или головы полилинии? (у полилинии есть вершины и по умолчанию нумрация в программе, идет от 1ой. Если многокилометровая линия нарисована геодезистами не в том направлении, то мне, как проектировщику, не остается никаких шансов, на ее пикетаж, с помощью B2P. )
Помогите пожалуйста! Допишите код... и второе - не такое существенное, как сделать так, что бы текст пикетажа("ПК") был относилельно чертежа либо горизонтально, либо вертикально. Т.е. палочка пикетажа - так и осталась перпендикулярно полилинии, а текст, ориентированный в чертеже занимал положение, либо горизонт, либо вертикаль. Если не сложно, помогите хотя бы с первым! Заранее спасибо... |
|||
![]() |
|
||||
Регистрация: 14.06.2009
Бат-Ям
Сообщений: 295
|
Последний раз редактировалось Victor, 03.01.2012 в 22:04. |
|||
![]() |
|
||||
Регистрация: 27.11.2007
Сообщений: 126
|
|
|||
![]() |
|
||||
Регистрация: 01.05.2013
Сообщений: 2
|
Цитата:
Прошу яблоками не кидать в меня сразу.. и как работают команды я не программист...только учусь.. Заранее благодарен.. |
|||
![]() |
|
||||
Геодезист Регистрация: 23.05.2012
Ухта
Сообщений: 1,376
|
Цитата:
__________________
Как-то так. Последний раз редактировалось sertor, 01.05.2013 в 12:39. |
|||
![]() |
|
||||
Регистрация: 04.10.2009
Сообщений: 57
|
Доброго всем времени суток
![]() В каде можно сделать динамический блок, в виде линии и отметки с писаниной, которая появляется через заданный интервал, но таким блоком можно сделать только прямолинейный отрезок. В связи с этим вопрос: а нельзя ли запилить такую полилинию, которая сама, динамически проставляла бы заранее заданные отметки с атрибутами через определенный интервал? И чтоб в случае перемещения трассы эти отметки так же динамически смещались? |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
В чистом ACAD замучаешься такое делать. Переходи на Civil / Map3D
это _.measure, что ли?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 04.10.2009
Сообщений: 57
|
Это.. Это.. ОХРЕНИТЕЛЬНО!!!!!! РАБОТАЕТ!! То что нужно!! Проставил все пикеты! Тогда уж понаглею: а как задать высоту текста (он берется из какого-то стиля?) И размер пикетных плашек?
|
|||
![]() |
|
||||
Регистрация: 22.07.2015
Сообщений: 2
|
Ребята а можно ли как нибудь эту программу подредактировать так что бы привязку палочки пикета можно было другую делать ( в смысле что бы у нее привязка была не посередине а с краю), и аналогично текст что бы привязывался к краю? хотя я понимаю что это можно вручную сделать) |
|||
![]() |