• Registration is manually approved during the forum's testing period Регистрация одобряется вручную на период тестирования форума

REVIT Патч панели нумерация

admin

Administrator
Staff member
@Grok - необходима автоматическая нумерация кабелей для патчпанелей, где это лучше реализовано (если реализовано) MagiCAD (предпочтительней) или Revit без надстроек (возможно через Dynamo)
 
- необходима автоматическая нумерация кабелей для патчпанелей, где это лучше реализовано (если реализовано) MagiCAD (предпочтительней) или Revit без...

Коротко: для силовой/слаботочной кабельной продукции MagiCAD выигрывает «из коробки». Для СКС и патч-панелей (порт ↔ кабель ↔ розетка по TIA-606) ни MagiCAD, ни чистый Revit это нормально не закрывают — в обоих случаях дожимают схемой нумерации и Dynamo.

MagiCAD
Рабочий инструмент — Running Index (вкладка MagiCAD → Common). Им нумеруют устройства, кабели, короба с префиксом, стартовым номером, группировкой по этажу/системе/пространству. В Electrical кабели, заведённые как MagiCAD Cable, получают ID вместе с цепью.

Ограничения именно под патч-панели:
  • Нет модели «панель 24/48 портов → нумерация портов → кабель с тем же ID на обоих концах».
  • Кабель MagiCAD — это трасса/цепь, а не порт RJ45.
  • Сквозная схема вида PP-A-01-12 / WS-3.12-04 штатно не собирается, её всё равно кладут в общие параметры и дописывают скриптом или вручную.
Имеет смысл, если MagiCAD уже стоит и нужно быстро пронумеровать лотки, магистрали и оконечные устройства. На порты патч-панели не рассчитывайте.

Revit без надстроек + Dynamo
Нативной автонумерации кабелей СКС нет. Mark/Комментарии — вручную или через спецификации. Зато Dynamo как раз закрывает патч-панели, потому что логика нумерации у вас, а не у Electrical.

Типовой сценарий:
  • Порты панели — вложенные семейства или connector + общий параметр PortNumber (01–24 / 01–48).
  • Кабель (линия/conduit/отдельное семейство) хранит CableID, PanelCode, PortA, PortB.
  • Dynamo: собирает панели → сортирует порты (слева направо / сверху вниз) → пишет 01, 02, 03… → тем же номером маркирует кабель и розетку.
  • Формат лучше сразу закладывать под маркировку: {этаж}-{щит}-{панель}-{порт}, например 3F-TR-PP01-12.

Сортировку не делайте «как попало в модели»: только по координатам коннектора относительно панели (локальная X/Y экземпляра), иначе после копирования панелей нумерация поедет.

Минимальная логика Dynamo (Python, без пакетов):

Python:
# ports: список элементов портов одной панели
# origin, basisX, basisY: трансформ хоста-панели
def local_xy(p, origin, basisX, basisY):
 v = p.Location.Point - origin
 return (v.DotProduct(basisX), v.DotProduct(basisY))

sorted_ports = sorted(ports, key=lambda p: local_xy(p, origin, basisX, basisY))
for i, p in enumerate(sorted_ports, start=1):
 p.LookupParameter("PortNumber").Set("{:02d}".format(i))

Дальше тем же графом пишете CableID на кабель и на розетку. Для диалога выбора панели удобны Data-Shapes, для параметров — Clockwork/Rhythm, но можно и чистым API.

Что выбрать
  • MagiCAD — если задача «пронумеровать кабели/устройства MagiCAD» и СКС вторична. Running Index быстрее Dynamo на типовых MEP-кабелях.
  • Revit + Dynamo — если нужна именно нумерация портов патч-панелей и сквозной ID кабеля. Это единственный предсказуемый путь без плагинов СКС.
  • Смешанный вариант нормальный: трассы и короба — MagiCAD Running Index, порты/кабели СКС — Dynamo в общие параметры. Не пытайтесь тащить RJ45-порты через MagiCAD Cable.

Практический совет: сначала зафиксируйте стандарт маркировки (панель, порт, розетка, кабель — один ID или два конца), заведите общие параметры, и только потом скрипт. Иначе и MagiCAD, и Dynamo будут нумеровать «в воздух».
 
Back
Top