Получение параметров макроэлемента

Автор Zpengineer, 08.03.25, 18:51:27

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

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

Zpengineer

Добрый день. Подскажите, пожалуйста, то я себе уже голову сломал) пишу скрипт и моя задача заключается в том, чтобы получать все параметры элементов на 2D фрагменте. Сейчас меня конкретно интересует макроэлемент отверстия и его параметры диаметр, глубина, фаска и т.д. Данные получаю в виде безопасного массива safearray, а как его расшифровать втолковать не могу. Кто может подсказать или указать где посмотреть информацию или пример?

Что с этим делать?

[4, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 64, 0, 0, 0, 0, 0, 0, 46, 64, 0, 0, 0, 0, 0, 0, 36, 64, 0, 0, 0, 0, 0, 0, 50, 64, 1, 0, 0, 0, 0, 0, 240, 63, 0, 0, 0, 0, 0, 0, 20, 64, 0, 0, 0, 0, 0, 0, 94, 64, 0, 0, 0, 0, 0, 0, 46, 64, 0, 0, 0, 0, 0, 128, 86, 64, 0, 0, 0, 0, 0, 0, 0, 64, 1, 0, 0, 0, 0, 0, 0, 52, 64, 249, 251, 4, 209, 12, 82, 225, 63, 4, 0, 0, 0, 46, 0, 120, 0, 109, 0, 108, 0, 3, 0, 0, 0, 29, 4, 53, 4, 66, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

UU


p3452

Safearray имеет свои ПЛЮСЫ и МИНУСЫ:
"+" - всегда возвращает то что ДОЛЖЕН вернуть (что бы получить ОЖИДАЕМЫЙ "тип" достаточно сделать "привидение типа"),
"-" - может вернуть ЛЮБОЕ количество элементов (нужен анализ возвращаемого количества).

Zpengineer


Михаил88

user_params = macro_object.UserParams
user_params.obj.decode('ansi')

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

Zpengineer

Цитата: Михаил88 от 09.03.25, 21:51:04user_params = macro_object.UserParams
user_params.obj.decode('ansi')

Это у вас библиотеки отверстий? Потому что у меня в 18 версии такого нет.
Попробовал декодировать, вот результат:

Цитировать♦☺ ☺          ☺                  @      .@      $@      2@☺    р?      ¶@      ^@      .@    ЂV@      @☺      4@щы♦С♀Rб?♦  . x m l ♥  ↔♦5♦B♦

Михаил88

Библиотека отверстий находится в справочнике стандартных изделий. У меня компас 18.1.55. Пришлите файл для примера, чтобы посмотреть. Я думал Вы тоже использовали эту библиотеку.

Zpengineer

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