public override bool Run(FeatureContext context) { AdvFeatureTools advTool = new AdvFeatureTools(); // Create the evolution spline Primitive2dTools tool2d = new Primitive2dTools(); float radius = 50; TopoShapeGroup group = new TopoShapeGroup(); group.Add(tool2d.MakeArc(new Vector2(0, radius), radius, 0, 45)); group.Add(tool2d.MakeLine(new Vector2(radius, radius), new Vector2(radius * 2, radius))); TopoShape spline = tool2d.ToBSplineCurve(group); // Create the profile section TopoShape profile = GlobalInstance.BrepTools.MakeCircle(new Vector3(100, 100, 0), 1, Vector3.UNIT_Z); // Create the path List <Vector3> pts = new List <Vector3>(); pts.Add(new Vector3(100, 100, 0)); pts.Add(new Vector3(100, 100, 100)); pts.Add(new Vector3(100, 200, 400)); TopoShape path = GlobalInstance.BrepTools.MakeSpline(pts); // Make sweep TopoShape sweepBody = advTool.MakeSweep(profile, path, spline, true); context.ShowGeometry(sweepBody); return(true); }
private void swee2ToolStripMenuItem_Click(object sender, EventArgs e) { AdvFeatureTools advTool = new AdvFeatureTools(); { Coordinate3 coord = new Coordinate3(); coord.Origion = new Vector3(-0.5f, -1, 0); TopoShape profile = GlobalInstance.BrepTools.MakeRectangle(1,2,0.2f, coord); TopoShape path = GlobalInstance.BrepTools.MakeLine(Vector3.ZERO, new Vector3(0, 0, 100)); //define the "S" curve float[] S ={0,40,-80, 1,10,0}; TopoShape sweepBody = advTool.MakeSweep(profile, path, S, true); renderView.ShowGeometry(sweepBody, ++shapeId); } { Primitive2dTools tool2d = new Primitive2dTools(); float radius = 50; TopoShapeGroup group = new TopoShapeGroup(); group.Add(tool2d.MakeArc(new Vector2(0, radius), radius, 0, 45)); group.Add(tool2d.MakeLine(new Vector2(radius, radius), new Vector2(radius * 2, radius))); TopoShape spline = tool2d.ToBSplineCurve(group); TopoShape profile = GlobalInstance.BrepTools.MakeCircle(new Vector3(100, 100, 0), 1, Vector3.UNIT_Z); List<Vector3> pts = new List<Vector3>(); pts.Add(new Vector3(100, 100, 0)); pts.Add(new Vector3(100, 100, 100)); pts.Add(new Vector3(100, 200, 400)); TopoShape path = GlobalInstance.BrepTools.MakeSpline(pts); TopoShape sweepBody = advTool.MakeSweep(profile, path, spline, true); renderView.ShowGeometry(sweepBody, ++shapeId); } }