Example #1
0
        public override void imethod_3(
            Class95 loop,
            Class88 curve,
            Class107 coedge,
            Class917 approximation,
            Class258 accuracy)
        {
            Matrix4D    canonicalTransformation = this.FromCanonicalTransformation;
            Interface27 interval          = this.Interval;
            bool        directionReversed = coedge.DirectionReversed;
            Class102    startVertex       = coedge.StartVertex;
            Class102    endVertex         = coedge.EndVertex;
            Interface27 nterface27;

            if (startVertex != endVertex)
            {
                Matrix4D inverse  = canonicalTransformation.GetInverse();
                Class105 point1   = startVertex.Point;
                Class105 point2   = endVertex.Point;
                Point3D  point3D1 = point1.method_4(inverse);
                Point3D  point3D2 = point2.method_4(inverse);
                nterface27 = (Interface27) new Class437(System.Math.Atan2(point3D1.Y, point3D1.X), System.Math.Atan2(point3D2.Y, point3D2.X));
            }
            else
            {
                Matrix4D inverse = canonicalTransformation.GetInverse();
                Point3D  point3D = startVertex.Point.method_4(inverse);
                double   start   = System.Math.Atan2(point3D.Y, point3D.X);
                double   end     = directionReversed ? start - 2.0 * System.Math.PI : start + 2.0 * System.Math.PI;
                nterface27 = (Interface27) new Class437(start, end);
            }
            int    num1   = Class247.smethod_7(this.vector3D_1.GetLength(), accuracy);
            double start1 = nterface27.Start;
            double end1   = nterface27.End;

            if (directionReversed)
            {
                if (start1 < end1)
                {
                    end1 -= 2.0 * System.Math.PI;
                }
            }
            else if (start1 > end1)
            {
                end1 += 2.0 * System.Math.PI;
            }
            double num2 = (end1 - start1) / (double)num1;

            approximation.method_0(coedge.StartLocation);
            for (int index = 1; index < num1; ++index)
            {
                double  num3  = (double)index * num2 + start1;
                double  x     = System.Math.Cos(num3);
                double  y     = System.Math.Sin(num3);
                Point3D point = canonicalTransformation.Transform(new Point3D(x, y, 0.0));
                approximation.method_0(point);
            }
            approximation.method_0(coedge.EndLocation);
        }
Example #2
0
    private static void smethod_3(Paragraph A_0, bool A_1, Interface27 A_2)
    {
        ArrayList list = smethod_2(A_0, A_1);

        if (list != null)
        {
            foreach (Interface60 interface2 in list)
            {
                if (A_1)
                {
                    A_2.imethod_0((Class9)interface2);
                }
                else
                {
                    A_2.imethod_1((Class9)interface2);
                }
            }
        }
    }
Example #3
0
 public Class438(Interface27 interval, double periodicy)
     : this(interval.Start, interval.End, periodicy)
 {
 }
Example #4
0
 public Class438(Interface27 interval)
     : base(interval)
 {
     this.double_2 = double.PositiveInfinity;
 }
Example #5
0
 internal static void smethod_0(Paragraph A_0, Interface27 A_1)
 {
     smethod_3(A_0, true, A_1);
 }
Example #6
0
 internal static void smethod_1(Paragraph A_0, Interface27 A_1)
 {
     smethod_3(A_0, false, A_1);
 }
Example #7
0
 public override void imethod_0(Interface8 reader)
 {
     base.imethod_0(reader);
     this.class1046_0.imethod_0(reader);
     this.interface27_0 = (Interface27) new Class439(reader.imethod_8(), reader.imethod_8());
 }
Example #8
0
 public Class437(Interface27 interval)
 {
     this.double_0 = interval.Start;
     this.double_1 = interval.End;
 }