Salome HOME
Merge remote-tracking branch 'origin/CEA_2019_TranslationToFrench' into CEA_2019
[modules/shaper.git] / src / FeaturesPlugin / CMakeLists.txt
1 # Copyright (C) 2014-2019  CEA/DEN, EDF R&D
2 #
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, or (at your option) any later version.
7 #
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.
12 #
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
16 #
17 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 #
19
20 INCLUDE(Common)
21 INCLUDE(UnitTest)
22
23 SET(PROJECT_HEADERS
24     FeaturesPlugin.h
25     FeaturesPlugin_Plugin.h
26     FeaturesPlugin_Extrusion.h
27     FeaturesPlugin_Recover.h
28     FeaturesPlugin_Revolution.h
29     FeaturesPlugin_Rotation.h
30     FeaturesPlugin_Translation.h
31     FeaturesPlugin_VersionedBoolean.h
32     FeaturesPlugin_Boolean.h
33     FeaturesPlugin_BooleanCut.h
34     FeaturesPlugin_BooleanFuse.h
35     FeaturesPlugin_BooleanCommon.h
36     FeaturesPlugin_BooleanSmash.h
37     FeaturesPlugin_BooleanFill.h
38     FeaturesPlugin_Intersection.h
39     FeaturesPlugin_Partition.h
40     FeaturesPlugin_Pipe.h
41     FeaturesPlugin_Placement.h
42     FeaturesPlugin_CompositeBoolean.h
43     FeaturesPlugin_CompositeSketch.h
44     FeaturesPlugin_ExtrusionBoolean.h
45     FeaturesPlugin_ExtrusionCut.h
46     FeaturesPlugin_ExtrusionFuse.h
47     FeaturesPlugin_RevolutionBoolean.h
48     FeaturesPlugin_RevolutionCut.h
49     FeaturesPlugin_RevolutionFuse.h
50     FeaturesPlugin_Union.h
51     FeaturesPlugin_ValidatorTransform.h
52     FeaturesPlugin_Validators.h
53     FeaturesPlugin_RemoveSubShapes.h
54     FeaturesPlugin_Tools.h
55     FeaturesPlugin_Symmetry.h
56     FeaturesPlugin_Scale.h
57     FeaturesPlugin_MultiTranslation.h
58     FeaturesPlugin_MultiRotation.h
59     FeaturesPlugin_Fillet.h
60     FeaturesPlugin_Measurement.h
61     FeaturesPlugin_FusionFaces.h
62     FeaturesPlugin_RemoveResults.h
63 )
64
65 SET(PROJECT_SOURCES
66     FeaturesPlugin_Plugin.cpp
67     FeaturesPlugin_Extrusion.cpp
68     FeaturesPlugin_Recover.cpp
69     FeaturesPlugin_Revolution.cpp
70     FeaturesPlugin_Rotation.cpp
71     FeaturesPlugin_Translation.cpp
72     FeaturesPlugin_VersionedBoolean.cpp
73     FeaturesPlugin_Boolean.cpp
74     FeaturesPlugin_BooleanCut.cpp
75     FeaturesPlugin_BooleanFuse.cpp
76     FeaturesPlugin_BooleanCommon.cpp
77     FeaturesPlugin_BooleanSmash.cpp
78     FeaturesPlugin_BooleanFill.cpp
79     FeaturesPlugin_Intersection.cpp
80     FeaturesPlugin_Partition.cpp
81     FeaturesPlugin_Pipe.cpp
82     FeaturesPlugin_Placement.cpp
83     FeaturesPlugin_CompositeBoolean.cpp
84     FeaturesPlugin_CompositeSketch.cpp
85     FeaturesPlugin_ExtrusionBoolean.cpp
86     FeaturesPlugin_ExtrusionCut.cpp
87     FeaturesPlugin_ExtrusionFuse.cpp
88     FeaturesPlugin_RevolutionBoolean.cpp
89     FeaturesPlugin_RevolutionCut.cpp
90     FeaturesPlugin_RevolutionFuse.cpp
91     FeaturesPlugin_Union.cpp
92     FeaturesPlugin_ValidatorTransform.cpp
93     FeaturesPlugin_Validators.cpp
94     FeaturesPlugin_RemoveSubShapes.cpp
95     FeaturesPlugin_Tools.cpp
96     FeaturesPlugin_Symmetry.cpp
97     FeaturesPlugin_Scale.cpp
98     FeaturesPlugin_MultiTranslation.cpp
99     FeaturesPlugin_MultiRotation.cpp
100     FeaturesPlugin_Fillet.cpp
101     FeaturesPlugin_Measurement.cpp
102     FeaturesPlugin_FusionFaces.cpp
103     FeaturesPlugin_RemoveResults.cpp
104 )
105
106 SET(XML_RESOURCES
107   plugin-Features.xml
108   extrusion_widget.xml
109   extrusioncut_widget.xml
110   extrusionfuse_widget.xml
111   revolution_widget.xml
112   revolutioncut_widget.xml
113   revolutionfuse_widget.xml
114   rotation_widget.xml
115   translation_widget.xml
116   boolean_widget.xml
117   boolean_fuse_widget.xml
118   boolean_common_widget.xml
119   boolean_split_widget.xml
120   boolean_smash_widget.xml
121   recover_widget.xml
122   partition_widget.xml
123   placement_widget.xml
124   intersection_widget.xml
125   pipe_widget.xml
126   remove_subshapes_widget.xml
127   union_widget.xml
128   symmetry_widget.xml
129   scale_widget.xml
130   multitranslation_widget.xml
131   multirotation_widget.xml
132   fillet_widget.xml
133   measurement_widget.xml
134   fusion_faces_widget.xml
135 )
136
137 SET(TEXT_RESOURCES
138     FeaturesPlugin_msg_en.ts
139     FeaturesPlugin_msg_fr.ts
140     FeaturesPlugin_msg_ru.ts
141 )
142
143 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES})
144
145
146 INCLUDE_DIRECTORIES(
147   ../ModelAPI
148   ../GeomAPI
149   ../GeomAlgoAPI
150   ../GeomValidators
151   ../Events
152   ../Config
153   ${OpenCASCADE_INCLUDE_DIR}
154 )
155
156 SET(PROJECT_LIBRARIES
157     Events
158     ModelAPI
159     GeomAPI
160     GeomAlgoAPI
161     GeomValidators
162     Config
163     ${OpenCASCADE_Visualization_LIBRARIES}
164 )
165
166 ADD_DEFINITIONS(-DFEATURESPLUGIN_EXPORTS)
167 ADD_LIBRARY(FeaturesPlugin MODULE ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES} ${TEXT_RESOURCES})
168 TARGET_LINK_LIBRARIES(FeaturesPlugin ${PROJECT_LIBRARIES})
169
170 INSTALL(TARGETS FeaturesPlugin DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
171 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
172 INSTALL(DIRECTORY icons/ DESTINATION ${SHAPER_INSTALL_XML_RESOURCES}/icons/Features)
173 INSTALL(FILES ${TEXT_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
174
175 ADD_UNIT_TESTS(TestExtrusion.py
176                TestExtrusionOfCompound.py
177                TestExtrusionCut.py
178                TestExtrusionCut_BySize.py
179                TestExtrusionCut_ByPlanesAndOffsets.py
180                TestExtrusionCut_ByFaces.py
181                TestExtrusionFuse.py
182                TestExtrusionFuse_BySize.py
183                TestExtrusionFuse_ByPlanesAndOffsets.py
184                TestExtrusion_ErrorMsg.py
185                TestExtrusion_ZeroOffsetError.py
186                TestExtrusion_ByFaces01.py
187                TestExtrusion_ByFaces02.py
188                TestExtrusion_ByFaces03.py
189                TestExtrusion_ByFaces04.py
190                TestExtrusion_ByFaces05.py
191                TestExtrusion_ByFaces06.py
192                TestExtrusion_ByFaces07.py
193                TestExtrusion_ByFaces08.py
194                TestExtrusion_ByFaces09.py
195                TestExtrusion_ByFaces10.py
196                TestExtrusion_ByFaces11.py
197                TestExtrusion_ByFaces12.py
198                TestExtrusion_ByFaces13.py
199                TestExtrusion_ByFaces14.py
200                TestExtrusion_ByFaces15.py
201                TestExtrusion_ByFaces16.py
202                TestExtrusion_ByFaces17.py
203                TestExtrusion_ByFaces18.py
204                TestExtrusion_ByFaces19.py
205                TestRevolution.py
206                TestRevolution_ByAngle.py
207                TestRevolutionOfPoint.py
208                TestRevolutionOfEdge.py
209                TestRevolutionOfCompound.py
210                TestRevolutionCut.py
211                TestRevolutionCut_ByAngle.py
212                TestRevolutionCut_ByPlanesAndOffsets.py
213                TestRevolutionFuse.py
214                TestRevolutionFuse_ByAngle.py
215                TestRevolutionFuse_ByPlanesAndOffsets.py
216                TestCompositeFeaturesOnCompSolids.py
217                TestPartition.py
218                TestPartition_ErrorMsg.py
219                TestPlacement_Vertex_Vertex.py
220                TestPlacement_Edge_Vertex.py
221                TestPlacement_Edge_Edge.py
222                TestPlacement_Face_Vertex.py
223                TestPlacement_Face_Edge.py
224                TestPlacement_Face_Face.py
225                TestPlacement_Part_Part.py
226                TestPlacement_Complex.py
227                TestPlacement_ErrorMsg.py
228                TestPlacement_BodyShapesValidator.py
229                TestTranslation.py
230                TestTranslation_Part.py
231                TestRotation.py
232                TestRotation_ByAxis.py
233                TestRotation_ByPoints.py
234                TestRotation_ErrorMsg.py
235                TestMultiRotation_Part.py
236                TestMultiRotation_ErrorMsg.py
237                TestMultiTranslation_Part.py
238                TestMultiTranslation_ErrorMsg.py
239                TestSymmetry_Part.py
240                TestBoolean1.py
241                TestBoolean2.py
242                TestBoolean3.py
243                TestBooleanCompSolids.py
244                TestBooleanSmash.py
245                TestBooleanSplit.py
246                TestBooleanSplitWithPlane.py
247                TestBooleanSplit_ErrorMsg.py
248                TestMultiBoolean.py
249                TestSerialBoolean.py
250                TestBoolean_ErrorMsg.py
251                TestIntersection.py
252                TestIntersection_ErrorMsg.py
253                TestUnion.py
254                TestUnionFaces.py
255                TestUnion_ErrorMsg.py
256                TestRemoveSubShapes.py
257                TestRemoveSubShapes2.py
258                TestRemoveSubShapes3.py
259                TestRemoveSubShapes4.py
260                TestRemoveSubShapes5.py
261                TestRemoveSubShapes6.py
262                TestPipe.py
263                TestPipe_Edge.py
264                TestPipe_Wire.py
265                TestPipe_Compound.py
266                TestPipe_ErrorMsg.py
267                TestRecover.py
268                TestRecover_Compound.py
269                TestRecover_Compsolid1.py
270                TestRecover_Compsolid2.py
271                TestRecover1798.py
272                TestSplitEdgeVertex.py
273                TestSplitEdgeEdge.py
274                TestSplitEdgeEdgeIntersected.py
275                TestSplitEdgeWire.py
276                TestSplitEdgeFace.py
277                TestSplitEdgeShell.py
278                TestSplitEdgeSolid.py
279                TestSplitEdgeSolidIntersected.py
280                TestSplitWireVertex.py
281                TestSplitWireEdge.py
282                TestSplitWireWire.py
283                TestSplitWireFace.py
284                TestSplitWireShell.py
285                TestSplitWireSolid.py
286                TestSplitFaceVertex.py
287                TestSplitFaceEdge.py
288                TestSplitFaceEdgeInside.py
289                TestSplitFaceEdgePerpendicular.py
290                TestSplitFaceWire.py
291                TestSplitFaceFace.py
292                TestSplitFaceShell.py
293                TestSplitFaceSolid.py
294                TestSplitCompFaceSolid.py
295                TestSplitShellVertex.py
296                TestSplitShellEdge.py
297                TestSplitShellConstrPlane.py
298                TestSplitShellWire.py
299                TestSplitShellFace.py
300                TestSplitShellShell.py
301                TestSplitShellSolid.py
302                TestSplitSolid2ConstructionPlanes.py
303                TestSplitSolidEdge.py
304                TestSplitSolidFace.py
305                TestSplitSolidCompFace.py
306                TestSplitSolidShell.py
307                TestSplitSolidCompShell.py
308                TestSplitCompsolidPlane.py
309                TestPartition2Faces.py
310                TestPartition2Solids.py
311                TestPartition2Wires.py
312                TestPartitionBox4Planes.py
313                TestPartitionEdgeSolid.py
314                TestPartitionFace2Solid.py
315                TestPartitionFaceSolid.py
316                TestPartitionFaceWire.py
317                TestPartitionInclinedFaceSolid.py
318                TestPartitionWireFaceSolid.py
319                TestUnion4CurvedFaces.py
320                TestUnion4CurvedFaces_2.py
321                TestUnion4Faces.py
322                TestUnionOfUnion.py
323                TestMeasurementLength.py
324                TestMeasurementDistance.py
325                TestMeasurementRadius.py
326                TestMeasurementAngle.py
327                TestMeasurementAngle3Points.py
328                TestMeasurementPresentation.py
329                TestFusionFaces.py
330                TestFusionFaces2697.py 
331                Test1379.py
332                Test1922.py
333                Test1942.py
334                Test1915.py
335                Test2023.py
336                Test2046.py
337                Test2038.py
338                Test2172.py
339                Test2194.py
340                Test2197_1.py
341                Test2197_2.py
342                Test2197_3.py
343                Test2197_4.py
344                Test2215.py
345                Test2222.py
346                Test2233.py
347                Test2231.py
348                Test2240.py
349                Test2246.py
350                Test2248.py
351                Test2251.py
352                Test2255.py
353                Test2289.py
354                Test2304.py
355                Test2304_2.py
356                Test2375.py
357                Test2377.py
358                Test2394.py
359                Test2395.py
360                Test2419_1.py
361                Test2419_2.py
362                Test2419_3.py
363                Test2465.py
364                Test2495.py
365                Test2514.py
366                Test2520.py
367                TestBooleanCut_CompSolid_CompSolid.py
368                TestBooleanCut_CompSolidCompound_CompSolidCompound.py
369                TestBooleanCut_Edge_Edge.py
370                TestBooleanCut_Edge_Face.py
371                TestBooleanCut_EdgeCompound_EdgeCompound.py
372                TestBooleanCut_EdgeCompound_Solid.py
373                TestBooleanCut_Face_Face.py
374                TestBooleanCut_Face_Solid.py
375                TestBooleanCut_FaceCompound_FaceCompound.py
376                TestBooleanCut_Shell_Shell.py
377                TestBooleanCut_ShellCompound_ShellCompound.py
378                TestBooleanCut_Solid_Solid.py
379                TestBooleanCut_SolidCompound_SolidCompound.py
380                TestBooleanCut_Vertex_Vertex.py
381                TestBooleanCut_VertexCompound_Solid.py
382                TestBooleanCut_VertexCompound_VertexCompound.py
383                TestBooleanCut_Wire_Face.py
384                TestBooleanCut_Wire_Wire.py
385                TestBooleanCut_WireCompound_WireCompound.py
386                TestBooleanCut_Compound_Solid.py
387                TestBooleanCut_ErrorMsg.py
388                TestBooleanCut_SolidsHistory.py
389                TestBooleanSmash_Face_Face.py
390                TestBooleanSmash_SubSolid_Solid.py
391                TestBooleanSmash_CompSolid_Solid.py
392                TestBooleanSmash_ErrorMsg.py
393                TestBooleanSmash_SolidsHistory.py
394                TestBooleanFuse_SimpleMode.py
395                TestBooleanFuse_RemoveEdges.py
396                TestBooleanFuse_ErrorMsg.py
397                TestBooleanCommon_Vertex_Vertex.py
398                TestBooleanCommon_VertexCompound_VertexCompound.py
399                TestBooleanCommon_Edge_Edge.py
400                TestBooleanCommon_EdgeCompound_EdgeCompound.py
401                TestBooleanCommon_Wire_Wire.py
402                TestBooleanCommon_WireCompound_WireCompound.py
403                TestBooleanCommon_Face_Face.py
404                TestBooleanCommon_Face_Plane.py
405                TestBooleanCommon_FaceCompound_FaceCompound.py
406                TestBooleanCommon_Shell_Shell.py
407                TestBooleanCommon_ShellCompound_ShellCompound.py
408                TestBooleanCommon_Solid_Face.py
409                TestBooleanCommon_Solid_Shell.py
410                TestBooleanCommon_Solid_Solid.py
411                TestBooleanCommon_SolidCompound_Face.py
412                TestBooleanCommon_SolidCompound_Shell.py
413                TestBooleanCommon_SolidCompound_SolidCompound.py
414                TestBooleanCommon_SubCompound_Solid.py
415                TestBooleanCommon_SubSolid_Solid.py
416                TestBooleanCommon_CompSolid_Face.py
417                TestBooleanCommon_CompSolid_Shell.py
418                TestBooleanCommon_CompSolid_CompSolid.py
419                TestBooleanCommon_CompSolidCompound_Face.py
420                TestBooleanCommon_CompSolidCompound_Shell.py
421                TestBooleanCommon_CompSolidCompound_CompSolidCompound.py
422                TestBooleanCommon_ErrorMsg.py
423                TestBooleanCommon_SolidsHistory.py
424                Test2596.py
425                Test2592.py
426                Test2588.py
427                Test1467.py
428                TestPartitionSubCompsolidWithCompSolid1.py
429                TestPartitionSubCompsolidWithCompSolid2.py
430                TestPartitionSubCompsolidWithCompSolid3.py
431                TestPartitionSubCompsolidWithSolid1.py
432                TestPartitionSubCompsolidWithSolid2.py
433                TestPartitionSubCompsolidWithSolid3.py
434                TestPartitionSubCompsolidWithSolid4.py
435                TestPartitionSubCompsolidWithSolid5.py
436                TestPartitionSubCompsolidWithFace1.py
437                TestPartitionSubCompsolidWithFace2.py
438                TestPartitionSubCompsolidWithFace3.py
439                TestPartitionSubCompsolidWithFace4.py
440                TestPartitionSubCompsolidWithFace5.py
441                TestPartitionSubCompsolidWithPlane1.py
442                TestPartitionSubCompsolidWithPlane2.py
443                TestPartitionSubCompsolidWithPlane3.py
444                TestPartitionSubCompsolidWithPlane4.py
445                TestPartitionSubCompsolidWithPlane5.py
446                TestPartitionArgsUpdate.py
447                TestPartition_SolidsHistory.py
448                TestBooleanFuse_Vertex_Vertex.py
449                TestBooleanFuse_VertexCompound_VertexCompound.py
450                TestBooleanFuse_Edge_Edge.py
451                TestBooleanFuse_EdgeCompound_EdgeCompound.py
452                TestBooleanFuse_Wire_Wire.py
453                TestBooleanFuse_WireCompound_WireCompound.py
454                TestBooleanFuse_Face_Face.py
455                TestBooleanFuse_FaceCompound_FaceCompound.py
456                TestBooleanFuse_Shell_Shell.py
457                TestBooleanFuse_ShellCompound_ShellCompound.py
458                TestBooleanFuse_Solid_Solid.py
459                TestBooleanFuse_SolidCompound_SolidCompound.py
460                TestBooleanFuse_CompSolid_Face.py
461                TestBooleanFuse_CompSolid_CompSolid.py
462                TestBooleanFuse_CompSolidCompound_CompSolidCompound.py
463                TestBooleanFuse_SolidsHistory.py
464                TestFillet.py
465                TestFillet1.py
466                TestFillet_ErrorMsg.py
467                TestFillet_History.py
468                TestScale1.py
469                TestScale2.py
470                Test1816.py
471                Test1876.py
472                Test2225.py
473                Test2631.py
474                Test2636.py
475                Test2650.py
476                Test2681.py
477                Test2686.py
478                Test2689.py
479                Test2693.py
480                Test2698.py
481                Test2701.py
482                Test2724.py
483                Test2692.py
484                Test2617.py
485                Test2729.py
486                Test2738.py
487                Test2751.py
488                Test2826.py
489                Test2854.py
490                Test2878.py
491                Test2971.py
492                TestBooleanCommon_MultiLevelCompound_v0_1.py
493                TestBooleanCommon_MultiLevelCompound_v0_2.py
494                TestBooleanCommon_MultiLevelCompound_v20190506_1.py
495                TestBooleanCommon_MultiLevelCompound_v20190506_2.py
496                TestBooleanCut_MultiLevelCompound_v0_1.py
497                TestBooleanCut_MultiLevelCompound_v0_2.py
498                TestBooleanCut_MultiLevelCompound_v20190506_1.py
499                TestBooleanCut_MultiLevelCompound_v20190506_2.py
500                TestBooleanFuse_MultiLevelCompound_v0_1.py
501                TestBooleanFuse_MultiLevelCompound_v0_2.py
502                TestBooleanFuse_MultiLevelCompound_v0_3.py
503                TestBooleanFuse_MultiLevelCompound_v0_4.py
504                TestBooleanFuse_MultiLevelCompound_v20190506_1.py
505                TestBooleanFuse_MultiLevelCompound_v20190506_2.py
506                TestBooleanFuse_MultiLevelCompound_v20190506_3.py
507                TestBooleanFuse_MultiLevelCompound_v20190506_4.py
508                TestBooleanSmash_MultiLevelCompound_v0_1.py
509                TestBooleanSmash_MultiLevelCompound_v0_2.py
510                TestBooleanSmash_MultiLevelCompound_v20190506_1.py
511                TestBooleanSmash_MultiLevelCompound_v20190506_2.py
512                TestBooleanSplit_MultiLevelCompound_v0_1.py
513                TestBooleanSplit_MultiLevelCompound_v0_2.py
514                TestBooleanSplit_MultiLevelCompound_v20190506_1.py
515                TestBooleanSplit_MultiLevelCompound_v20190506_2.py
516                TestPartition_MultiLevelCompound_v0_1.py
517                TestPartition_MultiLevelCompound_v0_2.py
518                TestPartition_MultiLevelCompound_v0_3.py
519                TestPartition_MultiLevelCompound_v20190506_1.py
520                TestPartition_MultiLevelCompound_v20190506_2.py
521                TestPartition_MultiLevelCompound_v20190506_3.py
522                TestUnion_MultiLevelCompound_v0.py
523                TestUnion_MultiLevelCompound_v20190506.py
524                TestUnionFaces_v20190506.py
525                TestRemoveResultsBody.py
526                TestRemoveResultsConstruction.py
527                TestRemoveResultsPart.py
528                Test17000.py
529                Test17261.py
530                Test17281.py
531 )