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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Присвоение параметру "Гиперссылка" полилинии значения из текста/блока

Присвоение параметру "Гиперссылка" полилинии значения из текста/блока

Закрытая тема
Поиск в этой теме
Непрочитано 26.02.2022, 00:59 #1
Присвоение параметру "Гиперссылка" полилинии значения из текста/блока
koui
 
Регистрация: 24.01.2017
Сообщений: 126

Дорогие форумчане.
всё ещё продолжаю биться над автоматизацией кабельного журнала.
сейчас дошёл до того, что единственным приемлемым способом связать полилинию с текстом/блоком - это записать его в гиперссылку полилинии.

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

я не программирую на лисп (к сожалению), но алгоритм не выглядит столь сложным на первый взгляд.

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

ах, да, если у кого-то уже есть опыт составления КЖ через гиперссылку (печальный или удачный) - поделитесь, пожалуйста.
Просмотров: 5634
 
Непрочитано 26.02.2022, 01:11
#2
Кулик Алексей aka kpblc
Moderator

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


Offtop: А если поискать по форуму, то можно найти как раз тему про кабельные журналы...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 26.02.2022, 02:31
#3
koui


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


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Offtop: А если поискать по форуму, то можно найти как раз тему про кабельные журналы...
да, я много искал, читал, но для себя понял, что мой метод будет приемлем только через гиперссылку. во-первых, он не требует стороннего ПО - я не против него, но бывает, что кто-то залезет его чуть-чуть подправить. Ну и сохранит, разумеется, в обычном формате (ага, если не в формате Автокад 2004).
ну и второе - достойного лиспа нет(((
koui вне форума  
 
Непрочитано 26.02.2022, 03:03
#4
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,004


Цитата:
Сообщение от koui Посмотреть сообщение
я не против него, но бывает, что кто-то залезет его чуть-чуть подправить. Ну и сохранит, разумеется, в обычном формате (ага, если не в формате Автокад 2004).
а гиперссылку не снесут шаловливые ручки деструктивных сотрудников)

Offtop:
Цитата:
Сообщение от koui Посмотреть сообщение
ну и второе - достойного лиспа нет(((
Цитата:
Сообщение от koui Посмотреть сообщение
я не программирую на лисп (к сожалению),
как говорят: хочешь, чтобы было сделано хорошо - сделай сам


----- добавлено через ~18 мин. -----
Цитата:
Сообщение от koui Посмотреть сообщение
при выборе полилинии и текста записывает содержимое текста в гиперссылку полилинии, а при выборе блока и полилинии - содержимое первого атрибута в гиперссылку полилинии. если полилиний выбрано несколько, то значение записывается во все выбранные полилинии.
ничего, что у кабеля обычно два конца подключается?) По вашему алгоритму подключили блок оборудования с одной стороны к полилинии-кабелю, затем подключили блок с другого конца - снеся попутно гиперссылку от первого блока (потому что две гиперссылки не поддерживаются в одном примитиве).
Сергей812 вне форума  
 
Автор темы   Непрочитано 26.02.2022, 03:24
#5
koui


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


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
а гиперссылку не снесут шаловливые ручки деструктивных сотрудников)

Offtop:

как говорят: хочешь, чтобы было сделано хорошо - сделай сам
могут, но маловероятно. для этого в экселе пишу всегда этакий "проверяльщик"

----- добавлено через ~2 мин. -----
Цитата:
Сообщение от Сергей812 Посмотреть сообщение
а гиперссылку не снесут шаловливые ручки деструктивных сотрудников)

Offtop:

как говорят: хочешь, чтобы было сделано хорошо - сделай сам


----- добавлено через ~18 мин. -----

ничего, что у кабеля обычно два конца подключается?) По вашему алгоритму подключили блок оборудования с одной стороны к полилинии-кабелю, затем подключили блок с другого конца - снеся попутно гиперссылку от первого блока (потому что две гиперссылки не поддерживаются в одном примитиве).
меня интересует только конечная точка. начальная точка ясна, если знать конечную. вы же не тыкаете пылесос в роутер.
koui вне форума  
 
Непрочитано 26.02.2022, 03:42
#6
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,004


Цитата:
Сообщение от koui Посмотреть сообщение
меня интересует только конечная точка. начальная точка ясна, если знать конечную.
с двунаправленными списками работать проще, имхо.

Цитата:
Сообщение от koui Посмотреть сообщение
вы же не тыкаете пылесос в роутер.
не сильно удивлюсь, если умный пылесос лезет в инет сейчас за теми же обновлениями, но это по беспроводному соединению, конечно.
Сергей812 вне форума  
 
Автор темы   Непрочитано 26.02.2022, 17:15
#7
koui


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


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
с двунаправленными списками работать проще, имхо.


не сильно удивлюсь, если умный пылесос лезет в инет сейчас за теми же обновлениями, но это по беспроводному соединению, конечно.
,я слаботочник, маркировка конечного оборудования содержит всю информацию. например, 1BTH5 - это дымовой извещатель адресный адресный с адресом 1, подключенный к ARK1. очевидно, что начало 1BTH4. а вот 1BTH4.1 - это уже шлейфовый, подключенный непосредственно к 4-му выходу ARK1. бывет, что система имеет ещё уровень (иди даже несколько), но тогда наименование извещателя будет типа 2.3BTH7
koui вне форума  
 
Непрочитано 26.02.2022, 17:30
#8
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,004


Цитата:
Сообщение от koui Посмотреть сообщение
1BTH5 - это дымовой извещатель адресный адресный с адресом 1, подключенный к ARK1.
может все-таки адрес 5?

если вы уверены, что в своей солянке из набора чужих лиспов, экселевских и dwg файлов сможете поддерживать актуальную валидную информацию по текущему проекту, то внутренняя реализация - это уже нюансы.
Сергей812 вне форума  
 
Автор темы   Непрочитано 26.02.2022, 21:34
#9
koui


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


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
может все-таки адрес 5?

если вы уверены, что в своей солянке из набора чужих лиспов, экселевских и dwg файлов сможете поддерживать актуальную валидную информацию по текущему проекту, то внутренняя реализация - это уже нюансы.
видите, вы сразу заметили ошибку)
я уверен, потому что как правило никто не трогает мое оборудование и кабели. могут заменить штампы, могут поменять экспликацию, но даже планировки без меня не меняют, даже с минимальными изменениями. но если будут, я люто сомневаюсь, что удалят полилинию и начертят новую, скорее, подвинут её.
а дальше я информацию забираю через извлечение данных и копирую в файл эксель, который уже обрабатывает её так, как мне нужно. и вот тут всё
сейчас мне приходится с помощью лиспа расставлять около маркировок длины кабеля (а бывает, что около одной маркировки 3 длины: общая, в лотке, в кабельканале). эксель сравнивает координаты, находит ближайшие и составляет КЖ. но если бы маркировка уже была записана в полилинию, это бы заметно ускорило бы процесс. конечно, вручную тоже придётся, но уже не столько и не так.

