pythonCascade Sample Problems

Topology Primitives: Thru section creation

 

 

        c1 = gp_Circ(gp_Ax2(gp_Pnt(-100.,0.,-100.),gp_Dir(0.,0.,1.)),40.)

        E1 = BRepBuilderAPI_MakeEdge(c1).Edge()

        W1 = BRepBuilderAPI_MakeWire(E1).Wire()

        sec1 = AIS_Shape(W1)

        self.interactive_context.Display(sec1,1)

 

        c2 = gp_Circ(gp_Ax2(gp_Pnt(-10.,0.,-0.),gp_Dir(0.,0.,1.)),40.)

        E2 = BRepBuilderAPI_MakeEdge(c2).Edge()

        W2 = BRepBuilderAPI_MakeWire(E2).Wire()

        sec2 = AIS_Shape(W2)

        self.interactive_context.Display(sec2,2)

       

        c3 = gp_Circ(gp_Ax2(gp_Pnt(-75.,0.,100.),gp_Dir(0.,0.,1.)),40.)

        E3 = BRepBuilderAPI_MakeEdge(c3).Edge()

        W3 = BRepBuilderAPI_MakeWire(E3).Wire()

        sec3 = AIS_Shape(W3)

        self.interactive_context.Display(sec3,2)

 

        c4= gp_Circ(gp_Ax2(gp_Pnt(0.,0.,200.),gp_Dir(0.,0.,1.)),40.)

        E4 = BRepBuilderAPI_MakeEdge(c4).Edge()

        W4 = BRepBuilderAPI_MakeWire(E4).Wire()

        sec4 = AIS_Shape(W4)

        self.interactive_context.Display(sec4,2)

 

        generator = BRepOffsetAPI_ThruSections(0,1,1.0e-06)

        generator.AddWire(W1)

        generator.AddWire(W2)

        generator.AddWire(W3)

        generator.AddWire(W4)

        generator.Build()

        S1 = generator.Shape()

        ais1 = AIS_Shape(S1)

        self.interactive_context.SetMaterial(ais1,Graphic3d_NOM_PLASTIC,0)

        self.interactive_context.SetColor(ais1,Quantity_NOC_MATRABLUE,0)

        self.interactive_context.SetDisplayMode(ais1,AIS_Shaded,0)

        self.interactive_context.Display(ais1,1)

 

 

        c1b = gp_Circ(gp_Ax2(gp_Pnt(100.,0.,-100.),gp_Dir(0.,0.,1.)),40.)

        E1b = BRepBuilderAPI_MakeEdge(c1b).Edge()

        W1b = BRepBuilderAPI_MakeWire(E1b).Wire()

        sec1b = AIS_Shape(W1b)

        self.interactive_context.Display(sec1b,1)

 

        c2b = gp_Circ(gp_Ax2(gp_Pnt(210.,0.,0.),gp_Dir(0.,0.,1.)),40.)

        E2b = BRepBuilderAPI_MakeEdge(c2b).Edge()

        W2b = BRepBuilderAPI_MakeWire(E2b).Wire()

        sec2b = AIS_Shape(W2b)

        self.interactive_context.Display(sec2b,1)

       

        c3b = gp_Circ(gp_Ax2(gp_Pnt(275.,0.,100.),gp_Dir(0.,0.,1.)),40.)

        E3b = BRepBuilderAPI_MakeEdge(c3b).Edge()

        W3b = BRepBuilderAPI_MakeWire(E3b).Wire()

        sec3b = AIS_Shape(W3b)

        self.interactive_context.Display(sec3b,1)

 

        c4b= gp_Circ(gp_Ax2(gp_Pnt(200.,0.,200.),gp_Dir(0.,0.,1.)),40.)

        E4b = BRepBuilderAPI_MakeEdge(c4b).Edge()

        W4b = BRepBuilderAPI_MakeWire(E4b).Wire()

        sec4b = AIS_Shape(W4b)

        self.interactive_context.Display(sec4b,1)

 

        generatorb = BRepOffsetAPI_ThruSections(1,0,1.0e-06)

        generatorb.AddWire(W1b)

        generatorb.AddWire(W2b)

        generatorb.AddWire(W3b)

        generatorb.AddWire(W4b)

        generatorb.Build()

        S2 = generatorb.Shape()

        ais2 = AIS_Shape(S2)

        self.interactive_context.SetMaterial(ais2,Graphic3d_NOM_PLASTIC,0)

        self.interactive_context.SetColor(ais2,Quantity_NOC_ALICEBLUE,0)

        self.interactive_context.SetDisplayMode(ais2,AIS_Shaded,0)

        self.interactive_context.Display(ais2,1)