建模 Library

详细描述

Groups

  MODELING_COMMIT
  MODELING_ERROR
  MODELING_GETNGON_FLAG
  MODELING_SETNGON_FLAG
  MODELING_SETPOINT_FLAG
  TRANSMAP_FLAG
  TRANSMAP_PLYFLAG
  TRANSMAP_PNTFLAG

Classes

struct   PointMove
struct   TransIndexMapData
struct   TransMapData
struct   TransMapNewData
struct   TransPointInterData
struct   TransPointDeltaData
class   TranslationMaps
class   建模

Macros

#define  NOTINDEX
#define  LIBRARY_MODELLING

Typedefs

typedef Bool (*  TriangulateHook ) ( BaseObject *pObj, Int32 lNgonID, Ngon *ngon, const 向量 *pvPoints, Int32 lPointCount, CPolygon *&pPolys, Int32 &lPolyCount, Bool &bTriang, void *pData)

Macro Definition Documentation

◆  NOTINDEX

#define NOTINDEX

Invalid index.

◆  LIBRARY_MODELLING

#define LIBRARY_MODELLING

建模 library ID.

Typedef Documentation

◆  TriangulateHook

typedef Bool (* TriangulateHook) ( BaseObject *pObj, Int32 lNgonID, Ngon *ngon, const 向量 *pvPoints, Int32 lPointCount, CPolygon *&pPolys, Int32 &lPolyCount, Bool &bTriang, void *pData)

Called to triangulate the N-gon in ngon , returning the result in pPolys .
Here is part of a trivial example of a triangulation algorithm that preserves quads:

#define AllocPolys(_p) lPolyCount = (_p); pPolys = (CPolygon*)NewMemClear((_p) * sizeof(CPolygon)); if (!pPolys) return false;
Bool MyTriangulate( BaseObject *pObj, Int32 lNgonID, Ngon *ngon, 向量 *pvPoints, Int32 lPointCount, CPolygon *&pPolys, Int32 &lPolyCount, Bool &bTriang, void *pData) { if (ngon-> count == 3) { AllocPolys(1); pPolys[0] = CPolygon (0, 1, 2, 2); bTriang = true ; return true ; } else if (ngon-> count == 4) { AllocPolys(1); pPolys[0] = CPolygon (0, 1, 2, 3); bTriang = true ; return true ; } else { ... } }
参数
[in] pObj An initialized object.
[in] lNgonID The N-gon ID of ngon .
[in] ngon The N-gon to triangulate.
[in] pvPoints The points of pObj .
[in] lPointCount The array size of pvPoints .
[out] pPolys Always nullptr in the call. Assign the resulting triangulated polygon array here.
It should be an array of CPolygon , allocated with NewMemClear() . The caller takes over the ownership of the pointed array.
[out] lPolyCount Assign the size of pPolys here.
[in] bTriang 赋值 true if ngon was triangulated, otherwise false .
[in] pData The private hook data, passed from Modeling::SetTriangulateHook() .
返回
true if successful, otherwise false .
Ngon
定义: lib_ngon.h:26
Ngon::count
Int32 count
Point count.
定义: lib_ngon.h:104
BaseObject
定义: c4d_baseobject.h:224
CPolygon
Represents a polygon that can be either a triangle or a quadrangle.
定义: c4d_baseobject.h:43
maxon::Vec3< maxon::Float64, 1 >
Int32
maxon::Int32 Int32
定义: ge_sys_math.h:58
Bool
maxon::Bool Bool
定义: ge_sys_math.h:53

Copyright  © 2014-2025 乐数软件    

工业和信息化部: 粤ICP备14079481号-1