Inherited from NULL
Inherited by NULL
Friend class NULL
Description
XViewData封装了文档的视图数据,用于协调应用程序的数据模型(Model)、用户界面视图(View)和用户交互(Controller)。该数据类扮演着连接文档数据和视图之间的重要角色,它通过提供数据的访问接口,使得视图能够获取并显示数据。同时,当用户在视图上进行操作时,文档视图数据类以观察者模式,使得视图能够注册对数据更新的监听。当数据发生改变时,数据类会通知相关的视图,使其可以及时更新显示,从而实现良好的用户体验和数据的可靠管理。
一个文档可以以多种形式的视图展现给用户并和用户交互,视图所需要的数据由XViewData准备组织完成,视图的各种设定也由XViewData管理并提供访问接口,因此XViewData是用户与文档进行交互的必要接口。
XViewData为主流的视图形式提供了大量的方法接口,如三维视图,提供了包括视角、拾取方法、拾取对象类型、显示模式、渲染模式等多种设定接口,提供了三维模型的面渲染数据、边渲染数据、体渲染数据、点渲染数据以及云图值渲染数据等的访问接口;二维曲线视图,提供了曲线数据访问接口。
XViewData与XDocument是一一对应的关系,原则上XViewData由所对应的文档类创建和销毁。
Members
Public interface
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
void
hideItems(vector<XUniqueObjectID*> * items)
void
showItems(vector<XUniqueObjectID*> * items)
void
hideItems(vector<XUniqueObjectID> * items)
void
showItems(vector<XUniqueObjectID> * items)
-
void
setColorScheme(ColorScheme cs, uint8 r, uint8 g, uint8 b, uint8 a)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
void
setClipPlane(const double * base, const double * normal, int idx = 0)
-
-
-
void
setClipPlane(const XPlane * fp, bool bUpdateViewData = true, int idx = 0)
-
virtual ulong
updatePickedItemColor(const XUniqueObjectID * ue = NULL, UpdateItemColorMode updateMode = UpdateColor_UnpickItem)
-
-
void
bindBuffer(XRenderData * r, int vBuf, int elBuf)
-
-
-
-
-
-
-
-
void
updateResultToVFF(XModel * mdl, const XResult * rlt, const XResult * deformRlt, int comp, int cid, VertexFrameFile * vff)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
void
buildViewDataForElems(vector<const XElement *> * elems, XRenderData * rd, bool bEnableNormal = false)
-
-
-
-
-
void
updateSectionRenderData(const XPlane * fp, vector<SegmentPoint> * sectionPoints, const float ** deform, const float * v, XRenderData * rd, ResultIndexMap * rim, int colorID = -1)
void
buildSectionFacets(XModel * mdl, const XPlane * fp, vector<SegmentPoint> * sectionPoints)
XDocument * m_pDoc
视图数据所绑定的文档类
int m_iSearchType
搜索的对象类型
int m_iCurModuleIndex
当前Ribbon模块序号
int m_iViewMid
当前视图模型ID
XPicker * m_pPicker
选择器
ulong m_ulUpdateFlag
视图更新标志
ulong m_ulGLMode
openGL渲染模式
int m_iDisplayFilter
显示模式
int m_iSecondDisplayFilter
第二显示模式
int m_iAnimationSpeed
动画速度
int m_iAnimationMode
动画模式
int m_iCurFrameIndex
当前动画帧ID
int m_iViewAngleMode
视角模式
int m_iPickMethod
选择方法
bool m_bEnableRotate
是否支持旋转
bool m_bEnableSecond
知否支持显示第二模型
bool m_bLightOn
是否激活光照模式
real m_dViewAngle[3]
视角转动角度
real m_dViewBox[6]
三维视图视域盒
TMatrix44<float> m_fTrMatrix
三维视图变换矩阵
XMap * m_pMarkerMap
对象标记渲染数据映射器
int m_iContourDiv
云图色带数
int m_iContourScheme
云图色带方案
float m_fContourMax
云图最大值
float m_fContourMin
云图最小值
float m_fContourScale
云图值比例系数
bool m_bEnforceContourMaxMin
是否强制云图最大最小值
vector<const XItem*> * m_pLocalContourItems
局部云图对象数组
vector<const XGeometry*> * m_pLocalContourGeoms
局部云图几何数组
float m_fVectorScale
变形向量比例系数
int m_iVectorIndex[3]
向量数据序列号(用于后处理显示变形),默认为0,1,2
vector<XRenderData> m_arCmdData
功能运行过程中预览视图数据数组
vector<const XElement *> * m_pFragmentElems
实体单元数组
int m_iFragBoundaryCount
实体单元数组的边界单元个数
vector<const XRenderData *> * m_pTransformViewData
变形视图数据(用于前处理的变形预览)
vector<XShaderContext> m_pShaderContexts
着色器上下文数组
vector<ItemPtr> m_pSelectedItems
选择对象数组
XPlane m_ClipPlane[MAX_CLIP_PLANE_COUNT]
裁剪平面数组
int m_ClipPlaneCount
裁剪平面个数
XCurve m_Curve
曲线数据
XVisualAngle m_VisualAngle
视角数据
XViewData(XDocument * pDoc)
function: 构造函数
parameters:
[i]XDocument * pDoc: 文档对象
return value: 无
virtual void reset()
function: 重置视图数据
parameters: NULL
return value: 无
virtual void buildData()
function: 构建视图数据
parameters: NULL
return value: 无
void bindPicker(XPicker * picker)
function: 绑定选择器
parameters:
[i]XPicker * picker: 选择器
return value: 无
virtual void updateData(ulong update_flag)
function: 更新视图数据
parameters:
[i]ulong update_flag: 更新标志
return value: 无
virtual void clear()
function: 清空视图数据
parameters: NULL
return value: 无
const real * getViewBox()
function: 获取三维视图视域包围盒
parameters: NULL
return value: 三维视图视域包围盒
void setViewBox(const real * box)
function: 设置三维视图视域包围盒
parameters:
[i]const real * box: 三维视图视域包围盒
return value: 无
virtual void updateViewBox()
function: 更新三维视图视域包围盒
parameters: NULL
return value: 无
XDocument * getDocument()
function: 获取视图所属的文档对象
parameters: NULL
return value: 文档对象指针
virtual ~XViewData()
function: 析构函数
parameters: NULL
return value: 无
virtual void setRenderState(RenderStateTypeID type, void * value)
function: 设置渲染状态
parameters:
[i]RenderStateTypeID type: 渲染状态类型
[i] void * value: 状态参数
return value: 无
virtual void getRenderState(RenderStateTypeID type, void * value)
function: 获取渲染状态
parameters:
[i]RenderStateTypeID type: 渲染状态类型
[i] void * value: 状态参数值
return value: 无
void setSearchType(TypeID type)
function: 设置搜索对象类型
parameters:
[i]TypeID type: 对象类型
return value: 无
TypeID getSearchType() const
function: 获取搜索对象类型
parameters: NULL
return value: 搜索对象类型
void setCurrentModule(int i)
int getCurrentModule() const
ulong getRenderMode() const
function: 获取渲染模式
parameters: NULL
return value: 渲染模式
void setRenderMode(ulong m)
function: 设置渲染模式
parameters:
[i]ulong m: 渲染模式
return value: 无
bool checkRenderMode(ulong m)
void enableRenderMode(TypeID mode)
function: 激活渲染模式
parameters:
[i]TypeID mode: 渲染模式
return value: 无
void disableRenderMode(TypeID mode)
function: 使给定渲染模式失效
parameters:
[i]TypeID mode: 失效的渲染模式
return value: 无
TypeID getPickType() const
function: 获取拾取对象类型
parameters: NULL
return value: 拾取对象类型
void setPickType(TypeID tid)
function: 设置拾取对象类型
parameters:
[i]TypeID tid: 拾取对象类型
return value: 无
int getDisplayFilter() const
function: 获取显示模式
parameters: NULL
return value: 显示模式
void setDisplayFilter(int f)
function: 设置显示模式
parameters:
[i]int f: 显示模式
return value: 无
bool checkDisplayFilter(ulong m)
void enableDisplayFilter(TypeID mode)
function: 激活显示模式
parameters:
[i]TypeID mode: 显示模式
return value: 无
void disableDisplayFilter(TypeID mode)
function: 抑制给定显示模式
parameters:
[i]TypeID mode: 给定显示模式
return value: 无
ulong getEnityColor(const XGeometry * g)
function: 获取几何体颜色
parameters:
[i]const XGeometry * g: 几何体对象
return value: 几何体颜色
int getAnimationSpeed() const
function: 获取动画速度
parameters: NULL
return value: 动画速度
void setAnimationSpeed(int s)
function: 设置动画速度
parameters:
[i]int s: 动画速度
return value: 无
int getAnimationMode() const
function: 获取动画模式
parameters: NULL
return value: 动画模式
void setAnimationMode(int m)
function: 设置动画模式
parameters:
[i]int m: 动画模式
return value: 无
virtual int getAnimationFrameCount() const
function: 获取动画总帧数
parameters: NULL
return value: 动画总帧数
int getCurrentAnimationFrame() const
function: 获取当前动画帧序号
parameters: NULL
return value: 当前动画帧序号
void setCurrentAnimationFrame(int fid)
function: 设置当前动画帧序号
parameters:
[i]int fid: 当前动画帧序号
return value: 无
virtual void nextAnimationFrame()
function: 转到下一动画帧
parameters: NULL
return value: 无
virtual void prevAnimationFrame()
function: 转到上一动画帧
parameters: NULL
return value: 无
void resetAnimationFrame()
function: 重置动画帧
parameters: NULL
return value: 无
virtual void clearAnimationFrame()
function: 清空动画帧数据
parameters: NULL
return value: 无
virtual bool prepareAnimationData(int mode)
function: 准备动画帧数据
parameters:
[i]int mode: 动画模式
return value: 无
int getPickMethod() const
function: 获取拾取方法
parameters: NULL
return value: 拾取方法
void setPickMethod(int m)
function: 设置拾取方法
parameters:
[i]int m: 拾取方法
return value: 无
int getViewAngle(real * a = 0) const
function: 获取视角类型
parameters:
[i]real * a = 0: 存放视角角度,默认不获取角度
return value: 视角类型
void setViewAngle(int m, const real * a = 0)
function: 设置视角类型
parameters:
[i]int m: 视角类型
[i] const real * a = 0: 视角角度
return value: 无
ulong getUpdateFlag() const
function: 获取视图数据更新标志
parameters: NULL
return value: 数据更新标志
void resetUpdateFlag()
function: 重置视图数据更新标志
parameters: NULL
return value: 无
void showAll()
function: 显示所有对象
parameters: NULL
return value: 无
void hideItems(vector<XUniqueObjectID*> * items)
function: 隐藏指定对象
parameters:
[i]vector<XUniqueObjectID*> * items: 隐藏的对象数组
return value: 无
void showItems(vector<XUniqueObjectID*> * items)
function: 显示指定对象
parameters:
[i]vector<XUniqueObjectID*> * items: 显示的对象数组
return value: 无
void hideItems(vector<XUniqueObjectID> * items)
function: 隐藏指定对象
parameters:
[i]vector<XUniqueObjectID> * items: 隐藏的对象数组
return value: 无
void showItems(vector<XUniqueObjectID> * items)
function: 显示指定对象
parameters:
[i]vector<XUniqueObjectID> * items: 显示的对象数组
return value: 无
void showRelatedItems(vector<XUniqueObjectID*> * items)
function: 显示指定对象数组的相邻对象
parameters:
[i]vector<XUniqueObjectID*> * items: 指定对象数组
return value: 无
void setColorScheme(ColorScheme cs, uint8 r, uint8 g, uint8 b, uint8 a)
function: 设置颜色方案
parameters:
[i]ColorScheme cs: 颜色方案类型
[i] uint8 r: 颜色red分量
[i] uint8 g: 颜色green分量
[i] uint8 b: 颜色blue分量
[i] uint8 a: 颜色alpha分量
return value:
ulong getContourColor(real v, real maxLimit, real minLimit)
function: 获取云图颜色
parameters:
[i]real v: 云图值
[i] real maxLimit: 云图最大值
[i] real minLimit: 云图最小值
return value: 颜色RGBA值
const unsigned char * getColorScheme(ColorScheme ds)
function: 获取颜色方案字符串
parameters:
[i]ColorScheme ds: 颜色方案类型
return value: 颜色方案字符串
bool isRotateEnable()
void setRotateEnable(bool b)
function: 设置视图可旋转
parameters:
[i]bool b: 是否是否可旋转
return value: 无
const XPlane * getClipPlane(int idx = 0) const
function: 获取第idx个裁剪平面
parameters:
[i]int idx = 0: 裁剪平面序号
return value: 第idx个裁剪平面
void setLightState(bool b)
function: 设置是否激活光照模式
parameters:
[i]bool b: 光照是否激活
return value: 无
bool getLightState()
bool isContourEnable() const
float getContourMax()
function: 获取云图最大值
parameters: NULL
return value: 云图最大值
float getContourMin()
function: 获取云图最小值
parameters: NULL
return value: 云图最小值
float getContourScale()
function: 获取云图值比例系数
parameters: NULL
return value: 云图值比例系数
int getContourDiv()
function: 获取云图色带数
parameters: NULL
return value: 云图色带数
int getContourScheme()
function: 获取云图颜色方案
parameters: NULL
return value: 云图颜色方案类型
void setContourScheme(TypeID type)
function: 设置云图颜色方案
parameters:
[i]TypeID type: 云图颜色方案类型
return value: 无
void setContourScale(float s)
function: 设置云图值比例系数
parameters:
[i]float s: 云图值比例系数
return value: 无
void setContour(float fMax, float fMin, int div)
function: 设置云图
parameters:
[i]float fMax: 云图最大值
[i] float fMin: 云图最小值
[i] int div: 云图色带数
return value: 无
virtual const char * getContourLabel()
function: 获取云图标签字符串
parameters: NULL
return value: 云图标签字符串
void setContourMaxMinEnforced(bool b)
function: 设置是否强制云图极值
parameters:
[i]bool b: 是否强制云图极值
return value: 无
bool isContourMaxMinEnforced()
vector<const XGeometry*> * getLocalContourGeometry()
function: 获取局部云图几何对象数组
parameters: NULL
return value: 局部云图几何对象数组
vector<const XItem*> * getLocalContourItems()
function: 获取局部云图对象数组
parameters: NULL
return value: 局部云图对象数组
void setLocalContourItems(vector<const XItem*> * items)
function: 设置局部云图对象数组
parameters:
[i]vector<const XItem*> * items: 局部云图对象数组
return value: 无
void clearLocalContourItems()
function: 清空局部云图对象数组
parameters: NULL
return value: 无
void resetModelFaceContourData(XModel * mdl, float v = XREAL_MAX)
function: 重置模型的所有面云图数据
parameters:
[i]XModel * mdl: 模型对象
[i] float v = XREAL_MAX: 重置的默认面云图值
return value: 无
void updateLocalContourMaxMin()
function: 更新局部云图的极值
parameters: NULL
return value: 无
float getVectorScale()
function: 获取变形向量的比例系数
parameters: NULL
return value: 变形向量的比例系数
void setVectorScale(float v)
function: 设置变形向量的比例系数
parameters:
[i]float v: 变形向量的比例系数
return value: 无
void setVectorViewIndex(int i0, int i1, int i2)
function: 设置变形向量的分量序号
parameters:
[i]int i0: 第一个向量序号
[i] int i1: 第二个向量序号
[i] int i2: 第三个向量序号
return value: 无
int getVectorViewIndex(int i)
function: 获取变形向量的分量序号
parameters:
[i]int i: 分量
return value: 分量序号
void setClipPlane(const double * base, const double * normal, int idx = 0)
function: 设置裁剪平面
parameters:
[i]const double * base: 裁剪平面基点
[i] const double * normal: 裁剪平面法向
[i] int idx = 0: 裁剪平面序号
return value: 无
void getClipPlaneEquation(double *eqn, int idx = 0)
function: 获取裁剪平面方程
parameters:
[i]double *eqn: 方程系数数组(大小为4)
[i] int idx = 0: 裁剪平面序号
return value: 无
void setClipPlaneCount(int cnt)
function: 设置裁剪平面个数
parameters:
[i]int cnt: 裁剪平面个数
return value: 无
int getClipPlaneCount()
function: 获取裁剪平面个数
parameters: NULL
return value: 裁剪平面个数
void setClipPlane(const XPlane * fp, bool bUpdateViewData = true, int idx = 0)
function: 设置裁剪平面
parameters:
[i]const XPlane * fp: 平面对象
[i] bool bUpdateViewData = true: 是否更新视图
[i] int idx = 0: 裁剪平面序号
return value: 无
void resetClipPlane(const real * box, int idx = 0)
function: 重置裁剪平面
parameters:
[i]const real * box: 视图包围盒,用于计算裁剪平面的中心
[i] int idx = 0: 裁剪平面序号
return value: 无
virtual ulong updatePickedItemColor(const XUniqueObjectID * ue = NULL, UpdateItemColorMode updateMode = UpdateColor_UnpickItem)
vector<XRenderData> * getCmdRenderDataArray()
function: 获取功能预览视图数据数组
parameters: NULL
return value: 功能预览视图数据数组
XRenderData * getCmdRenderData(ulong cid)
void bindBuffer(XRenderData * r, int vBuf, int elBuf)
virtual int getVertexBufferSize(TypeID bufType, bool bSecond = false)
function: 获取顶点数组的大小
parameters:
[i]TypeID bufType: 顶点数组类型
[i] bool bSecond = false: 是否第二模型
return value: 顶点数组的大小
int getVertexBufferSize(XModel * mdl, TypeID bufType)
function: 获取模型顶点数组的大小
parameters:
[i]XModel * mdl: 模型对象
[i] TypeID bufType: 顶点数组类型
return value: 模型顶点数组的大小
virtual XBoundBox getBoundBoxOfItems(vector<ItemPtr> * items)
function: 获取指定对象的包围盒
parameters:
[i]vector<ItemPtr> * items: 指定数据对象数组
return value: 指定对象的包围盒
bool isMarkerAutoScale() const
bool isSecondEnable() const
void enableSecond(int showFlag)
function: 激活第二模型渲染模式
parameters:
[i]int showFlag: 第二模型的渲染模式
return value: 无
void disableSecond()
function: 抑制第二模型渲染
parameters: NULL
return value: 无
int getSecondDisplayFilter() const
function: 获取第二模型的显示模式
parameters: NULL
return value: 第二模型的显示模式
void updateResultToVFF(XModel * mdl, const XResult * rlt, const XResult * deformRlt, int comp, int cid, VertexFrameFile * vff)
function: 更新结果数据的顶点帧文件中
parameters:
[i]XModel * mdl: 模型对象
[i] const XResult * rlt: 结果对象
[i] const XResult * deformRlt: 变形结果对象
[i] int comp: 结果分量
[i] int cid: 参考坐标系
[i] VertexFrameFile * vff: 顶点帧文件
return value: 无
XCurve * getCurveData()
function: 获取视图的曲线数据
parameters: NULL
return value: 视图的曲线数据
virtual void updateCurveData(int updateFlag)
function: 更新曲线数据
parameters:
[i]int updateFlag: 更新标志
return value: 无
XVisualAngle * getVisualAngle()
function: 获取视角设置
parameters: NULL
return value: 视角设置
void getViewBoxByModel(XModel * mdl, bool bCheckInvisible, double * viewbox)
function: 获取模型对象的包围盒
parameters:
[i]XModel * mdl: 模型对象
[i] bool bCheckInvisible: 是否检查不可视对象
[i] double * viewbox: 视图包围盒
return value: 无
void updateConditionMarker(XModel * mdl, TypeID type, float scale)
function:
parameters: 更新条件的标记
[i]XModel * mdl: 模型对象
[i] TypeID type: 条件类型
[i] float scale: 缩放比例
return value: 无
virtual void initMarkerRenderData(TypeID type, XRenderData * rd)
function: 初始化标记渲染数据
parameters:
[i]TypeID type: 标记类型
[i] XRenderData * rd: 渲染数据结构体
return value: 无
XRenderData * getMarkerRenderData(TypeID type)
function: 获取标记渲染数据
parameters:
[i]TypeID type: 标记类型
return value: 渲染数据结构体
vector<const XRenderData *> * getTransformViewData()
function: 获取变形渲染数据数组
parameters: NULL
return value: 变形渲染数据数组
void setTransformViewData(vector<const XRenderData *> * geoms)
function: 设置变形渲染数据
parameters:
[i]vector<const XRenderData *> * geoms: 变形渲染数据数组
return value: 无
const float * getTransformMatrix() const
function: 获取变形视图变换矩阵
parameters: NULL
return value: 变形视图变换矩阵
void setTransformMatrix(const double * mat)
function: 设置变形视图变换矩阵
parameters:
[i]const double * mat: 变形视图变换矩阵
return value: 无
vector<const XElement *> * getFragmentElems()
function: 获取实体单元对象数组
parameters: NULL
return value: 实体单元对象数组
void setFragmentElems(vector<const XElement *> * els)
function: 设置实体单元对象数组
parameters:
[i]vector<const XElement *> * els: 实体单元对象数组
return value: 无
int getFragmentElemCount()
function: 获取实体单元对象个数
parameters: NULL
return value: 实体单元对象个数
void clearFragmentElems()
function: 清空实体单元对象数组
parameters: NULL
return value: 无
virtual const XRenderData * getFragmentViewData()
function: 获取实体单元对象渲染数据
parameters: NULL
return value: 实体单元对象渲染数据
virtual const XRenderData * getSectionViewData()
function: 获取截面视图数据
parameters: NULL
return value: 截面视图数据
virtual void updateShaderContextVar(const char * name)
function: 更新着色器上下文变量参数
parameters:
[i]const char * name: 着色器名字
return value: 无
XShaderContext * getShaderContext(const char * name)
function: 获取指定名字的着色器上下文
parameters:
[i]const char * name: 着色器名字
return value: 着色器上下文
void setShaderContext(const char * name, const char * vert, const char * frag)
function: 设置着色器上下文
parameters:
[i]const char * name: 着色器名字
[i] const char * vert: vert着色器程序文件名
[i] const char * frag: frag着色器程序文件名
return value:
void setShaderContextEnable(const char * name, bool bEnable)
function: 设置着色器是否可用
parameters:
[i]const char * name: 着色器名字
[i] bool bEnable: 可用设置true,否则设为false
return value: 无
void buildViewDataForNodes(XModel * mdl, XRenderData * rd)
function: 构建顶点的视图数据
parameters:
[i]XModel * mdl: 模型对象
[i] XRenderData * rd: 顶点的视图数据
return value: 无
void buildViewDataForElems(vector<const XElement *> * elems, XRenderData * rd, bool bEnableNormal = false)
function: 构建单元的视图数据
parameters:
[i]vector<const XElement *> * elems: 单元对象数组
[i] XRenderData * rd: 渲染数据结构体
[i] bool bEnableNormal = false: 是否构建法线数据
return value: 无
void buildViewDataForElemsWithIndex(vector<const XElement *> * els, XRenderData * rd, bool bEnableNormal)
function: 构建使用索引的单元视图数据
parameters:
[i]vector<const XElement *> * els: 单元对象数组
[i] XRenderData * rd: 渲染数据结构体
[i] bool bEnableNormal: 是否构建法线数据
return value: 无
void buildRenderDataForPickedElems(XRenderData * rd, bool bUseIndex = false)
function: 构建拾取单元的渲染数据
parameters:
[i]XRenderData * rd: 渲染数据结构体
[i] bool bUseIndex = false: 使用单元索引(ELEMENT INDEX),表示使用glDrawElements渲染,否则使用glDrawArray渲染
return value: 无
virtual void refresh()
function: 更新视图
parameters: NULL
return value: 无
XModel * getViewModel()
function: 获取视图模型对象
parameters: NULL
return value: 视图模型对象
void setViewModel(ulong mid)
function: 设置视图模型对象
parameters:
[i]ulong mid: 模型对象ID
return value: 无
void updateSectionRenderData(const XPlane * fp, vector<SegmentPoint> * sectionPoints, const float ** deform, const float * v, XRenderData * rd, ResultIndexMap * rim, int colorID = -1)
function: 更新截面视图数据
parameters:
[i]const XPlane * fp: 截平面
[i] vector<SegmentPoint> * sectionPoints: 截面交点数组(按三角片来组织)
[i] const float ** deform: 变形向量数组
[i] const float * v: 场数组
[i] XRenderData * rd: 渲染数据
[i] ResultIndexMap * rim: 结果编号索引
[i] int colorID = -1: 默认颜色值
return value: 无
void buildSectionFacets(XModel * mdl, const XPlane * fp, vector<SegmentPoint> * sectionPoints)
function: 构建截面三角片数据
parameters:
[i]XModel * mdl: 模型对象
[i] const XPlane * fp: 截平面
[i] vector<SegmentPoint> * sectionPoints: 三角片的顶点(交点)数组
return value: 无