1 // Copyright (C) 2007-2008 CEA/DEN, EDF R&D
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License.
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 // Lesser General Public License for more details.
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
19 #ifndef __SINGLE_ELEMENT_PLANAR_TESTS_HXX_
20 #define __SINGLE_ELEMENT_PLANAR_TESTS_HXX_
22 #include "InterpolationPlanarTestSuite.hxx"
27 * \brief Class testing algorithm by intersecting simple meshes having only one planar element each.
28 * This serves mainly to verify that the volume calculations between elements is correct.
31 class SingleElementPlanarTests : public InterpolationPlanarTestSuite
33 CPPUNIT_TEST_SUITE( SingleElementPlanarTests );
35 CPPUNIT_TEST( diamondsBasic );
36 CPPUNIT_TEST( tangentDiamonds );
37 CPPUNIT_TEST( tangentSquares );
38 CPPUNIT_TEST( diamondsSharingVertex1 );
39 CPPUNIT_TEST( identicalSquares );
40 CPPUNIT_TEST( squareAndDiamondBasic );
41 CPPUNIT_TEST( squareAndDiamondCritical );
42 CPPUNIT_TEST( diamondsCritical );
43 CPPUNIT_TEST( quadranglesCritical );
44 CPPUNIT_TEST( quadrangleAndDiamondCritical );
45 CPPUNIT_TEST( diamondsCritical2 );
46 CPPUNIT_TEST( hexagonsCritical1 );
47 CPPUNIT_TEST( hexagonsCritical2 );
48 CPPUNIT_TEST( squareAndQuadrangleCritical );
49 CPPUNIT_TEST( diamondsSharingVertex2 );
50 CPPUNIT_TEST( triangleAndDiamondCritical );
51 CPPUNIT_TEST( triangleAndSquareBasic );
52 CPPUNIT_TEST( trianglesCritical );
53 CPPUNIT_TEST( paralellogramsCritical1 );
54 CPPUNIT_TEST( paralellogramsCritical2 );
55 CPPUNIT_TEST( trianglesTangencyCritical );
56 CPPUNIT_TEST( trianglesTangencyCritical2 );
57 CPPUNIT_TEST( trianglesTangencyCritical3 );
58 CPPUNIT_TEST( trianglesTangencyCritical4 );
59 CPPUNIT_TEST( diamondsBasic_Triangulation );
60 CPPUNIT_TEST( tangentDiamonds_Triangulation );
61 CPPUNIT_TEST( tangentSquares_Triangulation );
62 CPPUNIT_TEST( diamondsSharingVertex1_Triangulation );
63 CPPUNIT_TEST( identicalSquares_Triangulation );
64 CPPUNIT_TEST( squareAndDiamondBasic_Triangulation );
65 CPPUNIT_TEST( squareAndDiamondCritical_Triangulation );
66 CPPUNIT_TEST( diamondsCritical_Triangulation );
67 CPPUNIT_TEST( quadranglesCritical_Triangulation );
68 CPPUNIT_TEST( quadrangleAndDiamondCritical_Triangulation );
69 CPPUNIT_TEST( diamondsCritical2_Triangulation );
70 CPPUNIT_TEST( hexagonsCritical1_Triangulation );
71 CPPUNIT_TEST( hexagonsCritical2_Triangulation );
72 CPPUNIT_TEST( squareAndQuadrangleCritical_Triangulation );
73 CPPUNIT_TEST( diamondsSharingVertex2_Triangulation );
74 CPPUNIT_TEST( triangleAndDiamondCritical_Triangulation );
75 CPPUNIT_TEST( triangleAndSquareBasic_Triangulation );
76 CPPUNIT_TEST( trianglesCritical_Triangulation );
77 CPPUNIT_TEST( paralellogramsCritical1_Triangulation );
78 CPPUNIT_TEST( paralellogramsCritical2_Triangulation );
79 CPPUNIT_TEST( trianglesTangencyCritical_Triangulation );
80 CPPUNIT_TEST( trianglesTangencyCritical2_Triangulation );
81 CPPUNIT_TEST( trianglesTangencyCritical3_Triangulation );
82 CPPUNIT_TEST( trianglesTangencyCritical4_Triangulation );
84 CPPUNIT_TEST_SUITE_END();
89 void tangentDiamonds();
90 void tangentSquares();
91 void diamondsSharingVertex1();
92 void identicalSquares();
93 void squareAndDiamondBasic();
94 void squareAndDiamondCritical();
95 void diamondsCritical();
96 void quadranglesCritical();
97 void quadrangleAndDiamondCritical();
98 void diamondsCritical2();
99 void hexagonsCritical1();
100 void hexagonsCritical2();
101 void squareAndQuadrangleCritical();
102 void diamondsSharingVertex2();
103 void triangleAndDiamondCritical();
104 void triangleAndSquareBasic();
105 void trianglesCritical();
106 void paralellogramsCritical1();
107 void paralellogramsCritical2();
108 void trianglesTangencyCritical();
109 void trianglesTangencyCritical2();
110 void trianglesTangencyCritical3();
111 void trianglesTangencyCritical4();
112 void diamondsBasic_Triangulation();
113 void tangentDiamonds_Triangulation();
114 void tangentSquares_Triangulation();
115 void diamondsSharingVertex1_Triangulation();
116 void identicalSquares_Triangulation();
117 void squareAndDiamondBasic_Triangulation();
118 void squareAndDiamondCritical_Triangulation();
119 void diamondsCritical_Triangulation();
120 void quadranglesCritical_Triangulation();
121 void quadrangleAndDiamondCritical_Triangulation();
122 void diamondsCritical2_Triangulation();
123 void hexagonsCritical1_Triangulation();
124 void hexagonsCritical2_Triangulation();
125 void squareAndQuadrangleCritical_Triangulation();
126 void diamondsSharingVertex2_Triangulation();
127 void triangleAndDiamondCritical_Triangulation();
128 void triangleAndSquareBasic_Triangulation();
129 void trianglesCritical_Triangulation();
130 void paralellogramsCritical1_Triangulation();
131 void paralellogramsCritical2_Triangulation();
132 void trianglesTangencyCritical_Triangulation();
133 void trianglesTangencyCritical2_Triangulation();
134 void trianglesTangencyCritical3_Triangulation();
135 void trianglesTangencyCritical4_Triangulation();