Salome HOME
Merge remote-tracking branch 'remotes/origin/HighLevelDump'
[modules/shaper.git] / src / BuildPlugin / Test / TestWire.py
1 # Initialization of the test
2 from ModelAPI import *
3 from GeomDataAPI import *
4 from GeomAlgoAPI import *
5 from GeomAPI import *
6
7 # Get document
8 aSession = ModelAPI_Session.get()
9 aDocument = aSession.moduleDocument()
10
11 # Create a part
12 aSession.startOperation()
13 aPartFeature = aDocument.addFeature("Part")
14 aSession.finishOperation()
15 aPartResult = modelAPI_ResultPart(aPartFeature.firstResult())
16 aPart = aPartResult.partDoc()
17
18 # Create a sketch
19 aSession.startOperation()
20 aSketchFeature = featureToCompositeFeature(aPart.addFeature("Sketch"))
21 anOrigin = geomDataAPI_Point(aSketchFeature.attribute("Origin"))
22 anOrigin.setValue(0, 0, 0)
23 aDirX = geomDataAPI_Dir(aSketchFeature.attribute("DirX"))
24 aDirX.setValue(1, 0, 0)
25 aNorm = geomDataAPI_Dir(aSketchFeature.attribute("Norm"))
26 aNorm.setValue(0, 0, 1)
27
28 # Create lines
29 aSketchLineFeature = aSketchFeature.addFeature("SketchLine")
30 aSketchLineStartPoint = geomDataAPI_Point2D(aSketchLineFeature.attribute("StartPoint"))
31 aSketchLineEndPoint = geomDataAPI_Point2D(aSketchLineFeature.attribute("EndPoint"))
32 aSketchLineStartPoint.setValue(0, 0)
33 aSketchLineEndPoint.setValue(0, 50)
34 aSketchLineFeature = aSketchFeature.addFeature("SketchLine")
35 aSketchLineStartPoint = geomDataAPI_Point2D(aSketchLineFeature.attribute("StartPoint"))
36 aSketchLineEndPoint = geomDataAPI_Point2D(aSketchLineFeature.attribute("EndPoint"))
37 aSketchLineStartPoint.setValue(0, 50)
38 aSketchLineEndPoint.setValue(50, 50)
39 aSketchLineFeature = aSketchFeature.addFeature("SketchLine")
40 aSketchLineStartPoint = geomDataAPI_Point2D(aSketchLineFeature.attribute("StartPoint"))
41 aSketchLineEndPoint = geomDataAPI_Point2D(aSketchLineFeature.attribute("EndPoint"))
42 aSketchLineStartPoint.setValue(50, 50)
43 aSketchLineEndPoint.setValue(50, 0)
44 aSketchLineFeature = aSketchFeature.addFeature("SketchLine")
45 aSketchLineStartPoint = geomDataAPI_Point2D(aSketchLineFeature.attribute("StartPoint"))
46 aSketchLineEndPoint = geomDataAPI_Point2D(aSketchLineFeature.attribute("EndPoint"))
47 aSketchLineStartPoint.setValue(50, 0)
48 aSketchLineEndPoint.setValue(0, 0)
49 aSession.finishOperation()
50 aSketchResult = aSketchFeature.firstResult()
51 aSketchShape = aSketchResult.shape()
52
53 # Create wire
54 aSession.startOperation()
55 aWireFeature = aPart.addFeature("Wire")
56 aBaseObjectsList = aWireFeature.selectionList("base_objects")
57 aShapeExplorer = GeomAPI_ShapeExplorer(aSketchShape, GeomAPI_Shape.EDGE)
58 if aShapeExplorer.more():
59     aBaseObjectsList.append(aSketchResult, aShapeExplorer.current())
60 aWireFeature.customAction("add_contour")
61 aSession.finishOperation()
62
63 # Test results
64 assert (len(aWireFeature.results()) > 0)
65
66 import model
67 assert(model.checkPythonDump())