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

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

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

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

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

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

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

Получение параметров интерфейса операции "Массив по точкам"

Автор IgorRUtver, 30.08.13, 16:27:33

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

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

IgorRUtver

Всем привет. Столкнулся с проблемой. На цилиндрической детали необходимо создать пазы. При этом их количество не постоянно. Думаю создать массив операции вырезания по точкам или по сетки, но получить интерфейс не получается. Подскажите пожалуйста. Вот моя попытка в Delphi. Заранее прошу извинить если делаю грубые ошибки и неверную терминалогию. В примерах не нашёл, поэтому пытался сделать по дереву интерфейсов..

var
IPointDrivenPattern : ksEntity; // интерфейс массива по точкам

begin
IPointDrivenPattern := ksEntity(iPart_pl1.NewEntity( o3d_PointDrivenPattern )); //тут я попытался получить указатель на интерфейс операции
???
end;
а вот получить параметры не знаю как, как объявить переменную параметров операции.

Только через API7, IFeaturePatterns.Add(o3d_PointDrivenPattern) - создает новый элемент и добавляет его в коллекцию.

Document:=newKompasAPI.ActiveDocument;
  if Document<>nil then
   begin
     Doc3D:=Document as IKompasDocument3D;
     if Doc3D<>nil then
      begin
        // Преобразовать интерфейс документа 3D из API7 в API5
        Document3D:=IUnknown(ksTransferInterface(LtDefine.PIUnknown(Doc3D),ksAPI3DCom,0)) as IDocument3D;
        Part7:=Doc3D.TopPart;
        if(Part7<>nil)and(Document3D<>nil)then
         begin
           ModelContainer:=Part7 as IModelContainer;
           if ModelContainer<>nil then
            begin // Получаем Интерфейс коллекции массивов
              FeaturePatterns:=ModelContainer.FeaturePatterns;
              if FeaturePatterns<>nil then

...