C3D Kernel  102057
Функции
Прямое редактирование тел
Методы геометрических построений
Граф связей класса Прямое редактирование тел:

Функции

MbResultType TransformedSolid (MbSolid &solid, MbeCopyMode sameShell, const TransformValues &p, const MbSNameMaker &names, MbSolid *&result)
 Mодифицировать тело по матрице.
MbResultType CollectFacesForModification (MbFaceShell *shell, MbeModifyingType way, double radius, RPArray< MbFace > &faces)
 Собрать грани оболочки для методов прямого моделирования.
MbResultType FaceModifiedSolid (MbSolid &solid, MbeCopyMode sameShell, const ModifyValues &params, const RPArray< MbFace > &faces, const MbSNameMaker &names, MbSolid *&result)
 Mодифицировать оболочку методами прямого моделирования.
MbResultType ModifiedNurbsItem (MbSolid &solid, MbeCopyMode sameShell, const NurbsValues &p, const RPArray< MbFace > &faces, const MbSNameMaker &names, MbSolid *&result)
 Заменить выбранные грани тела деформируемыми гранями.
MbResultType ModifiedNurbsItem (MbSolid &solid, MbeCopyMode sameShell, const NurbsValues &p, const MbFace &face, const MbSNameMaker &names, MbSolid *&result)
 Заменить выбранную грань тела деформируемой гранью.
MbSurfaceGetControlSurface (const MbFace &face)
 Получить NURBS-поверхности грани.
MbResultType FaceControlPoints (const MbFace &face, Array2< MbCartPoint3D > &controlPoints, Array2< double > &result)
 Получить контрольные точки NURBS-поверхности грани.
MbResultType NurbsModification (MbSolid &solid, MbeCopyMode sameShell, MbFace *face, MbSurface &faceSurface, Array2< bool > &fixedPoints, const MbSNameMaker &names, MbSolid *&result)
 Деформировать грань тела.
MbResultType NurbsModification (MbSolid &solid, MbeCopyMode sameShell, MbFace *face, const Array2< MbCartPoint3D > &controlPoints, const Array2< double > &weights, Array2< bool > *fixedPoints, const MbSNameMaker &names, MbSolid *&result)
 Деформировать грань тела.
MbResultType NurbsBlockSolid (const MbPlacement3D &place, double ax, double ay, double az, bool outDir, const MbSNameMaker &names, SimpleName name, NurbsBlockValues &param, MbSolid *&result)
 Построить деформируемую призму.
MbResultType NurbsFaceConjugation (const MbSurfaceIntersectionCurve &curve, bool sences, bool faceSences, const MbSplineSurface &surface, double tension, MbeConjugationType conType, size_t insertNum, MbSplineSurface *&result)
 Построить согласованную поверхность.
MbResultType NurbsFaceSimilarity (const MbSurface &originSurface, const MbSplineSurface &surface, bool uToU, bool normSence, MbSplineSurface *&result)
 Построить подобную поверхность.
MbResultType SplineSurfaceSmoothing (const MbSplineSurface &surface, size_t udegree, size_t vdegree, MbSplineSurface *&result)
 Построить сглаженную поверхность.

Функции

MbResultType TransformedSolid ( MbSolid solid,
MbeCopyMode  sameShell,
const TransformValues p,
const MbSNameMaker names,
MbSolid *&  result 
)

Выполнить трансформацию копии исходного тела по матрице, расчитанной по габаритному кубу.

Аргументы:
[in]solid- Исходное тело.
[in]sameShell- Режим копирования исходного тела.
[in]p- Параметры трансформации.
[in]names- Именователь.
[out]result- Модифицированное тело.
Возвращает:
Возвращает код результата операции.
MbResultType CollectFacesForModification ( MbFaceShell shell,
MbeModifyingType  way,
double  radius,
RPArray< MbFace > &  faces 
)

