MCPcopy Create free account
hub / github.com/MeshInspector/MeshLib / TEST

Function TEST

source/MRTest/MRMeshComponentsTests.cpp:10–45  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

8{
9
10TEST(MRMesh, getAllComponentsEdges)
11{
12 Triangulation t{
13 { 0_v, 1_v, 2_v },
14 { 0_v, 2_v, 3_v }
15 };
16 Mesh mesh;
17 mesh.topology = MeshBuilder::fromTriangles( t );
18 mesh.points.emplace_back( 0.f, 0.f, 0.f );
19 mesh.points.emplace_back( 1.f, 0.f, 0.f );
20 mesh.points.emplace_back( 1.f, 1.f, 0.f );
21 mesh.points.emplace_back( 0.f, 1.f, 0.f );
22
23 EdgeId e12 = mesh.topology.findEdge( 1_v, 2_v );
24 EdgeId e30 = mesh.topology.findEdge( 3_v, 0_v );
25
26 EdgeBitSet ebs( 10 );
27 ebs.set( e12 );
28 ebs.set( e30 );
29 auto comp = MeshComponents::getAllComponentsEdges( mesh, ebs );
30 ASSERT_EQ( comp.size(), 2 );
31 ASSERT_EQ( comp[0].count(), 1 );
32 ASSERT_EQ( comp[1].count(), 1 );
33
34 ebs.set( e12.sym() );
35 ebs.set( e30.sym() );
36 comp = MeshComponents::getAllComponentsEdges( mesh, ebs );
37 ASSERT_EQ( comp.size(), 2 );
38 ASSERT_EQ( comp[0].count(), 2 );
39 ASSERT_EQ( comp[1].count(), 2 );
40
41 ebs.set( mesh.topology.findEdge( 0_v, 1_v ) );
42 comp = MeshComponents::getAllComponentsEdges( mesh, ebs );
43 ASSERT_EQ( comp.size(), 1 );
44 ASSERT_EQ( comp[0].count(), 5 );
45}
46
47TEST(MRMesh, getLargestComponentVerts)
48{

Callers

nothing calls this directly

Calls 10

fromTrianglesFunction · 0.85
getAllComponentsEdgesFunction · 0.85
makeCubeFunction · 0.85
getLargestComponentVertsFunction · 0.85
countMethod · 0.80
findEdgeMethod · 0.45
setMethod · 0.45
sizeMethod · 0.45
symMethod · 0.45
testMethod · 0.45

Tested by

no test coverage detected