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

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

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

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

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

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

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

"Новые свойства" в SDK v20

Автор p3452, 17.11.21, 14:06:29

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

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

p3452

Ассоциативные виды в чертеже...
Выдержка из справки:
Виды 01.png
Кто что думает, или знает, по поводу параметра (№2) - что это за 3D объект?

KrissKross

Наверное - надо рассматривать новые свойства в купе с добавлением новых методов

Новые методы.png

И в конце концов
Разработчики добавили возможность работать с элементами дерева чертежа

Дерево чертежа.png

а вот как применять эти новые свойства и методы
пока остается загадкой
откуда брать ModelObject для дальнейшего получения массива

p3452

Судя по всему разработчики Компас в паре шагов от реализации "обратной ассоциативности"...
Интерфейс "Дерева чертежа" ??? 

СВ

 А что это - "обратная ассоциативность"? В данном случае.

IgorT

Цитата: СВ от 18.11.21, 09:59:48А что это - "обратная ассоциативность"? В данном случае.
Может быть редактирование модели из чертежа?

p3452

Цитата: IgorT от 18.11.21, 10:05:30Может быть редактирование модели из чертежа?
Точно!

СВ

 А у "братских" КАДов "обратная ассоциативность" одинаковая или есть различия по, так сказать, продвинутости? Т.е. к чему/кому именно нужно стремиться?

IgorT

Цитата: СВ от 18.11.21, 10:18:08А у "братских" КАДов "обратная ассоциативность" одинаковая или есть различия по, так сказать, продвинутости? Т.е. к чему/кому именно нужно стремиться?
Только за SW могу ответить, что оно работает, если размер в чертеже передан из модели. Меняешь его и меняется модель.
Но практически я никогда этим не пользуюсь.

СВ

 Наверное, нужно заранее сообразить, в какой плоскости поставить размер, чтобы он отразился на НУЖНОМ виде?

IgorT

Цитата: СВ от 18.11.21, 11:43:28Наверное, нужно заранее сообразить, в какой плоскости поставить размер, чтобы он отразился на НУЖНОМ виде?
Нет. Это в Компасе так. У SW не имеет значение в какой плоскости находится размер. Он ещё изометрические строит корректно. Может быть это ягодки с одного поля. В смысле  функционал размеров SW.

СВ


p3452

"Заболтали" вопрос - повторюсь:

Кто что думает, или знает, по поводу параметра (№2-см. пост 1) - что это за 3D объект?


p3452

Цитата: Sabahs от 18.11.21, 12:47:29Я так думаю любой IModelObject.
Ну, если бы это было так, то и повода для вопроса не было бы.
Итак:
- имеем ассоциативный вид,
- в нем есть ассоциативные объекты (проекции 3D объектов),
- предлагается (допустим на примере IAssociationView::AssociationObjects) отобрать часть из них в массив, по НЕКОМУ 3D объекту.
Вопрос (еще раз): что это за 3D объект и откуда его брать, если мы находимся в 2D документе?

2D делается из 3D, вид ассоциативный, я не пойму с чем у Вас проблемы?
Берется IModelObject, 3D детали, должно вернуться его 2D, если оно в вид попадает.

p3452

Открыт только 2D документ! Откуда берем 3D объект?
Примерный код:
// kompasApp - Интерфейс API7
if (kompasApp.ActiveDocument != null)
{
IKompasDocument iKompasDocument = kompasApp.ActiveDocument;
IKompasDocument2D iKompasDocument2D = iKompasDocument as IKompa sDocument2D;
if (iKompasDocument2D != null)
{
IViewsAndLayersManager vlm = iKompasDocument2D.ViewsAndLayersManager;           
if (vlm != null)
{
IViews iViews = vlm.Views;
if (iViews != null && iViews.Count > 0)
{
foreach (IView view in iViews)
{
switch (view.ViewType)
{
case LtViewType.vtUnknown: /*...*/ break;
case LtViewType.vt_System: /*...*/ break;
case LtViewType.vt_Remote2D: /*...*/ break;
default :
IAssociationView iAssociationView = (IAssociationView) view;
if (iAssociationView != null)
{
// ??? что и где взять для параметра ???
var SAFEAR = iAssociationView.AssociationObjects(???);
// ....
}
break;
}
}
}
}
}
}

IAssociationView.SourceFileName - Полное имя файла-источника.

p3452

#17
Цитата: Sabahs от 18.11.21, 13:58:37IAssociationView.SourceFileName - Полное имя файла-источника.
Серьезно?
Тогда я явно поторопился с выводами, что разработчики Компас в двух шагах от обратной ассоциативности :-)))

Р.S: В выше приведенном коде не хватает пару строк:

if (iAssociationView != null)
{
    if (!string.IsNullOrWhiteSpace(iAssociationView.SourceFileName))
    {
 // ??? что и где взять для параметра ???
 var SAFEAR = iAssociationView.AssociationObjects(???);
 // ....
    }
}

p3452

Шикарно получилось >:(  - автору форума привет!!!

Я, думаю Вы так хотели меня процитировать.
Цитата: Sabahs от 18.11.21, 13:58:37IAssociationView.SourceFileName - Полное имя файла-источника.
Серьезно?
Тогда я явно поторопился с выводами, что разработчики Компас в двух шагах от обратной ассоциативности :-)))

Р.S: В выше приведенном коде не хватает пару строк:
if (iAssociationView != null)
{
    if (!string.IsNullOrWhiteSpace(iAssociationView.SourceFileName))
    {
 // ??? что и где взять для параметра ???
 var SAFEAR = iAssociationView.AssociationObjects(???);
 // ....
    }
}
PS. Я если мне надо, найду, а разводить муть, не вижу смысла.