Функция собирает грани оболочки для методов прямого моделирования:
удаление из тела выбранных граней с окружением (way==dmt_Remove),
удаление выбранных граней скругления тела (way==dmt_Purify).
Для удаления граней собираются замкнутые цилиндрические, конические, тороидальные, сферические грани тела, а также грани вращения, радиус которых не превосходит указанный радиус. Для удаления граней скругления собираются незамкнутые цилиндрические, тороидальные, сферические грани, а также грани скругления, радиус которых не превосходит указанный радиус.

Аргументы:
[in]shell- Исходная оболочка тела.
[in]way- Способ модификации.
[in]radius- Радиус собираемых граней.
[in]faces- Найденные грани для дальнейшей модификации.
Возвращает:
Возвращает код результата дейсевий.
MbResultType FaceModifiedSolid ( MbSolid solid,
MbeCopyMode  sameShell,
const ModifyValues params,
const RPArray< MbFace > &  faces,
const MbSNameMaker names,
MbSolid *&  result 
)

В зависимости от параметров модификации метод выполняет одно из следующих действий:
1. Удаление из тела выбранных граней с окружением (param.way==dmt_Remove).
2. Создание тела из выбранных граней с окружением (param.way==dmt_Create).
3. Перемещение выбранных граней с окружением относительно оставшихся граней тела (param.way==dmt_Action).
4. Замена выбранных граней тела эквидистантными гранями (param.way==dmt_Offset).
5. Изменение радиуса выбранных граней скругления (param.way==dmt_Fillet).
6. Замена выбранных граней тела деформируемыми гранями для редактирования (param.way==dmt_Supple).
7. Удаление выбранных граней скругления тела (param.way==dmt_Purify).

Аргументы:
[in]solid- Исходное тело.
[in]sameShell- Режим копирования исходного тела.
[in]params- Параметры модификации.
[in]faces- Изменяемые грани тела.
[in]names- Именователь.
[out]result- Модифицированное тело.
Возвращает:
Возвращает код результата операции.
MbResultType ModifiedNurbsItem ( MbSolid solid,
MbeCopyMode  sameShell,
const NurbsValues p,
const RPArray< MbFace > &  faces,
const MbSNameMaker names,
MbSolid *&  result 
)

Заменить выбранные грани тела деформируемыми гранями (превращение в NURBS для редактирования).

Аргументы:
[in]solid- Исходное тело.
[in]sameShell- Режим копирования исходного тела.
[in]p- Параметры преобразования.
[in]faces- Заменяемые грани тела.
[in]names- Именователь.
[out]result- Модифицированное тело.
Возвращает:
Возвращает код результата операции.
MbResultType ModifiedNurbsItem ( MbSolid solid,
MbeCopyMode  sameShell,
const NurbsValues p,
const MbFace face,
const MbSNameMaker names,
MbSolid *&  result 
)

Заменить выбранную грань тела деформируемой гранью (превращение в NURBS для редактирования).

Аргументы:
[in]solid- Исходное тело.
[in]sameShell- Режим копирования исходного тела.
[in]p- Параметры преобразования.
[in]face- Заменяемая грань тела.
[in]names- Именователь.
[out]result- Модифицированное тело.
Возвращает:
Возвращает код результата операции.
MbSurface* GetControlSurface ( const MbFace face)

Выполнить построение деформируемой поверхности для исходной грани.

Аргументы:
[in]face- Исходная грань.
Возвращает:
Возвращает NURBS-поверхности грани.
MbResultType FaceControlPoints ( const MbFace face,
Array2< MbCartPoint3D > &  controlPoints,
Array2< double > &  result 
)

Получить множество контрольных точек NURBS-поверхности грани и множества их весов.

Аргументы:
[in]face- Исходная грань.
[out]controlPoints- Контрольные точки NURBS-поверхности грани.
[out]result- Веса контрольных точек.
Возвращает:
Возвращает код результата операции.
MbResultType NurbsModification ( MbSolid solid,
MbeCopyMode  sameShell,
MbFace face,
MbSurface faceSurface,
Array2< bool > &  fixedPoints,
const MbSNameMaker names,
MbSolid *&  result 
)

Деформировать грань тела путём подстановки присланных контрольных точек NURBS-поверхности грани.

