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

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

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

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

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

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

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

Как программно разрушить фрагмент

Автор MissKsaa, 22.11.12, 10:16:01

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

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

MissKsaa

Разрабатываю библиотеку фрагментов в Компас-3D под Делфи. Когда вставляю фрагменты в чертеж, они распознаются как вставной фрагмент ksDrFragment, но для дальнейшей обработки чертежа мне необходимо, чтобы эти вставленные фрагменты были типа макрообъект. Если вставленные фрагменты разрушить, то они становятся именно этого типа. Так вот, вопрос в том как их разрушить программно, Подскажите, пожалуйста?

var
Fragment:ksFragment;
ConturDoc2D:ksDocument2D;

ConturDoc2D.ksDestroyObjects(Fragment.Reference);

+ Благодарностей: 1

demosfenus

MissKsaa, а как вы вставляете фрагмент? Его же можно "вставить россыпью". Или я не правильно вас понял?

Цитата: SDK.chm
ksInsertFragmentParam::insertType

Способ вставки фрагмента.
Тип данных - short.

Значения свойства:
0 - взять в документ,
1 - вставить внешней ссылкой,
3 - вставить локальный фрагмент.

Попробуйте 3 способ.

MissKsaa

Sabahs, именно такой функции не нашла даже в справке компас.
Зато нашла этот метод в ksDocument2D.
При ее реализации объект разрушается и становится типа ALL_OBJ.
Хотя когда разрушаешь фрагмент непосредственно в самом компасе через контекстное меню "разрушить", он разрушается до макрообъекта.

demosfenus, фрагменты вставляются непосредственно в компас, как чертеж, а затем с помощью программы уже анализируется.

Всё правильно, этот метод есть в ksDocument2D и LibTool.pas.
Разрушили и дальше собрали в макроэлемент IMacroObject::AddObjects.