@@ -42,46 +42,48 @@ using namespace SCIRun::Core::Algorithms::Fields;
4242using namespace SCIRun ::TestUtils;
4343
4444
45- FieldHandle SphereSignedDistanceField (bool negative)
45+ FieldHandle BoxSignedDistanceField (bool negative)
4646 {
4747
4848 FieldInformation f (" LatVolMesh" , 1 , " float" );
49- size_type size = 5 ;
50- Point minb (-2 .0 , -2 .0 , -2 .0 );
51- Point maxb (2 .0 , 2 .0 , 2 .0 );
49+ size_type size = 3 ;
50+ Point minb (-1 .0 , -1 .0 , -1 .0 );
51+ Point maxb (1 .0 , 1 .0 , 1 .0 );
5252 MeshHandle omesh = CreateMesh (f, size, size, size, minb, maxb);
5353 FieldHandle ofield = CreateField (f,omesh);
54- std::vector<double > values (125 );
55- values[0 ]=0.9641 ;values[1 ]=0.5 ;values[2 ]=0.32843 ;values[3 ]=0.5 ;values[4 ]=0.9641 ;values[5 ]=0.5 ;
56- values[6 ]=-0.05051 ;values[7 ]=-0.26393 ;values[8 ]=-0.05051 ;values[9 ]=0.5 ;values[10 ]=0.32843 ;
57- values[11 ]=-0.26393 ;values[12 ]=-0.5 ;values[13 ]=-0.26393 ;values[14 ]=0.32843 ;values[15 ]=0.5 ;
58- values[16 ]=-0.05051 ;values[17 ]=-0.26393 ;values[18 ]=-0.05051 ;values[19 ]=0.5 ;values[20 ]=0.9641 ;
59- values[21 ]=0.5 ;values[22 ]=0.32843 ;values[23 ]=0.5 ;values[24 ]=0.9641 ;values[25 ]=0.5 ;
60- values[26 ]=-0.05051 ;values[27 ]=-0.26393 ;values[28 ]=-0.05051 ;values[29 ]=0.5 ;
61- values[30 ]=-0.05051 ;values[31 ]=-0.76795 ;values[32 ]=-1.0858 ;values[33 ]=-0.76795 ;
62- values[34 ]=-0.05051 ;values[35 ]=-0.26393 ;values[36 ]=-1.0858 ;values[37 ]=-1.5 ;
63- values[38 ]=-1.0858 ;values[39 ]=-0.26393 ;values[40 ]=-0.05051 ;values[41 ]=-0.76795 ;
64- values[42 ]=-1.0858 ;values[43 ]=-0.76795 ;values[44 ]=-0.05051 ;values[45 ]=0.5 ;values[46 ]=-0.05051 ;
65- values[47 ]=-0.26393 ;values[48 ]=-0.05051 ;values[49 ]=0.5 ;values[50 ]=0.32843 ;values[51 ]=-0.26393 ;
66- values[52 ]=-0.5 ;values[53 ]=-0.26393 ;values[54 ]=0.32843 ;values[55 ]=-0.26393 ;values[56 ]=-1.0858 ;
67- values[57 ]=-1.5 ;values[58 ]=-1.0858 ;values[59 ]=-0.26393 ;values[60 ]=-0.5 ;values[61 ]=-1.5 ;
68- values[62 ]=-2.5 ;values[63 ]=-1.5 ;values[64 ]=-0.5 ;values[65 ]=-0.26393 ;values[66 ]=-1.0858 ;
69- values[67 ]=-1.5 ;values[68 ]=-1.0858 ;values[69 ]=-0.26393 ;values[70 ]=0.32843 ;values[71 ]=-0.26393 ;
70- values[72 ]=-0.5 ;values[73 ]=-0.26393 ;values[74 ]=0.32843 ;values[75 ]=0.5 ;values[76 ]=-0.05051 ;
71- values[77 ]=-0.26393 ;values[78 ]=-0.05051 ;values[79 ]=0.5 ;values[80 ]=-0.05051 ;values[81 ]=-0.76795 ;
72- values[82 ]=-1.0858 ;values[83 ]=-0.76795 ;values[84 ]=-0.05051 ;values[85 ]=-0.26393 ;values[86 ]=-1.0858 ;
73- values[87 ]=-1.5 ;values[88 ]=-1.0858 ;values[89 ]=-0.26393 ;values[90 ]=-0.05051 ;values[91 ]=-0.76795 ;
74- values[92 ]=-1.0858 ;values[93 ]=-0.76795 ;values[94 ]=-0.05051 ;values[95 ]=0.5 ;values[96 ]=-0.05051 ;
75- values[97 ]=-0.26393 ;values[98 ]=-0.05051 ;values[99 ]=0.5 ;values[100 ]=0.9641 ;values[101 ]=0.5 ;
76- values[102 ]=0.32843 ;values[103 ]=0.5 ;values[104 ]=0.9641 ;values[105 ]=0.5 ;values[106 ]=-0.05051 ;
77- values[107 ]=-0.26393 ;values[108 ]=-0.05051 ;values[109 ]=0.5 ;values[110 ]=0.32843 ;values[111 ]=-0.26393 ;
78- values[112 ]=-0.5 ;values[113 ]=-0.26393 ;values[114 ]=0.32843 ;values[115 ]=0.5 ;values[116 ]=-0.05051 ;
79- values[117 ]=-0.26393 ;values[118 ]=-0.05051 ;values[119 ]=0.5 ;values[120 ]=0.9641 ;values[121 ]=0.5 ;
80- values[122 ]=0.32843 ;values[123 ]=0.5 ;values[124 ]=0.9641 ;
54+ std::vector<double > values (27 );
55+
56+ values[0 ]=-1.73205077648162841796875 ;
57+ values[1 ]=-1.41421353816986083984375 ;
58+ values[2 ]=-1.73205077648162841796875 ;
59+ values[3 ]=-1.41421353816986083984375 ;
60+ values[4 ]=-1 ;
61+ values[5 ]=-1.41421353816986083984375 ;
62+ values[6 ]=-1.73205077648162841796875 ;
63+ values[7 ]=-1.41421353816986083984375 ;
64+ values[8 ]=-1.73205077648162841796875 ;
65+ values[9 ]=-1.41421353816986083984375 ;
66+ values[10 ]=-1 ;
67+ values[11 ]=-1.41421353816986083984375 ;
68+ values[12 ]=-1 ;
69+ values[13 ]=0 ;
70+ values[14 ]=-1 ;
71+ values[15 ]=-1.41421353816986083984375 ;
72+ values[16 ]=-1 ;
73+ values[17 ]=-1.41421353816986083984375 ;
74+ values[18 ]=-1.73205077648162841796875 ;
75+ values[19 ]=-1.41421353816986083984375 ;
76+ values[20 ]=-1.73205077648162841796875 ;
77+ values[21 ]=-1.41421353816986083984375 ;
78+ values[22 ]=-1 ;
79+ values[23 ]=-1.41421353816986083984375 ;
80+ values[24 ]=-1.73205077648162841796875 ;
81+ values[25 ]=-1.41421353816986083984375 ;
82+ values[26 ]=-1.73205077648162841796875 ;
8183
8284 if (negative)
8385 {
84- for (int i=0 ;i<125 ;i++)
86+ for (int i=0 ;i<27 ;i++)
8587 {
8688 values[i]=-values[i];
8789 }
@@ -95,16 +97,19 @@ using namespace SCIRun::TestUtils;
9597TEST (CleaverInterfaceTest, SphereSignedDistanceFieldMatrix1)
9698{
9799 InterfaceWithCleaverAlgorithm algo;
98- FAIL () << " todo" ;
99100
100- /* auto info = algo.run(SphereSignedDistanceField(false),SphereSignedDistanceField(true));
101+ std::vector<FieldHandle> inputs;
102+ inputs.push_back (BoxSignedDistanceField (true ));
103+ inputs.push_back (BoxSignedDistanceField (false ));
104+
105+ auto info = algo.run (inputs);
101106
102- std::cout << "Number of mesh elements: " << info->vmesh()->num_elems() << std::endl;
103- std::cout << "Number of mesh nodes: " << info->vmesh()->num_nodes() << std::endl;
104- std::cout << "Number of mesh values: " << info->vfield()->num_values() << std::endl;
107+ std::cout << " Number of mesh elements: " << info->vmesh ()->num_elems () << std::endl;
108+ std::cout << " Number of mesh nodes: " << info->vmesh ()->num_nodes () << std::endl;
109+ std::cout << " Number of mesh values: " << info->vfield ()->num_values () << std::endl;
105110
106- ASSERT_TRUE(info->vmesh()->num_elems() != 98650 );
107- ASSERT_TRUE(info->vmesh()->num_nodes() != 18367 );
108- ASSERT_TRUE(info->vfield()->num_values() != 98650 );
109- */
111+ ASSERT_TRUE (info->vmesh ()->num_elems () == 4326 );
112+ ASSERT_TRUE (info->vmesh ()->num_nodes () == 908 );
113+ ASSERT_TRUE (info->vfield ()->num_values () == 4326 );
114+
110115}
0 commit comments