Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
            }
        }