67 {
68 LOG_UNIT_TEST;
69
70
71 {
73 Node one (1., 0., 0., 1);
74 Node two (0., 1., 0., 2);
75 Node three (0., 0., 1., 3);
76
78 elem->set_node(0, &
zero);
79 elem->set_node(1, &one);
80 elem->set_node(2, &two);
81 elem->set_node(3, &three);
82
83
84 CPPUNIT_ASSERT (elem->contains_point(elem->vertex_average()));
85
86
87 CPPUNIT_ASSERT (elem->contains_point(
zero));
88 CPPUNIT_ASSERT (elem->contains_point(one));
89 CPPUNIT_ASSERT (elem->contains_point(two));
90 CPPUNIT_ASSERT (elem->contains_point(three));
91
92
93 CPPUNIT_ASSERT (!elem->contains_point(
Point(.34, .34, .34)));
94 CPPUNIT_ASSERT (!elem->contains_point(
Point(.33, .33, -.1)));
95 CPPUNIT_ASSERT (!elem->contains_point(
Point(0., -.1, .5)));
96 }
97
98
99
100
101
102 {
103 Real epsilon = 1.e-4;
104
106 Node one (epsilon, 0., 0., 1);
107 Node two (0., epsilon, 0., 2);
108 Node three (0., 0., 1., 3);
109
111 elem->set_node(0, &
zero);
112 elem->set_node(1, &one);
113 elem->set_node(2, &two);
114 elem->set_node(3, &three);
115
116
117 CPPUNIT_ASSERT (elem->contains_point(elem->vertex_average()));
118
119
120 CPPUNIT_ASSERT (elem->contains_point(
zero));
121 CPPUNIT_ASSERT (elem->contains_point(one));
122 CPPUNIT_ASSERT (elem->contains_point(two));
123 CPPUNIT_ASSERT (elem->contains_point(three));
124
125
126 CPPUNIT_ASSERT (elem->contains_point(
Point(epsilon/2, 0, 0.5)));
127
128
129 CPPUNIT_ASSERT (!elem->contains_point(
Point(epsilon, epsilon, epsilon/2)));
130 CPPUNIT_ASSERT (!elem->contains_point(
Point(epsilon/10, epsilon/10, 1.0)));
131 CPPUNIT_ASSERT (!elem->contains_point(
Point(epsilon/2, -epsilon/10, 0.5)));
132 }
133 }