Последний раз редактировалось koui, 26.02.2022 в 21:51.
koui вне форума  
 
Автор темы   Непрочитано 28.02.2022, 23:56
#10
koui


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


я так понимаю, никто не поможет даже с первым вариантом лиспа. жаль, мне показалось, что он весьма прост. видимо, показалось
koui вне форума  
 
Непрочитано 01.03.2022, 00:26
#11
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,004


вливайтесь в ряды проектировщиков-программистов Ничего сложного там действительно нет: обработка предварительного набора, получение текста из Text, MText (тут не забыть про форматирование) или первого атрибута из коллекции атрибутов блока (хотя, имхо, лучше по именам атрибутов ориентироваться) и добавление гиперссылки к полилинии/набору полилиний. Примеры кода этих операций легко найти в сети, и даже тут на форуме.
Сергей812 вне форума  
Закрытая тема
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Присвоение параметру "Гиперссылка" полилинии значения из текста/блока

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выбор правильного значения усилия затяжки для высокопрочных болтов М30 dik-son Металлические конструкции 8 21.10.2017 21:36
Присвоение атрибуту блока значения атрибута другого блока. shartal Программирование 4 14.11.2013 14:02
Отрисовка 3D полилинии по блокам используя значения атрибутов Krovlaf Программирование 6 11.09.2013 10:51
Как указать необходимые участки полилинии makxvl Программирование 5 22.03.2013 09:55
выноски к полилинии gizmo_zx Программирование 6 01.03.2010 12:17