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