Аргументы:
[in]solid- Исходное тело.
[in]sameShell- Режим копирования исходного тела.
[in]face- Изменяемая грань тела.
[in]faceSurface- Новая NURBS-поверхность для грани.
[in]fixedPoints- Неподвижные узлы.
[in]names- Именователь.
[out]result- Модифицированное тело.
Возвращает:
Возвращает код результата операции.
MbResultType NurbsModification ( MbSolid solid,
MbeCopyMode  sameShell,
MbFace face,
const Array2< MbCartPoint3D > &  controlPoints,
const Array2< double > &  weights,
Array2< bool > *  fixedPoints,
const MbSNameMaker names,
MbSolid *&  result 
)

Деформировать грань тела путём подстановки присланных контрольных точек NURBS-поверхности грани.

Аргументы:
[in]solid- Исходное тело.
[in]sameShell- Режим копирования исходного тела.
[in]face- Изменяемая грань тела.
[in]controlPoints- Контрольные точки NURBS-поверхности грани.
[in]weights- Веса контрольных точек.
[in]fixedPoints- Неподвижные узлы.
[in]names- Именователь.
[out]result- Модифицированное тело.
Возвращает:
Возвращает код результата операции.
MbResultType NurbsBlockSolid ( const MbPlacement3D place,
double  ax,
double  ay,
double  az,
bool  outDir,
const MbSNameMaker names,
SimpleName  name,
NurbsBlockValues param,
MbSolid *&  result 
)

Построить тело в форме прямого параллелепипеда с деформируемыми гранями.

Аргументы:
[in]place- Локальная система координат.
[in]ax- Размер по X.
[in]ay- Размер по Y.
[in]az- Размер по Z.
[in]outDir- Ориентация нормалей наружу.
[in]names- Именователь.
[in]name- Главное имя.
[in]param- Параметры NURBS-поверхностей граней параллелепипеда.
[out]result- Тело из NURBS-поверхностей.
Возвращает:
Возвращает код результата операции.
MbResultType NurbsFaceConjugation ( const MbSurfaceIntersectionCurve curve,
bool  sences,
bool  faceSences,
const MbSplineSurface surface,
double  tension,
MbeConjugationType  conType,
size_t  insertNum,
MbSplineSurface *&  result 
)

Для исходной поверхности выполнить построение изменённой поверхности путем выставления сопряжения вдоль кривой.

Аргументы:
[in]curve- Кривая пересечения поверхностей ребра.
[in]sences- Ориентация кривой ребра в цикле.
[in]faceSences- Ориентация нормали на смежной грани.
[in]surface- Исходная сплайновая поверхность для изменяемой грани.
[in]tension- Натяжение.
[in]conType- Тип сопряжения.
[in]insertNum- Вставляемый ряд.
[out]result- NURBS-поверхность, полученная в результате преобразований.
Возвращает:
Возвращает код результата операции.
MbResultType NurbsFaceSimilarity ( const MbSurface originSurface,
const MbSplineSurface surface,
bool  uToU,
bool  normSence,
MbSplineSurface *&  result 
)

Для исходной поверхности выполнить построение подобной поверхности по указанной поверхности-образцу.

Аргументы:
[in]originSurface- Поверхность-образец.
[in]surface- Исходная сплайновая поверхность для изменяемой грани.
[in]uToU- Флаг сохранения параметрического направления как у поверхности-образца.
[in]normSence- Флаг сохранения направления нормали поверхности-образца.
[out]result- NURBS-поверхность, полученная в результате преобразований.
Возвращает:
Возвращает код результата операции.
MbResultType SplineSurfaceSmoothing ( const MbSplineSurface surface,
size_t  udegree,
size_t  vdegree,
MbSplineSurface *&  result 
)

Выполнить сглаживание копии исходной поверхности не изменяя ее порядок и количество контрольных точек.

Аргументы:
[in]surface- Исходная сплайновая поверхность для изменяемой грани.
[in]udegree- Параметр сглаживания по первому параметру поверхности.
[in]vdegree- Параметр сглаживания по второму параметру поверхности.
[out]result- NURBS-поверхность, полученная в результате преобразований.
Возвращает:
Возвращает код результата операции.
 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Друзья Макросы