pythonCascade Sample Problems

self.Initialize()
self.interactive_context.EraseAll(0,1)
S = BRepPrimAPI_MakeBox(400.,250.,300.).Shape()
ais1 = AIS_Shape(S)
self.interactive_context.SetDisplayMode(ais1,AIS_Shaded,0)
self.interactive_context.SetMaterial(ais1,Graphic3d_NOM_PLASTIC,0)
self.interactive_context.SetColor(ais1,Quantity_NOC_CORAL,0)
self.interactive_context.Display(ais1,1)
Ex = TopExp_Explorer()
Ex.Init(S,TopAbs_FACE)
Ex.Next()
Ex.Next()
F1 = TopoDS().Face(Ex.Current())
surf = BRep_Tool().Surface(F1)
MW1 = BRepBuilderAPI_MakeWire()
p1 = gp_Pnt2d(100.,100.)
p2 = gp_Pnt2d(200.,100.)
aline = GCE2d_MakeLine(p1,p2).Value()
MW1.Add(BRepBuilderAPI_MakeEdge(aline,surf,0.,p1.Distance(p2)).Edge())
p1 = p2
p2 = gp_Pnt2d(150.,200.)
aline = GCE2d_MakeLine(p1,p2).Value()
MW1.Add(BRepBuilderAPI_MakeEdge(aline,surf,0.,p1.Distance(p2)).Edge())
p1 = p2
p2 = gp_Pnt2d(100.,100.)
aline = GCE2d_MakeLine(p1,p2).Value()
MW1.Add(BRepBuilderAPI_MakeEdge(aline,surf,0.,p1.Distance(p2)).Edge())
MKF1 = BRepBuilderAPI_MakeFace()
MKF1.Init(surf,0)
MKF1.Add(MW1.Wire())
FP = MKF1.Face()
BRepLib().BuildCurves3d(FP)
CurvePoles = []
CurvePoles.append(gp_Pnt(150.,0.,150.))
CurvePoles.append(gp_Pnt(200.,-100.,150.))
CurvePoles.append(gp_Pnt(150.,-200.,150.))
curve = Geom_BezierCurve(CurvePoles)
E = BRepBuilderAPI_MakeEdge(curve).Edge()
W = BRepBuilderAPI_MakeWire(E).Wire()
MKPipe = BRepFeat_MakePipe(S,FP,F1,W,1,1)
MKPipe.Perform()
res1 = MKPipe.Shape()
ais1.Set(res1)
self.interactive_context.Redisplay(ais1,1,0)
self.view.FitAll(0.01,0)
self.view.ZFitAll(0.01)
self.view.Redraw()