当前位置: 首页>>代码示例>>C++>>正文


C++ SurfaceMesh::Display_Nonmanifold_HalfFacets方法代码示例

本文整理汇总了C++中SurfaceMesh::Display_Nonmanifold_HalfFacets方法的典型用法代码示例。如果您正苦于以下问题:C++ SurfaceMesh::Display_Nonmanifold_HalfFacets方法的具体用法?C++ SurfaceMesh::Display_Nonmanifold_HalfFacets怎么用?C++ SurfaceMesh::Display_Nonmanifold_HalfFacets使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SurfaceMesh的用法示例。


在下文中一共展示了SurfaceMesh::Display_Nonmanifold_HalfFacets方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: main


//.........这里部分代码省略.........

    // check attached half-facets against reference data
    HalfFacetType attached_REF[4];
    attached_REF[0].Set(1,1);
    attached_REF[1].Set(2,2);
    attached_REF[2].Set(3,0);
    attached_REF[3].Set(0,0);
    std::vector<HalfFacetType> attached;
    TM.Get_HalfFacets_Attached_To_HalfFacet(TEST_attached, attached);
    for (unsigned int jj = 0; jj < attached.size(); ++jj)
        if (!attached[jj].Equal(attached_REF[jj]))
        {
            cout << "HalfFacet attachment data is incorrect!" << endl;
            OUTPUT_CODE = 7;
            break;
        }

    // check that half-facet has no neighbor
    TEST_attached.Set(4,2);
    TM.Get_HalfFacets_Attached_To_HalfFacet(TEST_attached, attached);
    if (attached.size()!=1)
    {
        cout << "HalfFacet attachment data is incorrect!" << endl;
        OUTPUT_CODE = 8;
    }
    else if (!TEST_attached.Equal(attached[0]))
    {
        cout << "HalfFacet attachment should only include the initial given half-facet..." << endl;
        cout << "          but it does not!" << endl;
        OUTPUT_CODE = 9;
    }

    // display non-manifold facets (edges)
    TM.Display_Nonmanifold_HalfFacets();
    cout << endl;

    // check non-manifold facets (edges) against reference data
    HalfFacetType non_manifold_hf_REF[2];
    non_manifold_hf_REF[0].Set(3,0);
    non_manifold_hf_REF[1].Set(6,0);
    std::vector<HalfFacetType> non_manifold_hf;
    TM.Get_Nonmanifold_HalfFacets(non_manifold_hf);
    for (unsigned int jj = 0; jj < non_manifold_hf.size(); ++jj)
        if (!non_manifold_hf[jj].Equal(non_manifold_hf_REF[jj]))
        {
            cout << "Non-manifold facet data is incorrect!" << endl;
            OUTPUT_CODE = 10;
            break;
        }

    // display non-manifold vertices
    TM.Display_Nonmanifold_Vertices();
    cout << endl;

    // check non-manifold vertices against reference data
    const VtxIndType non_manifold_vtx_REF[1] = {5};
    std::vector<VtxIndType> non_manifold_vtx;
    TM.Get_Nonmanifold_Vertices(non_manifold_vtx);
    for (unsigned int jj = 0; jj < non_manifold_vtx.size(); ++jj)
        if (non_manifold_vtx[jj]!=non_manifold_vtx_REF[jj])
        {
            cout << "Non-manifold vertex data is incorrect!" << endl;
            OUTPUT_CODE = 11;
            break;
        }
开发者ID:walkersw,项目名称:AHF,代码行数:66,代码来源:test_2d_non_manifold_2.cpp


注:本文中的SurfaceMesh::Display_Nonmanifold_HalfFacets方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。