56 Node one (1., 0., 0., 1);
57 Node two (0., 1., 0., 2);
58 Node three (0., 0., 1., 3);
60 std::unique_ptr<Elem> elem = Elem::build(
TET4);
61 elem->set_node(0) = &
zero;
62 elem->set_node(1) = &one;
63 elem->set_node(2) = &two;
64 elem->set_node(3) = &three;
67 CPPUNIT_ASSERT (elem->contains_point(elem->centroid()));
70 CPPUNIT_ASSERT (elem->contains_point(
zero));
71 CPPUNIT_ASSERT (elem->contains_point(one));
72 CPPUNIT_ASSERT (elem->contains_point(two));
73 CPPUNIT_ASSERT (elem->contains_point(three));
76 CPPUNIT_ASSERT (!elem->contains_point(
Point(.34, .34, .34)));
77 CPPUNIT_ASSERT (!elem->contains_point(
Point(.33, .33, -.1)));
78 CPPUNIT_ASSERT (!elem->contains_point(
Point(0., -.1, .5)));
89 Node one (epsilon, 0., 0., 1);
90 Node two (0., epsilon, 0., 2);
91 Node three (0., 0., 1., 3);
93 std::unique_ptr<Elem> elem = Elem::build(
TET4);
94 elem->set_node(0) = &
zero;
95 elem->set_node(1) = &one;
96 elem->set_node(2) = &two;
97 elem->set_node(3) = &three;
100 CPPUNIT_ASSERT (elem->contains_point(elem->centroid()));
103 CPPUNIT_ASSERT (elem->contains_point(
zero));
104 CPPUNIT_ASSERT (elem->contains_point(one));
105 CPPUNIT_ASSERT (elem->contains_point(two));
106 CPPUNIT_ASSERT (elem->contains_point(three));
109 CPPUNIT_ASSERT (elem->contains_point(
Point(epsilon/2, 0, 0.5)));
112 CPPUNIT_ASSERT (!elem->contains_point(
Point(epsilon, epsilon, epsilon/2)));
113 CPPUNIT_ASSERT (!elem->contains_point(
Point(epsilon/10, epsilon/10, 1.0)));
114 CPPUNIT_ASSERT (!elem->contains_point(
Point(epsilon/2, -epsilon/10, 0.5)));