示例#1
0
        protected override List <IEntity3D> GetFinalPreview()
        {
            var rslt = new List <IEntity2D>();


            var zMax = InizioZ + Sovrametallo;
            var zMin = InizioZ;

            var l1 = new Line2D {
                Start = new Point2D(zMax, DiametroMax), End = new Point2D(zMin, DiametroMax)
            };

            var l2 = new Line2D {
                Start = l1.End, End = new Point2D(zMin, DiametroMin)
            };

            var l3 = new Line2D {
                Start = l2.End, End = new Point2D(zMax, DiametroMin)
            };

            var l4 = new Line2D {
                Start = l3.End, End = l1.Start
            };

            rslt.Add(l1);
            rslt.Add(l2);
            rslt.Add(l3);
            rslt.Add(l4);

            var d = Entity3DHelper.Get3DProfile(rslt);

            Entity3DHelper.SetPlotStyle(d);

            return(new List <IEntity3D>(d));
        }
示例#2
0
        protected override List <IEntity3D> GetFinalPreview()
        {
            var rslt = new List <IEntity2D>();

            for (int i = 0; i < NumeroGole; i++)
            {
                switch (ScanalaturaType)
                {
                case GrooveDirection.Intern:
                case GrooveDirection.Extern:
                {
                    var step   = i * DistanzaGole;
                    var startZ = StartZ - step;
                    var endZ   = startZ + Larghezza;

                    var p = new Line2D {
                        Start = { X = startZ, Y = DiameterIniziale }, End = { X = startZ, Y = DiameterFinale }
                    };
                    var p1 = new Line2D {
                        Start = p.End, End = { X = endZ, Y = p.End.Y }
                    };
                    var p2 = new Line2D {
                        Start = p1.End, End = { X = p1.End.X, Y = DiameterIniziale }
                    };

                    rslt.Add(p);
                    rslt.Add(p1);
                    rslt.Add(p2);
                } break;

                case GrooveDirection.Face:
                {
                    var step   = i * DistanzaGole;
                    var startD = DiameterIniziale + step;
                    var endD   = DiameterFinale + step;

                    var endZ = StartZ - Larghezza;

                    var p = new Line2D {
                        Start = { X = StartZ, Y = startD }, End = { X = endZ, Y = startD }
                    };
                    var p1 = new Line2D {
                        Start = p.End, End = { X = endZ, Y = endD }
                    };
                    var p2 = new Line2D {
                        Start = p1.End, End = { X = StartZ, Y = endD }
                    };

                    rslt.Add(p);
                    rslt.Add(p1);
                    rslt.Add(p2);
                } break;
                }
            }

            var l = Entity3DHelper.Get3DProfile(rslt);

            Entity3DHelper.SetPlotStyle(l);

            return(new List <IEntity3D>(l));
        }