几何尺寸与公差论坛

 找回密码
 注册
查看: 3636|回复: 0

How to set the parameters of Tessellate face?

[复制链接]
发表于 2006-12-7 16:14:42 | 显示全部楼层 |阅读模式
HRESULT                         hr = S_OK;
        CComPtr <IBody2>                pBody;
        CComPtr <IEnumFaces2>           pEnumFaces;
        CComPtr <IFace2>                pFace;
        long                            nFetchedBodies = -1;
        long                            nFetchedFaces = -1;
        long                            nNumTessTriang = -1;
        float*                          pTessTriang = NULL;
        long                            i = 0;
    bool                   bResult = false;
        hr = pEnumBody->Reset();
        hr = pEnumBody->Next(1, &pBody, &nFetchedBodies);
        while (nFetchedBodies > 0)
            {
            hr = pBody->EnumFaces(&pEnumFaces);
          //   _ASSERT(pEnumFaces);
            // set colour to blue
            AutoColor               Color(0, 0, 128);
            // set line width to 1 pixel
            AutoLineWidth           LineWidth(1.0);
            // get the first face
            hr = pEnumFaces->Reset();
            hr = pEnumFaces->Next(1, &pFace, &nFetchedFaces);
            while (nFetchedFaces > 0)
                {
                // get display tessellation for this face
                hr = pFace->GetTessTriangleCount(&nNumTessTriang);
                _ASSERT(nNumTessTriang > 0);

                pTessTriang = new float[9 * sizeof(float) * nNumTessTriang];
                _ASSERT(pTessTriang);

                ZeroMemory(pTessTriang, 9 * sizeof(float) * nNumTessTriang);

                hr = pFace->IGetTessTriangles(VARIANT_TRUE, pTessTriang);
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|几何尺寸与公差论坛

GMT+8, 2024-5-28 02:03 , Processed in 0.033849 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表