Нумерация таблиц и операции с кривыми.

Автор abvgdeyka, 21.02.25, 09:41:30

« назад - далее »

0 Пользователи и 2 гостей просматривают эту тему.

abvgdeyka

Здравствуйте, занялся автоматизацией рутины используя макросы, уперся в 2 задачи на которых увяз и прошу помощи.
1. На 2D чертеже создаю таблицу, но не могу понять как назначить ей группу нумерации: #Нумерация таблиц для того, что бы у таблицы появлялся заголовок, в SDK нашел, что можно использовать Автонумерация и сортировка объектов, однако IAutoNumerationManager не имеет методов на добавление объекта в группу, INumericGroup у него есть метод Attach на добавление, но я вообще не понимаю как использовать интерфейс, примеров использования на py нету, кто ни будь работал с эти интерфейсом? Так же хотел бы уточнить есть ли другие способы добавить заголовок к таблице, не считаю способа просто вставить строку отдельно?

2. Макросом создаю чертеж сечения печатной платы, в нижней части использую волнистую линию, так как отрезки имеют одинаковую высоту часть отрезков не доходит до волнистой, часть наоборот выходит за волнистую, мне необходимо будет сделать штриховку, но для этого нужно что бы контура были замкнуты. Для этого я вижу пока 2 способа: 1) Попытаться через математику найти точки пересечения отрезков и волнистой, но задача та еще. 2) Возможно как то применить команду "Выровнять по границе" с выделением необходимых элементов. Каждый из способов как по мне довольно сложный, может быть есть варианты проще или хотя бы посоветуйте куда "копать".     

lavgirb

Цитата: abvgdeyka от 21.02.25, 09:41:301. На 2D чертеже создаю таблицу, но не могу понять как назначить ей группу нумерации: #Нумерация таблиц для того, что бы у таблицы появлялся заголовок,
2. Макросом создаю чертеж сечения печатной платы, в нижней части использую волнистую линию,   
1 Вариант. При программном создании таблиц можно программно и давать им последовательные номера. Без заголовка таблицы

табл.jpg


2 Может быть и нет смысла делать волнистую линию. Прямой отрезок правильнее и проще.

abvgdeyka

Честно говоря не понял о чем вы, я создаю таблицу через IDrawingTables, в нем не нашел как задать имя, по этому и полез в NumericGroup, но не понял как его "прикрутить" к таблице.

drawing_tables = symbols_2d_container.DrawingTables
drawing_table = drawing_tables.Add(row, 4, 10, 10, kompas6_constants.ksTTLFirstRow)
drawing_table.X = 50
drawing_table.Y = 215
drawing_table.Angle = 0
drawing_table.FixedCellsSize = False
drawing_table.FixedRowCount = False
drawing_table.FixedColumnCount = False

lavgirb

#3
Цитата: abvgdeyka от 21.02.25, 11:32:40Честно говоря не понял о чем вы,
"Т а б л и ц а  1" это просто текст над таблицей.
Аналогично можно над второй таблицей написать "Т а б л и ц а  2" и так далее.
Таблицу удобно вставлять в отдельный пустой вид.
Тогда при перемещении вида и таблица и текст будут перемещаться синхронно.

Это просто вариант, разумеется. Который я предлагаю рассмотреть. И принять или не принять)
+ Благодарностей: 1

abvgdeyka

Неплохой вариант кстати говоря! Мне по факту автонумерация и не нужна т.к. будет либо 1, либо 2 таблицы, единственно что хотел, что бы заголовок с таблицей перемещался. Но пока писал ответ понял что можно свою хотелку через макроэлемент сделать, тогда и вид перемещать не нужно, таблица и заголовок будут всегда вместе.
+ Благодарностей: 1

abvgdeyka

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

lavgirb

Цитата: abvgdeyka от 25.02.25, 14:39:35Доделал я то, что хотел получилось вполне неплохо, макрос рисует вид со стеком многослойной печатной платы,
А толщины откуда берете? Автоматом считываете?

Я без макросов делаю так пока. Вид А - основа, а в нем вручную по размерам сечение. Штриховка тоже вручную.

пп.jpg

UU

Цитата: lavgirb от 25.02.25, 14:54:17Я без макросов делаю так пока. Вид А - основа, а в нем вручную по размерам сечение. Штриховка тоже вручную.
Самый, чудесный ответ в теме ► Программирование приложений.

abvgdeyka

Толщину меди и диэлектрика планирую забирать из альтиума тоже макросами и еще много чего, по итогу планирую оформление чертежей на ПП и МПП одной кнопкой, со стороны компаса почти все готово, только штриховка осталась и контур пп+отверстия (штамп, ТТ, таблицы готовы, осталось информацию из альтиума вытащить).

abvgdeyka

У нас вот так оформляют.
+ Благодарностей: 1

lavgirb

Цитата: abvgdeyka от 25.02.25, 15:19:57У нас вот так оформляют.
Если я правильно Вас понял, не виды с 3D-модели, а черчение?

lavgirb

#11
Цитата: UU от 25.02.25, 15:08:31Самый, чудесный ответ в теме ► Программирование приложений.
У меня плата выращивается программой.
Выносной вид А делается вручную. Его не обязательно автоматизировать.
А вот слои думаю, может тоже программно дорисовывать. Довольно муторно делать вручную...

abvgdeyka

Цитата: lavgirb от 25.02.25, 15:56:39Если я правильно Вас понял, не виды с 3D-модели, а черчение?
Да верно, делаем плату в альтиуме перегоняем в степ от туда в компас, а в компасе уже в ручную набиваем виды и оформление, естественно виды и все сопутствующее не связано и каждый раз одно и тоже делать надоело, а тут открыл для себя радость макросов когда на литеру переводил кучи документов, ну и решил автоматизировать, начал с простого штамп, ТТ, таблицы, вот до сечения добрался с ним решу буду думать как переводить вид, но вроде через DXF можно да и в альтиуме соответствующие слои есть для чертежей. Что бы все было автоматизировано в альтиуме то же планирую забирать параметры через делфи и загонять их макрос в компаса.

lavgirb

Цитата: abvgdeyka от 25.02.25, 16:19:12в альтиуме то же планирую забирать параметры через делфи и загонять их макрос компаса.
Абсолютно вся информация о плате есть в файле AD PcbDoc, сохраненном в текстовом формате.
Но там придется покорпеть, чтоб разобраться)

А толщину слоев просто вводите в свой макрос вручную?

abvgdeyka

Цитата: lavgirb от 25.02.25, 16:25:06Абсолютно вся информация о плате есть в файле AD PcbDoc, сохраненном в текстовом формате.
Но там придется покорпеть, чтоб разобраться)

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

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

+ Благодарностей: 1

lavgirb

abvgdeyka, в принципе понятно. Спасибо.

Doom2

Думаю будет не лишним в Properties прикрепить соответствующие даташиты и другие характеристики которые не вижу но по сути же они должны быть? К чему ведется - к симуляции работы платы.

Doom2

Могу поскидывать справочники по элементам там же характеристики и схемы. В свое время по накачал с сети 1ТБ. Самое странное что ознакомившись и все равно вижу много элементов на картинках с того же али или по факту разбирая микросхемы что много еще элементов не рассмотренных.

Slaviation

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

abvgdeyka

Разобрался со штриховкой, на вид вроде бы не плохо, остается только сделать выноски позиционные.
+ Благодарностей: 1