• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

Если у вас возникнут вопросы или потребуется дополнительная информация, не стесняйтесь обращаться к нашей службе поддержки. Вы можете связаться с нами по указанным контактным данным на нашем сайте.

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

Определение габаритов модели

Автор znickbar, 12.07.21, 16:20:54

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

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

znickbar

Доброго времени!
Хочу сделать определение габаритов модели. Функции, способной сделать это не нашел. Хочу перебором координат функции SelectByPoint - Исключить из массива все объекты, не
содержащие точку с заданными координатами из IPart определить момент, когда модель пропадет из-под курсора. Но в описании от февраля указано:
"Примечание:
После выполнения этой функции в массиве останутся только те объекты, которые содержат указанную точку (проходят через нее).
Данная функция временно не работает для формообразующих элементов (элементов выдавливания, вращения, по сечениям)."
Нашел функции SelectByPoint - Выделить объекты, содержащие точку и FindObjectsByPoint - Найти объекты по точке в IPart7, но как ими пользоваться не знаю.
Только начал пользоваться и python и Компас api. Спасибо.

p3452

GetGabarit - Получить габарит...
- от IPart или ksPart.

znickbar

Цитата: p3452 от 12.07.21, 16:39:49GetGabarit - Получить габарит...
- от IPart или ksPart.
Спасибо. Я так понимаю это куб, в который вписана модель. Можно пояснить по координатам, что за вершины?

p3452

Как на счет того, чтобы набрать в строке поиска Справки SDK - GetGabarit ?
GetGabarit модели.png

znickbar

Цитата: p3452 от 12.07.21, 18:39:04Как на счет того, чтобы набрать в строке поиска Справки SDK - GetGabarit ?
Проверьте код на правильность.
x1 = 0
y1 = 0
z1 = 0
x2 = 0
y2 = 0
z2 = 0
a = iPart.GetGabarit(False, False, float(x1), float(y1), float(z1), float(x2), float(y2), float(z2))
print(a, x1, y1, z1, x2, y2, z2)
input("end")

Вират Лакх

Почему бы Вам самостоятельно не проверить код? В питоне в аргументы не передаются возвращаемые значения. Весь результат смотрите в вашей переменной a (кортеж). При этом аргументы x и y можно не прописывать, а сразу в скобках поставить нули.

znickbar

Цитата: Вират Лакх от 13.07.21, 09:08:28Почему бы Вам самостоятельно не проверить код? В питоне в аргументы не передаются возвращаемые значения. Весь результат смотрите в вашей переменной a (кортеж). При этом аргументы x и y можно не прописывать, а сразу в скобках поставить нули.
Спасибо. Как SDK интерпретировать для питона? Ведь нет информации, что возвращаемое значение кортеж и т.д. или для этого и есть ветка на форуме?
Остался вопрос об определении габаритов модели, если есть выступающие части или ниши. Какой подход посоветуете, чтобы "нащупать" пересечение с заданной координатой?

Вират Лакх

Будем считать, что для этого и есть ветка на форуме.
Используем Синтаксис Automation, а в нём (* В системах, поддерживающих работу со свойствами, например, Visual Basic, Delphi, Builder.)
Из особенностей: эта с аргументами и кортежем плюс https://forum.ascon.ru/index.php?msg=282885
С габаритами есть опыт только с выделенной геометрией (ребро, поверхность).