]> SALOME platform Git repositories - modules/shaper.git/blob - src/SketchPlugin/Test/TestSketchPointLine.py
Salome HOME
20a85e3dad8b73ef4496d2a628bbc7b6c63873e7
[modules/shaper.git] / src / SketchPlugin / Test / TestSketchPointLine.py
1 #=========================================================================
2 # Initialization of the test
3 #=========================================================================
4 from GeomDataAPI import *
5 from ModelAPI import *
6
7 __updated__ = "2014-10-28"
8
9 aSession = ModelAPI_Session.get()
10 aDocument = aSession.moduleDocument()
11 #=========================================================================
12 # Creation of a sketch
13 #=========================================================================
14 aSession.startOperation()
15 aSketchCommonFeature = aDocument.addFeature("Sketch")
16 aSketchFeature = modelAPI_CompositeFeature(aSketchCommonFeature)
17 assert (aSketchFeature.getKind() == "Sketch")
18 aSketchFeatureData = aSketchFeature.data()
19 origin = geomDataAPI_Point(aSketchFeatureData.attribute("Origin"))
20 origin.setValue(0, 0, 0)
21 dirx = geomDataAPI_Dir(aSketchFeatureData.attribute("DirX"))
22 dirx.setValue(1, 0, 0)
23 diry = geomDataAPI_Dir(aSketchFeatureData.attribute("DirY"))
24 diry.setValue(0, 1, 0)
25 norm = geomDataAPI_Dir(aSketchFeatureData.attribute("Norm"))
26 norm.setValue(0, 0, 1)
27 aSession.finishOperation()
28 # check that values have been changed
29 origin = geomDataAPI_Point(aSketchFeatureData.attribute("Origin"))
30 assert (origin.x() == 0)
31 assert (origin.y() == 0)
32 assert (origin.z() == 0)
33 dirx = geomDataAPI_Dir(aSketchFeatureData.attribute("DirX"))
34 assert (dirx.x() == 1)
35 assert (dirx.y() == 0)
36 assert (dirx.z() == 0)
37 diry = geomDataAPI_Dir(aSketchFeatureData.attribute("DirY"))
38 assert (diry.x() == 0)
39 assert (diry.y() == 1)
40 assert (diry.z() == 0)
41 norm = geomDataAPI_Dir(aSketchFeatureData.attribute("Norm"))
42 assert (norm.x() == 0)
43 assert (norm.y() == 0)
44 assert (norm.z() == 1)
45 #=========================================================================
46 # Creation of a point
47 #=========================================================================
48 aSession.startOperation()
49 aSketchReflist = aSketchFeatureData.reflist("Features")
50 assert (not aSketchReflist.isInitialized())
51 assert(aSketchReflist.size() == 0)
52 assert (len(aSketchReflist.list()) == 0)
53 # aSketchPoint = aDocument.addFeature("SketchPoint")
54 aSketchPoint = aSketchFeature.addFeature("SketchPoint")
55 assert (aSketchPoint.getKind() == "SketchPoint")
56 aSketchPointData = aSketchPoint.data()
57 coords = geomDataAPI_Point2D(aSketchPointData.attribute("PointCoordindates"))
58 assert (coords.x() == 0)
59 assert (coords.y() == 0)
60 assert (not coords.isInitialized())
61 # Simulate SketchPlugin_Point::move(...)
62 coords.setValue(10., 10.)
63 assert (coords.isInitialized())
64 aSession.finishOperation()
65 # check that values have been changed
66 aSketchReflist = aSketchFeatureData.reflist("Features")
67 assert (aSketchReflist.size() == 1)
68 assert (len(aSketchReflist.list()) == 1)
69 aSketchPointData = aSketchPoint.data()
70 coords = geomDataAPI_Point2D(aSketchPointData.attribute("PointCoordindates"))
71 assert (coords.x() == 10.0)
72 assert (coords.y() == 10.0)
73 #=========================================================================
74 # Creation of a line
75 #=========================================================================
76 aSession.startOperation()
77 # aSketchLine = aDocument.addFeature("SketchLine")
78 aSketchLine = aSketchFeature.addFeature("SketchLine")
79 assert (aSketchLine.getKind() == "SketchLine")
80 assert (aSketchReflist.size() == 2)
81 assert (len(aSketchReflist.list()) == 2)
82 aSketchLineData = aSketchLine.data()
83 aLineStartPoint = geomDataAPI_Point2D(aSketchLineData.attribute("StartPoint"))
84 aLineEndPoint = geomDataAPI_Point2D(aSketchLineData.attribute("EndPoint"))
85 assert (aLineStartPoint.x() == 0)
86 assert (aLineStartPoint.y() == 0)
87 assert (not aLineStartPoint.isInitialized())
88 assert (aLineEndPoint.x() == 0)
89 assert (aLineEndPoint.y() == 0)
90 assert (not aLineEndPoint.isInitialized())
91 # Simulate SketchPlugin_Line::move(...)
92 aLineStartPoint.setValue(50., 50.)
93 aLineEndPoint.setValue(60., 60.)
94 assert (aLineStartPoint.isInitialized())
95 assert (aLineEndPoint.isInitialized())
96 aSession.finishOperation()
97 # check that values have been changed
98 aSketchLineData = aSketchLine.data()
99 aLineStartPoint = geomDataAPI_Point2D(aSketchLineData.attribute("StartPoint"))
100 aLineEndPoint = geomDataAPI_Point2D(aSketchLineData.attribute("EndPoint"))
101 assert (aLineStartPoint.x() == 50.0)
102 assert (aLineStartPoint.y() == 50.0)
103 assert (aLineEndPoint.x() == 60.0)
104 assert (aLineEndPoint.y() == 60.0)
105 #=========================================================================
106 # Check the results
107 #=========================================================================
108 aResult = aSketchLine.firstResult()
109 assert (aResult is not None)
110 aResultConstruction = modelAPI_ResultConstruction(aResult)
111 aShape = aResultConstruction.shape()
112 assert (aShape is not None)
113 assert (not aShape.isNull())