Exemplo n.º 1
0
        public override TraceBase Reverse()
        {
            TraceArc reverse = this.Clone() as TraceArc;

            reverse.Start = this.End.Clone() as PointD;
            reverse.End   = this.Start.Clone() as PointD;
            return(reverse);
        }
Exemplo n.º 2
0
        public override TraceBase NewTraceFromStart(double length)
        {
            double   degree   = this.Degree * length / this.Length;
            TraceArc newTrace = this.Clone() as TraceArc;

            newTrace.Mid = this.Start.Rotate(this.Center, degree / 2);
            newTrace.End = this.Start.Rotate(this.Center, degree);
            return(newTrace);
        }
Exemplo n.º 3
0
        public override object Clone()
        {
            TraceArc traceArc = this.MemberwiseClone() as TraceArc;

            traceArc.Start = this.Start.Clone() as PointD;
            traceArc.Mid   = this.Mid.Clone() as PointD;
            traceArc.End   = this.End.Clone() as PointD;
            return(traceArc);
        }