Как указать грань для создания поверхности по сети точек?

Автор Akew, 05.03.15, 18:45:04

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

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

Akew

Здравствуйте!

Вопрос 1. Можно ли с помощью метода IMeshPointsSurface::InitParamByFace( IModelObject face ), используя в качестве face одну из граней детали, инициализировать поверхность по сети точек?

Я создал заготовку поверхности по сети точек (IMeshPointsSurface), получил и коллекцию граней детали. Но подружить грань и эту заготовку не смог. Неприятность состоит в том, что у них разные типы. Перевод грани к IModelObject грани провел, но метод InitParamByFace() не отработал: вернул "ложь".
Грани получал в двую вариантах: из коллекций ksFaceCollection и ksEntityCollection; результат - одинаково неуспешный.

Вопрос 2. Как можно по-другому инициализировать поверхность заданной грани?

Спасибо.

Вам нужно данному методу передать поверхность - ISurface приведенную к IModelObject, метод создаст поверхность по сети точек с помощью сплайновой аппроксимации поверхности, которую Вы сможете редактировать методами IMeshPointsSurface.

pSurface:=IUnknown(pFaceDefinition.GetSurface) as ISurface;
pModelObject:=pSurface as IModelObject;

Akew

Спасибо, Sabahs, разобрался.
Я сам шел этим же путем, но перед "финишем" немного "заплутал".

Для интересующихся выложил код: http://forum.ascon.ru/index.php/topic,5841.new.html#new