вторник, 25 декабря 2018 г.
пятница, 7 сентября 2018 г.
[AutoLISP] - Куда уходит память?
При разработке приложения на AutoLISP столкнулся с утечкой памяти. На тестах под нагрузкой сжиралась вся оперативная память (всего - 16 Гб).
Запуск сборщика мусора не помог, все переменные проекта проверил, всё в порядке.
При отладке выявил, что виновником утечки памяти является функция
vlax-ename->vla-object
После безуспешных попыток найти решение помог уже не раз выручавший меня способ: последовательное чтение списка всех функций.
В книге "Autolisp и Visual Lisp в среде AutoCAD" есть очень удобное приложение - в одну таблицу собраны все функции и методы, сначала пробежался по ней, но безуспешно. Пошёл шерстить всю книгу и нашёл метод получения vla-объекта по хэндлу примитива HandleToObject.
Ну а дальше дело техники - забираем хэндл из DXF-данных примитива и по нему получаем vla-object:
(defun kha_vlax-ename->vla-object (e doc)
(vla-HandleToObject doc (cdr (assoc 5 (entget e)))))
Удачи!
воскресенье, 1 апреля 2018 г.
[Revit - Электрика] - Обновление программы R-One Line Diagrams
Готовится к выпуску обновление программы R-One Line Diagrams.
Ключевое изменение - добавлена уменьшенная иконка для размещения кнопки запуска программы
на панели быстрого доступа:
С праздником! :)
UPD 08.04.2018:
1 апреля прошло, настал черёд описания остальных изменений.
1. Повышение производительности.
По сравнению с предыдущим выпуском скорость генерации схем увеличилась в 5-10 раз.
2. Поддержка работы с Revit 2018.
3. Автообновление схем.
Эту функцию ждали от меня практически с самого возникновения программы:
4. Редактирование однолинейных схем.
Вслед за автоматическим обновлением схем появилась потребность обратной связи - от схем к элементам модели Revit.
Наиболее простое решение этого вопроса - по выбранным линиям на схеме найти и выбрать элементы модели Revit. Все изменения автоматически отражаются на схемах.
При такой реализации единым источником данных остаются элементы модели Revit, не требуется отслеживать изменения сгенерированных схем.
5. Задание ширины столбца однолинейной схемы.
В некоторых линиях для имени нагрузки не всегда хватает ширины столбца. Теперь есть возможность задать ширину столбца для отдельных щитов или линий:
6. Нумерация цепей.
Про исправление нумерации трёхфазных цепей было описано и решено уже давно, но на всякий случай напоминаю. Кроме того, добавлена возможность задания суффикса или префикса для отдельных цепей:
Ключевое изменение - добавлена уменьшенная иконка для размещения кнопки запуска программы
на панели быстрого доступа:
С праздником! :)
UPD 08.04.2018:
1 апреля прошло, настал черёд описания остальных изменений.
1. Повышение производительности.
По сравнению с предыдущим выпуском скорость генерации схем увеличилась в 5-10 раз.
2. Поддержка работы с Revit 2018.
3. Автообновление схем.
Эту функцию ждали от меня практически с самого возникновения программы:
Вслед за автоматическим обновлением схем появилась потребность обратной связи - от схем к элементам модели Revit.
Наиболее простое решение этого вопроса - по выбранным линиям на схеме найти и выбрать элементы модели Revit. Все изменения автоматически отражаются на схемах.
При такой реализации единым источником данных остаются элементы модели Revit, не требуется отслеживать изменения сгенерированных схем.
5. Задание ширины столбца однолинейной схемы.
В некоторых линиях для имени нагрузки не всегда хватает ширины столбца. Теперь есть возможность задать ширину столбца для отдельных щитов или линий:
6. Нумерация цепей.
Про исправление нумерации трёхфазных цепей было описано и решено уже давно, но на всякий случай напоминаю. Кроме того, добавлена возможность задания суффикса или префикса для отдельных цепей:
Благодарю пользователей программы за обратную связь.
воскресенье, 5 ноября 2017 г.
[Revit API] - Маркировка взрыв-схемы
В Revit очень неудобно маркировать элементы, смещённые функцией "Переместить элементы" или "Displace Elements". В этом видео я покажу как решить эту проблему с помощью Revit API
Этот урок я делал с помощью макросов в Revit и так случилось, что я прибил файл rvt и у меня не осталось исходников. Поэтому смотрим то, что записано:
Удачи!
Этот урок я делал с помощью макросов в Revit и так случилось, что я прибил файл rvt и у меня не осталось исходников. Поэтому смотрим то, что записано:
Удачи!
понедельник, 3 октября 2016 г.
[Revit - Электрика] - Копирование цепей
Если выбрать электроприборы с щитом и скопировать их, то цепи пропадают.
Чтобы при копировании электроприборов цепи не пропадали, выбирать их нужно через диспетчер инженерных систем, а не на виде.
Подробнее смотрите в видео:
Чтобы при копировании электроприборов цепи не пропадали, выбирать их нужно через диспетчер инженерных систем, а не на виде.
Подробнее смотрите в видео:
воскресенье, 2 октября 2016 г.
[Revit - Электрика] - Connect2ElPanel
Плагин позволяет быстро подключить электрические приборы к электрощиту по одному.
Выбираем элементы, вызываем команду, при необходимости выбираем коннектор и щит, к которому требуется выполнить подсоединение.
Если часть приборов предварительно объединена в цепь, то к электрощиту подсоединяется эта цепь.
Плагин совместим с Revit 2015-2026.
Скачать можно тут
Пароль на архив - 123
Скачать можно тут
Пароль на архив - 123
Присоединяйтесь к telegram каналу: t.me/Connect2Elpanel
UPD 2025.11.24 - сборка 0.11.80:
По запросу от пользователя добавил настройку
"Автоматически применять режим траектории"
"Автоматически применять режим траектории"
Плагин будет автоматически применять выбранный режим траектории при создании цепей стандартным инструментом Revit.
UPD 2025.11.20 - сборка 0.11.79:
1. Добавлена кнопка с настройками
2. В настройках возможно задать:
- выбирать ли щит из выпадающего списка
- режим траектории для присоединяемых цепей:
- не изменять
- все устройства
в этом режиме выполняется переключение в режим "Все устройства"
вне зависимости от числа потребителей в цепи
- все устройства (для цепей с двумя потребителями и более)
в этом режиме для цепей с одним потребителем переключение в режим "Все устройства" не производится
Если для цепи задан пользовательский режим траектории, то в таком случае плагин не меняет режим траектории
- режим траектории для присоединяемых цепей:
- не изменять
- все устройства
в этом режиме выполняется переключение в режим "Все устройства"
вне зависимости от числа потребителей в цепи
- все устройства (для цепей с двумя потребителями и более)
в этом режиме для цепей с одним потребителем переключение в режим "Все устройства" не производится
Если для цепи задан пользовательский режим траектории, то в таком случае плагин не меняет режим траектории
UPD 2025.10.06 - сборка 0.10.77:
1. Выполнена адаптация для Autodesk Revit 2026.
UPD 2024.06.30 - сборка 0.10.76:
Добавлен выбор панели из списка
Небольшая инструкция:
1. Для фильтрации панелей можно начать набирать имя панели, тогда список сократится
2. После выбора панели она подсвечивается в текущем виде (если присутствует в видимой части окна, зум не работает при открытом окошке выбора панелей)
3. Для подтверждения выбора можно нажать клавишу Enter
4. Если необходимо выбрать панель как раньше, то закройте окошко выбора панели и выберите панель мышкой.
Окошко выбора панелей можно закрыть, нажав на клавишу Escape
Формат отображения для панелей с дублирующимися именами следующий:
1. Для фильтрации панелей можно начать набирать имя панели, тогда список сократится
2. После выбора панели она подсвечивается в текущем виде (если присутствует в видимой части окна, зум не работает при открытом окошке выбора панелей)
3. Для подтверждения выбора можно нажать клавишу Enter
4. Если необходимо выбрать панель как раньше, то закройте окошко выбора панели и выберите панель мышкой.
Окошко выбора панелей можно закрыть, нажав на клавишу Escape
Формат отображения для панелей с дублирующимися именами следующий:
[Имя щита]-[Питается от]-[Уровень]-[Номер пространства]-[Комментарии]-[Id]
Если в модели нет пространств или щит не поймал пространство, тогда:
[Имя щита]-[Питается от]-[Комментарии]-[Id]
Если панель не подключена, то [Питается от] не отображается
Если в модели нет пространств или щит не поймал пространство, тогда:
[Имя щита]-[Питается от]-[Комментарии]-[Id]
Если панель не подключена, то [Питается от] не отображается
Если в панелях с одинаковыми именами есть комментарии и они уникальны, то формат записи следующий:
[Имя щита]-[Комментарий]
В таком случае Id не отображается
UPD 2024.06.16 - сборка 0.9.75:
1. Выполнена конфигурация установочного комплекта для установки без прав администратора.
В архиве есть два установочных комплекта:
Connect2ElPanel_0.9.75.0.exe - для установки требуются права администратора, плагин устанавливается для всех пользоватей компьютера
Connect2ElPanel_0.9.75.0_SingleUser.exe - для установки не требуются права администратора, плагин устанавливается только для текущего пользователя
2. При подключении потребителей учитывается порядок выбора.
Для подключения потребителей в порядке выбора необходимо:
- нажать на кнопку плагина
- выбрать потребители по одному
- после завершения выбора нажать на кнопку Escape на клавиатуре
- выбрать панель
UPD 2024.04.21 - сборка 0.9.74:
1. Выполнена адаптация для Autodesk Revit 2025.
UPD 2023.07.26 - сборка 0.9.73:
1. Выполнена адаптация для Autodesk Revit 2023, 2024.
UPD 2023.01.16 - сборка 0.9.71:
1. Исправлена ошибка при подключении семейств с напряжением, заданным параметром экземпляра с разными значениями напряжения.
UPD 2022.12.30 - сборка 0.9.70:
1. Исправлена ошибка при подключении семейств с напряжением, заданным параметром экземпляра в случае несоответствия напряжения и типа питающей сети щита.
UPD 2022.02.13 - сборка 0.9.68:
1. Исправлена ошибка при подключении слаботочных коннекторов
UPD 2021.10.24 - сборка 0.8.67:
1. Выполнена адаптация для Autodesk Revit 2022
2. Исправлена ошибка при подключении потребителей с напряжением, заданным параметром экземпляра
UPD 2021.01.18 - сборка 0.8.66:
1. Исправлена ошибка, возникавшая в версии плагина для Autodesk Revit 2021 при подключении потребителей к щиту с типом детали "Силовой щит"
UPD 2020.11.09 - сборка 0.8.64:
1. Исправлена ошибка при подключении потребителей с напряжением, заданным параметром экземпляра
2. Убрано ограничение на число типоразмеров подключаемых семейств с двумя и более коннекторами. Задание подключаемых коннекторов для таких семейств производится один за другим.
3. Выполнена адаптация для Revit 2021.
4. Во всплывающую подсказку на панели инструментов добавлен вывод номера сборки.
5. При нажатии на F1 при отображённой всплывающей подсказке переход производится на это сообщение, а не на главную страницу блога.
UPD 2020.05.24 - сборка 0.8.63:
1. Исправлена ошибка при соединении и пересоединении потребителей с двумя и более коннекторами.
UPD 2020.02.24 - сборка 0.8.62:
2. Исправлена ошибка при попытке пересоединения щита. Такая функция не была запланирована в предыдущей версии программы, но бывали случаи когда специалисты пытались выполнить пересоединение щита, что приводило к неожиданным результатам.
3. Добавлена возможность сохранения выбранных коннекторов для присоединения в пределах сеанса Revit.
Достаточно один раз указать коннектор и поставить галку "Запомнить выбор коннекторов в текущем сеансе Revit".
Информация о выборе коннекторов хранится в формате:
[Текущий документ]-[Типоразмер семейства потребителя]-[Список описаний коннекторов],
т.е. хранится отдельно по каждому открытому документу и типоразмеру семейства.
При перезагрузке документа информация о выбранных коннекторах сбросится.
Если появится необходимость переопределить выбор коннектора в текущем сеансе Revit, то выберите один неподсоединённый потребитель (без созданной цепи) и нажмите на кнопку приложения. Откроется окно для выбора коннектора.
4. Если у потребителя два коннектора и более, то возможно выбрать несколько коннекторов для подключения.
5. Добавлена возможность пересоединения потребителей. Достаточно выбрать ранее подключённые потребители, а затем щит, к которому необходимо их пересоединить.
6. Добавлена возможность выбора щитов в соответствии с напряжением, заданным на коннекторе. В строке состояния указывается напряжение подключаемых цепей. Если необходимо подсоединить цепи с различным напряжением к одному щиту, то выберите один щит дважды.
UPD 2020.02.24 - создан Telegram канал для обсуждения программы и оповещении об обновлениях
UPD 2019.06.17 - выполнено обновление:
- присоединение щитов
- пакетное присоединение/пересоединение цепей
- исправлена ошибка при подключении потребителей с напряжением, заданным параметром экземпляра
- адаптация для Revit 2019, 2020
скачать можно тут
пароль на архив: 123
при скачивании файла он блокируется системой. Перед распаковкой разблокируйте его.
вторник, 27 сентября 2016 г.
[Revit] - CheckLinks - проверка положения связанных моделей
Этот небольшой плагин позволяет проверить:
- точку вставки связанной модели (если точка вставки соответствует началу координат, то не выводится)
- прикреплена ли связанная модель (если точка вставки соответствует началу координат, и модель не прикреплена, то прикрепление выполняется автоматически, информация не выводится)
- рабочие наборы типоразмера и экземпляра связанной модели.
Совместимо с Revit 2015-2017.
Скачать можно тут
Вызов:
панель "Надстройки" -> "Внешние инструменты" -> Check Links
Если будут вопросы по использованию - пишите в форму обратной связи на блоге.
Небольшое видео, демонстрирующее работу плагина:
UPD: Обновил ссылку, сделал небольшие правки.
Спасибо за обратную связь!
пятница, 19 августа 2016 г.
воскресенье, 24 июля 2016 г.
[Revit] - Стены, плиты и секущий диапазон.
Когда я впервые встретился с этими исключениями, то это ввело меня в ступор.
Как так? Что происходит? Опытным путём удалось выявить в чём дело. Ну и да, чтение справки бывает очень полезным для понимания работы программы.
Об исключении при отображении стен:
здесь данный вопрос освещён в тексте.
Об исключении при отображении перекрытий:
Как так? Что происходит? Опытным путём удалось выявить в чём дело. Ну и да, чтение справки бывает очень полезным для понимания работы программы.
Об исключении при отображении стен:
здесь данный вопрос освещён в тексте.
Об исключении при отображении перекрытий:
Удачи!
Подписаться на:
Сообщения (Atom)





