Salome HOME
Issue #3240: Angular Copy is not possible for projected entity
[modules/shaper.git] / src / SketchPlugin / CMakeLists.txt
1 # Copyright (C) 2014-2020  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     SketchPlugin.h
25     SketchPlugin_Arc.h
26     SketchPlugin_BSpline.h
27     SketchPlugin_BSplineBase.h
28     SketchPlugin_BSplinePeriodic.h
29     SketchPlugin_Circle.h
30     SketchPlugin_Constraint.h
31     SketchPlugin_ConstraintAngle.h
32     SketchPlugin_ConstraintBase.h
33     SketchPlugin_ConstraintCoincidence.h
34     SketchPlugin_ConstraintCoincidenceInternal.h
35     SketchPlugin_ConstraintCollinear.h
36     SketchPlugin_ConstraintDistance.h
37     SketchPlugin_ConstraintDistanceAlongDir.h
38     SketchPlugin_ConstraintDistanceHorizontal.h
39     SketchPlugin_ConstraintDistanceVertical.h
40     SketchPlugin_ConstraintEqual.h
41     SketchPlugin_Fillet.h
42     SketchPlugin_ConstraintHorizontal.h
43     SketchPlugin_ConstraintLength.h
44     SketchPlugin_ConstraintMiddle.h
45     SketchPlugin_ConstraintMirror.h
46     SketchPlugin_ConstraintParallel.h
47     SketchPlugin_ConstraintPerpendicular.h
48     SketchPlugin_ConstraintRadius.h
49     SketchPlugin_ConstraintRigid.h
50     SketchPlugin_ConstraintTangent.h
51     SketchPlugin_ConstraintVertical.h
52     SketchPlugin_Ellipse.h
53     SketchPlugin_EllipticArc.h
54     SketchPlugin_ExternalValidator.h
55     SketchPlugin_Feature.h
56     SketchPlugin_IntersectionPoint.h
57     SketchPlugin_Line.h
58     SketchPlugin_MacroArc.h
59     SketchPlugin_MacroArcReentrantMessage.h
60     SketchPlugin_MacroBSpline.h
61     SketchPlugin_MacroCircle.h
62     SketchPlugin_MacroEllipse.h
63     SketchPlugin_MacroEllipticArc.h
64     SketchPlugin_MultiRotation.h
65     SketchPlugin_MultiTranslation.h
66     SketchPlugin_Plugin.h
67     SketchPlugin_Point.h
68     SketchPlugin_Projection.h
69     SketchPlugin_Sketch.h
70     SketchPlugin_SketchCopy.h
71     SketchPlugin_SketchDrawer.h
72     SketchPlugin_SketchEntity.h
73     SketchPlugin_Split.h
74     SketchPlugin_Tools.h
75     SketchPlugin_Trim.h
76     SketchPlugin_Validators.h
77 )
78
79 SET(PROJECT_SOURCES
80     SketchPlugin_Arc.cpp
81     SketchPlugin_BSpline.cpp
82     SketchPlugin_BSplineBase.cpp
83     SketchPlugin_BSplinePeriodic.cpp
84     SketchPlugin_Circle.cpp
85     SketchPlugin_Constraint.cpp
86     SketchPlugin_ConstraintAngle.cpp
87     SketchPlugin_ConstraintCoincidence.cpp
88     SketchPlugin_ConstraintCoincidenceInternal.cpp
89     SketchPlugin_ConstraintCollinear.cpp
90     SketchPlugin_ConstraintDistance.cpp
91     SketchPlugin_ConstraintDistanceAlongDir.cpp
92     SketchPlugin_ConstraintDistanceHorizontal.cpp
93     SketchPlugin_ConstraintDistanceVertical.cpp
94     SketchPlugin_ConstraintEqual.cpp
95     SketchPlugin_Fillet.cpp
96     SketchPlugin_ConstraintHorizontal.cpp
97     SketchPlugin_ConstraintLength.cpp
98     SketchPlugin_ConstraintMiddle.cpp
99     SketchPlugin_ConstraintMirror.cpp
100     SketchPlugin_ConstraintParallel.cpp
101     SketchPlugin_ConstraintPerpendicular.cpp
102     SketchPlugin_ConstraintRadius.cpp
103     SketchPlugin_ConstraintRigid.cpp
104     SketchPlugin_ConstraintTangent.cpp
105     SketchPlugin_ConstraintVertical.cpp
106     SketchPlugin_Ellipse.cpp
107     SketchPlugin_EllipticArc.cpp
108     SketchPlugin_ExternalValidator.cpp
109     SketchPlugin_Feature.cpp
110     SketchPlugin_IntersectionPoint.cpp
111     SketchPlugin_Line.cpp
112     SketchPlugin_MacroArc.cpp
113     SketchPlugin_MacroBSpline.cpp
114     SketchPlugin_MacroCircle.cpp
115     SketchPlugin_MacroEllipse.cpp
116     SketchPlugin_MacroEllipticArc.cpp
117     SketchPlugin_MultiRotation.cpp
118     SketchPlugin_MultiTranslation.cpp
119     SketchPlugin_Plugin.cpp
120     SketchPlugin_Point.cpp
121     SketchPlugin_Projection.cpp
122     SketchPlugin_Sketch.cpp
123     SketchPlugin_SketchCopy.cpp
124     SketchPlugin_SketchDrawer.cpp
125     SketchPlugin_SketchEntity.cpp
126     SketchPlugin_Split.cpp
127     SketchPlugin_Tools.cpp
128     SketchPlugin_Trim.cpp
129     SketchPlugin_Validators.cpp
130 )
131
132 SET(PROJECT_LIBRARIES
133     Config
134     GeomAPI
135     GeomAlgoAPI
136     ModelAPI
137     ModelGeomAlgo
138     ModuleBase
139     SketcherPrs
140     GeomDataAPI
141 )
142
143 SET(XML_RESOURCES
144   plugin-Sketch.xml
145   plugin-SketchCopy.xml
146   plugin-SketchDrawer.xml
147 )
148
149 SET(TEXT_RESOURCES
150     SketchPlugin_msg_en.ts
151     SketchPlugin_msg_fr.ts
152 )
153
154 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC})
155 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES})
156 SOURCE_GROUP ("XML Files" FILES ${XML_RESOURCES})
157
158 ADD_DEFINITIONS(-DSKETCHPLUGIN_EXPORTS)
159 ADD_LIBRARY(SketchPlugin MODULE ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES} ${TEXT_RESOURCES})
160 TARGET_LINK_LIBRARIES(SketchPlugin ${PROJECT_LIBRARIES})
161
162 INCLUDE_DIRECTORIES(
163   ../Config
164   ../Events
165   ../ModelAPI
166   ../ModelGeomAlgo
167   ../ModuleBase
168   ../GeomAPI
169   ../GeomAlgoAPI
170   ../GeomDataAPI
171   ../SketcherPrs
172   ${OpenCASCADE_INCLUDE_DIR}
173 )
174
175 INSTALL(TARGETS SketchPlugin DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
176 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
177 INSTALL(DIRECTORY icons/ DESTINATION ${SHAPER_INSTALL_XML_RESOURCES}/icons/Sketch)
178 INSTALL(FILES ${TEXT_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
179
180 ADD_UNIT_TESTS(
181   Test1061.py
182   Test1577.py
183   Test1578.py
184   Test1673.py
185   Test1779.py
186   Test1924.py
187   Test1963.py
188   Test1966.py
189   Test1967.py
190   Test2034_1.py
191   Test2034_2.py
192   Test2034_3.py
193   Test2062.py
194   Test2095.py
195   Test2115.py
196   Test2119.py
197   Test2134.py
198   Test2157.py
199   Test2157_2.py
200   Test2224.py
201   Test2229.py
202   Test2239.py
203   Test2273.py
204   Test2280.py
205   Test2287.py
206   Test2341.py
207   Test2376.py
208   Test2390.py
209   Test2393.py
210   Test2425.py
211   Test2427.py
212   Test2440.py
213   Test2481.py
214   Test2654.py
215   Test2711.py
216   Test2741.py
217   Test2810.py
218   Test2824.py
219   Test2860.py
220   Test2894.py
221   Test3019.py
222   Test3087_1.py
223   Test3087_2.py
224   Test3132.py
225   Test3154.py
226   Test3170.py
227   Test3240.py
228   Test19089.py
229   Test19101.py
230   TestArcBehavior.py
231   TestBSplineAddPole.py
232   TestChangeSketchPlane1.py
233   TestChangeSketchPlane2.py
234   TestChangeSketchPlane3.py
235   TestChangeSketchPlane4.py
236   TestConstraintAngle.py
237   TestConstraintAngle_v0_1.py
238   TestConstraintAngle_v0_2.py
239   TestConstraintAngle_v20191210_1.py
240   TestConstraintAngle_v20191210_2.py
241   TestConstraintAngleBehaviorDirect.py
242   TestConstraintAngleBehaviorSupplementary_1.py
243   TestConstraintAngleBehaviorSupplementary_2.py
244   TestConstraintAngleBehaviorBackward_1.py
245   TestConstraintAngleBehaviorBackward_2.py
246   TestConstraintAngleEllipse.py
247   TestConstraintCoincidence.py
248   TestConstraintCoincidenceBSpline.py
249   TestConstraintCoincidenceEllipse.py
250   TestConstraintCoincidenceEllipticArc.py
251   TestConstraintCollinear.py
252   TestConstraintCollinearEllipse.py
253   TestConstraintDistance.py
254   TestConstraintDistanceEllipse.py
255   TestConstraintDistanceBehavior.py
256   TestConstraintDistanceHorizontal.py
257   TestConstraintDistanceVertical.py
258   TestConstraintDistanceZero.py
259   TestConstraintDistanceHorizontalZero.py
260   TestConstraintDistanceVerticalZero.py
261   TestConstraintEqual.py
262   TestConstraintEqualEllipse.py
263   TestConstraintFixed.py
264   TestConstraintHorizontal.py
265   TestConstraintHorizontalValidator.py
266   TestConstraintLength.py
267   TestConstraintMiddlePoint.py
268   TestConstraintMiddlePointOnArc.py
269   TestConstraintMiddlePointOnEllipticArc.py
270   TestConstraintParallel.py
271   TestConstraintPerpendicular.py
272   TestConstraintPerpendicularArcLine.py
273   TestConstraintPerpendicularEllipseLine.py
274   TestConstraintRadius.py
275   TestConstraintRadiusFailure.py
276   TestConstraintTangent.py
277   TestConstraintTangentBSpline.py
278   TestConstraintTangentEllipse.py
279   TestConstraintTangentEllipticArc.py
280   TestConstraintVertical.py
281   TestCreateArcByCenterStartEnd.py
282   TestCreateArcByTangentEdge.py
283   TestCreateArcByThreePoints.py
284   TestCreateArcByTransversalLine.py
285   TestCreateArcChangeType.py
286   TestCreateBSpline.py
287   TestCreateBSplinePeriodic.py
288   TestCreateCircleByCenterAndPassed.py
289   TestCreateCircleByThreePoints.py
290   TestCreateCircleChangeType.py
291   TestCreateEllipseByCenterSemiaxisAndPassed.py
292   TestCreateEllipseByMajorAxisAndPassed.py
293   TestCreateEllipseByExternal.py
294   TestCreateEllipticArc.py
295   TestCreateEllipticArcByExternal.py
296   TestCreateMacroBSpline.py
297   TestDegeneratedGeometry.py
298   TestDistanceDump.py
299   TestDistanceSignedVsUnsigned01.py
300   TestDistanceSignedVsUnsigned02.py
301   TestDistanceSignedVsUnsigned03.py
302   TestDistanceSignedVsUnsigned04.py
303   TestDistanceSignedVsUnsigned05.py
304   TestEdgesOrder.py
305   TestFillet.py
306   TestFilletAfterFolder.py
307   TestFilletInteracting.py
308   TestHighload.py
309   TestIntersectionChangeEdge.py
310   TestIntersectionWithCircle.py
311   TestIntersectionWithLine.py
312   TestIntersectionWithSpline.py
313   TestMirror.py
314   TestMultiRotation.py
315   TestMultiRotation01.py
316   TestMultiRotation02.py
317   TestMultiRotation03.py
318   TestMultiRotation04.py
319   TestMultiRotation05.py
320   TestMultiRotationWithParameter.py
321   TestMultiTranslation.py
322   TestPresentation.py
323   TestProjection.py
324   TestProjectionBSpline.py
325   TestProjectionBSplinePeriodic.py
326   TestProjectionEllipse.py
327   TestProjectionEllipticArc.py
328   TestProjectionIntoResult.py
329   TestProjectionUpdate.py
330   TestRectangle.py
331   TestRemainingDoF.py
332   TestRemoveBSpline.py
333   TestRemoveBSplinePeriodic.py
334   TestRemoveEllipse.py
335   TestRemoveEllipticArc.py
336   TestRemoveSketch.py
337   TestSignedDistancePointLine.py
338   TestSignedDistancePointPoint.py
339   TestSketchCopy01.py
340   TestSketchCopy02.py
341   TestSketchCopy03.py
342   TestSketchCopy04.py
343   TestSketchCopy05.py
344   TestSketchCopy06.py
345   TestSketchCopy07.py
346   TestSketchCopy08.py
347   TestSketchCopy09.py
348   TestSketchCopy10.py
349   TestSketchCopy11.py
350   TestSketchCopy12.py
351   TestSketchCopy13.py
352   TestSketchCopy14.py
353   TestSketchDrawer.py
354   TestSketchPointLine.py
355   TestSnowflake.py
356   TestSplit.py
357   TestSplitEllipse.py
358   TestSplitLine.py
359   TestSplitPreview.py
360   TestTrimArc01.py
361   TestTrimArc02.py
362   TestTrimArc03.py
363   TestTrimArc04.py
364   TestTrimArc05.py
365   TestTrimArc06.py
366   TestTrimArc07.py
367   TestTrimArc08.py
368   TestTrimCircle01.py
369   TestTrimCircle02.py
370   TestTrimCircle03.py
371   TestTrimCircle04.py
372   TestTrimCircle05.py
373   TestTrimCircleAndArc01.py
374   TestTrimEllipse.py
375   TestTrimLine01.py
376   TestTrimLine02.py
377   TestTrimLine03.py
378   TestTrimPreview.py
379   TestUpdateSketch.py
380 )
381
382 if(${SKETCHER_CHANGE_RADIUS_WHEN_MOVE})
383   ADD_UNIT_TESTS(
384     TestMoveArc.py
385     TestMoveBSpline.py
386     TestMoveBSplinePeriodic.py
387     TestMoveCircle.py
388     TestMoveEllipse.py
389     TestMoveEllipticArc.py
390     TestMoveLine.py
391     TestMovementComplex.py
392     TestMovePoint.py
393   )
394 endif()