Создание элементарных тел (сфера, цилиндр,...)через API

Автор Андрей. С, 21.08.25, 18:20:39

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

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

Андрей. С

В Компасе есть очень удобная опция создания элементарных тел без создания эскиза, но в справочной системе SDK нет ни одного упоминания об элементарных телах и Компас Макрос не записывает эту операцию. Как получить интерфейс этой операции в Python или C++?

Doom2


Андрей. С

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

Doom2

Цитата: Андрей. С от 21.08.25, 20:33:38Это используется при решении задач, где есть фазовые переходы твердого тела в жидкость или газ.
Если описывать маленькие составляющие элементы то этим наверное не получится ограничится.

Doom2

По моему вроде как в sw 2018 или 2019 могла в 3D симулировать движение волн моря для расчетов ударной мощности. И там точно не были квадратики и шарики или они были очень маленькими что мало вероятно тк железо такое не выдержит.

p3452

Цитата: Андрей. С от 21.08.25, 20:33:38Для реализации итеративного процесса изменения границы тела.
- Параметрическое "тело", или группа тел...
(Давненько, еще на v18 моделировал сгорание порохового заряда ТТРД с вычислением площади горения и других параметров, без особых проблем)

Doom2

Параметризация сплайнами причем там очень большое количество опорных точек. Она еще могла менять логику изгиба по всей длине. Получается там есть новый гибридный тип элемента - сплайн с управляемой логикой видимо по заданной функции например относительно длины.

Либо параметризация математической поверхности с управляемой логикой.

Miroshnyk

Если я ТС правильно понял, то реализации нет.
Появились в Компас v23, может появится в SDK v24, но справки по нему нет.

Kilia

Вот тут https://forum.ascon.ru/index.php?topic=31309.msg345117;topicseen#msg345117 Slaviation в обновлении добавил

Цитировать1.7.59.118 от 20.05.2025
Добавлена поддержка операций по созданию "Элементарных тел": "Сфера", "Цилиндр", "Параллелепипед по точке и трем размерам", "Параллелепипед по двум точкам и высоте", "Конус по центру основания, диаметрам и высоте",  "Конус по центру основания, диаметрам и углу", "Конус по двум дугам".

вроде оно же?

Doom2


Miroshnyk

Появились в v24.
IElementaryBodies - Интерфейс коллекции элементарных тел.
IBlockByPoints - Интерфейс параллелепипеда по двум точкам и высоте.
IBlockBySizes - Интерфейс параллелепипеда по точке и трем размерам.
IConeByAngle - Интерфейс конуса по центру основания, диаметрам и углу.
IConeByArcs - Интерфейс конуса по двум дугам.
IConeByHeight - Интерфейс конуса по центру основания, диаметрам и высоте.
ICylinder - Интерфейс цилиндра.
ISphere - Интерфейс сферы.
+ Благодарностей: 1

Хмарик

КОМПАС-3D v24 (бессрочная лицензия), при покупке от 5 до 10 лицензий  250 000,00 ₽
Вряд ли кто на Форуме сможет ее купить.
Очень многие на Форуме работают на К18.
И нисколько от этого не страдают.

Андрей. С

Уважаемый Miroshnyk, если не затруднит, приведите иерархию интерфейсов для IElementaryBodies и параметры для ISphere. Наверное так: Sphere(x,y,z,R), но от Аскона всего можно ожидать.


Андрей. С

В Kompas v23 Python дает ошибку:AttributeError: '<win32com.gen_py.69AC2981-37C0-4379-84FD-5DD2F3C0A520x0x1x0.IModelContainer instance at 0x2742823122464>' object has no attribute 'ElementaryBodies'
Неблагодарное это дело искать интерфейсы не описанные в SDK.

p3452

"Трудно искать черную кошку в темной комнате, особенно если ее там нет!" :o:
(v23 это не v24)

Miroshnyk

Речь за v24, тут всё создаётся, а в v23 реализации нет.
pModelContainer:=pPart7 as IModelContainer;
if pModelContainer<>nil then pElementaryBodies:=pModelContainer.ElementaryBodies;
if pElementaryBodies<>nil then pSphere:=pElementaryBodies.Add(o3d_Sphere) as ISphere;
if pSphere<>nil then
 begin
   pSphere.Diameter:=70;
   pSphere.Position.X:=100;
   pSphere.Position.Y:=150;
   pSphere.Position.Z:=200;
   pSphere.Update;
 end;

Хмарик

Цитата: Хмарик от 27.08.25, 14:22:17КОМПАС-3D v24 (бессрочная лицензия), при покупке от 5 до 10 лицензий  250 000,00 ₽
Miroshnyk, однако...

Miroshnyk

Цитата: Хмарик от 27.08.25, 14:22:17КОМПАС-3D v24 (бессрочная лицензия), при покупке от 5 до 10 лицензий  250 000,00 ₽
Тема не о деньгах.

Doom2

Цитата: Miroshnyk от 28.08.25, 08:56:16Тема не о деньгах.
Он имеет в виду наверно о перспективности Вашего вопроса..

Цитата: Хмарик от 27.08.25, 14:22:17Вряд ли кто на Форуме сможет ее купить.
Может что то и повернется на рынке..

Андрей. С, что то получилось? Скиньте фото посмотреть где идет переход в другую фазу.