[分享][原创]V8i下用代码实现Mesh from Points的功能

[转载Bentley中文知识库原贴] MicroStation迷:MicroStation V8XM/V8i下有个很"酷"的功能:根据一大堆点生成一个Mesh曲面。该功能对应的API函数在V8i SDK中才公布。如下为使用代码样例:
Private void createMeshFromPoints (void)
{
if (!mdlSelect_isActive ())
{
mdlDialog_openAlert ("您需要先用选择集选中一大堆点!");
return;
}
MSElement el;
ElementRef elRef;
DgnModelRefP modelRef;
int numPnts = mdlSelect_numSelected();
DPoint3d *pts = reinterpret_cast(_alloca(numPnts*sizeof(DPoint3d)));
DPoint3d ends[100];
for (int i=0; i {
mdlSelect_getElement (i, &elRef, &modelRef);
elementRef_getElement (elRef, &el, elementRef_getElemSize(elRef));
mdlLinear_extract (ends, NULL, &el, modelRef);
pts[i] = ends[0];
}
MSElementDescrP pEd = NULL;
if (ERROR == mdlMesh_newPolyfaceFromXYTriangulation (&pEd, pts, numPnts))
{
mdlDialog_openAlert ("构造Mesh曲面时出错!");
return;
}
mdlElmdscr_add (pEd);
mdlElmdscr_freeAll (&pEd);
}
生成的图形如下:
Parents
  • [转载Bentley中文知识库原贴] 快乐小乞丐:这个功能所产生的数据和地理信息中的DEM很相似,也就是不规则三角网,将地面上高程三维数据构成格网,用来表示地表的起伏状况,DEM数据是一种最基础的地理信息数据,可以用来进行通视分析、坡度分析、淹没分析和土方量分析,是一种非常有用的数据。

     

    [转载Bentley中文知识库原贴] geotri:能不能不生成Mesh,只用来某点的求值(已知XY坐标,求Z坐标值)?

     

    [转载Bentley中文知识库原贴] MicroStation迷:没有Mesh那你有的是什么?B-Spline Surface ?

     

    [转载Bentley中文知识库原贴] zybms:在 MicroStation V8XM/V8i 下可用 mdlMesh_newPolyfaceFromXYTriangulation 生成三角网,确实很方便,那么在v82004下,借助mesh函数实现三角网了?

     

    [转载Bentley中文知识库原贴] MicroStation迷:很遗憾,V8-2004下没有这个函数。

     

    [转载Bentley中文知识库原贴] swp160108:在v82004下要用geopak 。


    This is a test

Reply
  • [转载Bentley中文知识库原贴] 快乐小乞丐:这个功能所产生的数据和地理信息中的DEM很相似,也就是不规则三角网,将地面上高程三维数据构成格网,用来表示地表的起伏状况,DEM数据是一种最基础的地理信息数据,可以用来进行通视分析、坡度分析、淹没分析和土方量分析,是一种非常有用的数据。

     

    [转载Bentley中文知识库原贴] geotri:能不能不生成Mesh,只用来某点的求值(已知XY坐标,求Z坐标值)?

     

    [转载Bentley中文知识库原贴] MicroStation迷:没有Mesh那你有的是什么?B-Spline Surface ?

     

    [转载Bentley中文知识库原贴] zybms:在 MicroStation V8XM/V8i 下可用 mdlMesh_newPolyfaceFromXYTriangulation 生成三角网,确实很方便,那么在v82004下,借助mesh函数实现三角网了?

     

    [转载Bentley中文知识库原贴] MicroStation迷:很遗憾,V8-2004下没有这个函数。

     

    [转载Bentley中文知识库原贴] swp160108:在v82004下要用geopak 。


    This is a test

Children
No Data