Официальный форум российского программного комплекса T-FLEX PLM


Поиск  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Selected Body As ModelObject
 
Добрый день, не могу разобраться как при выделении тела, находящегося в подсборках (подфрагментах) получить его ObjectId при срабатывании события SelectionChangedEventHandler или ObjectSelectionChangedEventHandle. Выходит так что для тел приходит нулевой ObjectId, а для граней и ребер это можно получить через Reference параметр. При срабатывании первого обработчика в Selection открытого документа сидит фрагмент (!) а не само тело, который ничего не говорит о его выделенных объектах. Во втором случае приходит объект с нулевым ObjectId и типом Undefined и другими дефолтными значениями. То есть для граней и ребер есть возможность достать их ModelObject, а для тел которые не в корневом документе такой возможности нет. Подскажите как эту проблему победить, ведь работать необходимо со всеми элементами где-бы они не находились в иерархии сборки... Особенно с телами.
Document или Fragment3d из Face/Edge/Plane
 
Добрый день, подскажите как можно получить программно документ или фрагмент для выделенного фэйса или другого элемента? Owner->Document возвращает корневой документ, а Owner - компонент корневого документа внутри которого может быть еще много уровней подсборок до текущего элемента... Мне нужно именно тот документ который является непосредственным родителем.
Plugin EventHandlers in C++/CLI, Обработчики событий ...EventHandler для плагина не срабатывают
 
Спасибо!
Plugin EventHandlers in C++/CLI, Обработчики событий ...EventHandler для плагина не срабатывают
 
Добрый день, пишу плагин на С++/CLI и мне нужны события вида и документа и другие от плагина (обработчики которых заканчиваются на ...EventHandler). Но ни одно из них не приходит. Однако OnInitialize, OnCreateTools, OnCommand, OnUpdateCommand работают и все запускается сначала. Так же временно добавил событие делегата ChangingFloatingWindowDocumentEventHandler - он работает.[CODE]public ref class My_Factory : public PluginFactory
{
public:
virtual Plugin^ CreateInstance() override;
property Guid ID {
Guid get() override
{
return Guid("{25405B2A-3AA5-4B48-B968-4AF6F342F348}");
}
}
property String^ Name {
String^ get() override
{
return "Name";
}
}
};

ref class My_Plugin : Plugin
{
public:
My_Plugin(My_Factory ^ factory);
~My_Plugin() { }
public:
//здесь все срабатывает
virtual void OnInitialize() override;
virtual void OnCreateTools() override;
virtual void OnCommand(Document^ document, int id) override;
virtual void OnUpdateCommand(CommandUI^ cmdUI) override;
virtual void OnExiting(System::ComponentModel::CancelEventArgs^ args) override;

//вот эти обработчики не срабатывают
virtual void NewDocumentCreatedEventHandler(TFlex::DocumentEventArgs^ args) override;
virtual void DocumentOpenEventHandler(TFlex::DocumentEventArgs^ args) override;
virtual void ViewActivatedEventHandler(TFlex::ViewEventArgs^ args) override;
virtual void ClosingDocumentEventHandler(TFlex::DocumentEventArgs^ args) override;
virtual void ObjectDeletedEventHandler(TFlex::ObjectEventArgs^ args) override;
virtual void PluginCommandEventHandler(TFlex::PluginCommandEventArgs^ args) override;
virtual void ObjectCreatedEventHandler(TFlex::ObjectEventArgs^ args) override;
virtual void ObjectChangedEventHandler(TFlex::ObjectEventArgs^ args) override;

private:
Icon^ LoadIconResource(String^ name);

};
[/CODE]
Страницы: 1