Как по линии на ассоциированном виде выйти на свойства компонента?

Автор lavgirb, 23.10.23, 16:20:39

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

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

lavgirb

Если на ассоциированном виде выделить линию и в контекстном меню выбрать "Свойства компонента", то в табличке можно прочитать свойства и их значения.
Как программно имея объект линии получить (выйти на) свойства компонента? Возможно ли это?
Хотя бы "в каком направлении копать"...
Спасибо.

Свойство компонента.jpg

Nipal

Конечно можно, например FindObj, даже выделять не надо, выделенный Groupp=0 - группа селектирования.

lavgirb

Цитата: Nipal от 23.10.23, 16:26:51Конечно можно, например FindObj, даже выделять не надо, выделенный Groupp=0 - группа селектирования.
Спасибо.
Я понял, в примере из SDK показано, что найдется линия, ближайшая к точке. А компонент сборки как определить?

{
reference pLine;
LineSeg(0, 0, 50, 50, 1);
LineSeg(50, 50, 70, 20, 1);
pLine = FindObj(20, 20, 5);
LightObj(pLine, 1);
}


lavgirb

Цитата: Nipal от 23.10.23, 16:41:20А думать?
Думать готов )
Могу определить вид, определить сборку, открыть сборку, пройти по компонентам. А как связать геометрический объект на виде с компонентом в сборке пока не пойму.

p3452

Пожалуйста, пользуйтесь ПОИСКОМ по Форуму.
Вот отлично помню, что на ЭТУ тему уже была дискуссия...

Nipal

Цитата: p3452 от 23.10.23, 19:42:37Пожалуйста, пользуйтесь ПОИСКОМ по Форуму.
Вот отлично помню, что на ЭТУ тему уже была дискуссия...
А некоторые темы, удачно удалили.

feron

Вот тут можно извлечь имена объектов

https://forum.ascon.ru/index.php?topic=38281.0

Затем открыть в хелпе, берем IAssociationView у него есть метод FindFace который возвращает IModelObject от него и получите все данные.

вот тут https://forum.ascon.ru/index.php?topic=38258.0 полуфабрикатное приведение имен.

lavgirb

Цитата: p3452 от 23.10.23, 19:42:37Пожалуйста, пользуйтесь ПОИСКОМ по Форуму.
Вот отлично помню, что на ЭТУ тему уже была дискуссия...
p3452, вероятно, Ваш ПОИСК изысканнее моего. Но я подозреваю, что Вы и не искали.
Потому что ссылки от Вас не последовало.
Я думаю, что Вы можете реабилитироваться в моих глазах, если приведете ссылку, найденную в результате Вашего ПОИСКА на ЭТУ тему.
А отличная память - не аргумент в дискуссии. Вы и сами это должны понимать.


Цитата: feron от 23.10.23, 21:27:15Вот тут можно извлечь имена объектов

https://forum.ascon.ru/index.php?topic=38281.0

Затем открыть в хелпе, берем IAssociationView у него есть метод FindFace который возвращает IModelObject от него и получите все данные.

вот тут https://forum.ascon.ru/index.php?topic=38258.0 полуфабрикатное приведение имен.
У меня КОМПАС-3D V19
В SDK такая информация:

ЦитироватьIAssociationView - методы

В этом разделе:

CreateLocalView - Местный вид
Метод FindFace отсутствует.


Пока просматриваю
FindObjectsByPoint - Найти объекты по точке из методов IPart7...
Вероятно, надо понять, как точка на виде соотносится с точкой в модели (по координатам разумеется).


p3452

1. Вот с ЭТОГО надо было начинать:
Цитата: lavgirb от 24.10.23, 09:33:41У меня КОМПАС-3D V19
2. Мой "поиск" действительно "изысканней":
Для v20.png

lavgirb

Цитата: p3452 от 24.10.23, 09:55:031. Вот с ЭТОГО надо было начинать:
Если надо, то всем.

Цитата: p3452 от 24.10.23, 09:55:032. Мой "поиск" действительно "изысканней":
Для v20.png
К сожалению, это не ссылка после Вашего ПОИСКА по Форуму ЭТОЙ темы.

p3452

lavgirb, специально для Вас - выделено "синеньким" и даже три '+' перед названием ТЕМЫ поставлены - та самая "дискуссия" о которой упоминалось!!!

lavgirb

Цитата: p3452 от 24.10.23, 13:06:25lavgirb, специально для Вас - выделено "синеньким" и даже три '+' перед названием ТЕМЫ поставлены - та самая "дискуссия" о которой упоминалось!!!

А это у Вас так форум отображается. Понятно.

Только вопрос остался. У меня пока КОМПАС V19.

feron

Считаю что нужно добавить в IAssociationViewElements возможность переносить на чертеж атрибуты/свойства -> граней/ребер/вершин и затем возможность по ним проходится.

Nipal

Цитата: feron от 24.10.23, 18:37:26Считаю что нужно добавить в IAssociationViewElements возможность переносить на чертеж атрибуты/свойства -> граней/ребер/вершин и затем возможность по ним проходится.
ProjectionMatrix - Матрица ассоциативного вида, это не оно?

feron

Nipal, а как получить дерево объектов ? И например извлечь имена их ?
ProjectionMatrix  - мало чего написано в хелпе..

1.jpg



feron

В К16 есть библиотека расстановки позиций она каким то образом понимает сколько и какие объекты расположены на виде более того она высчитывает площади их и предоставляет опцию расстановки по наибольшей площади..

Я смотрю в хелпе по типу документа/ окна документа/ объекты навигации  затем начал искать по возможным свойствам и нет не чего что бы привело к дереву чертежа.

1.jpg

feron

Цитата: Nipal от 24.10.23, 18:47:37ProjectionMatrix - Матрица ассоциативного вида, это не оно?

Этого нет в К16..

Я так понимаю остается только одно - приведение интерфейса какой то части сборки к чертежу (QueryInterface) но не выходит..

Nipal

Цитата: feron от 24.10.23, 19:50:47Этого нет в К16..

Я так понимаю остается только одно - приведение интерфейса какой то части сборки к чертежу (QueryInterface) но не выходит..
Остаётся откатится на легендарную версию 5.11.