예제 #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);
        }
예제 #2
0
    // Token: 0x06000497 RID: 1175 RVA: 0x00004D6C File Offset: 0x00002F6C
    public override Class80 vmethod_4()
    {
        Class105 @class = new Class105();

        @class.method_5(this.method_4());
        @class.method_7(this.method_6());
        @class.method_3(base.method_2());
        @class.method_1(base.method_0());
        return(@class);
    }
예제 #3
0
    // Token: 0x06000499 RID: 1177 RVA: 0x00021ACC File Offset: 0x0001FCCC
    public override Class80 vmethod_3(Class80 class80_0)
    {
        base.method_1(class80_0.method_0());
        int num = class80_0.vmethod_2();

        if (num == 3)
        {
            Class105 @class = (Class105)class80_0;
            this.method_5(@class.method_4());
            this.method_7(@class.method_6());
            base.method_3(@class.method_2());
            return(this);
        }
        throw new ArgumentOutOfRangeException();
    }
예제 #4
0
        private void method_6(JsonWriter jsonWriter_0, Interface10 interface10_0, XmlNamespaceManager xmlNamespaceManager_0, bool bool_2)
        {
            Func <Interface10, bool> predicate = null;
            Class105 class2 = new Class105 {
                interface10_0 = interface10_0
            };

            switch (class2.interface10_0.XmlNodeType_0)
            {
            case XmlNodeType.Element:
                if (this.method_4(class2.interface10_0))
                {
                    if (predicate == null)
                    {
                        predicate = new Func <Interface10, bool>(class2.method_0);
                    }
                    if (class2.interface10_0.Prop_0.All <Interface10>(predicate) && (class2.interface10_0.Prop_0.Count > 0))
                    {
                        this.method_5(jsonWriter_0, class2.interface10_0, xmlNamespaceManager_0, false);
                        return;
                    }
                }
                xmlNamespaceManager_0.PushScope();
                foreach (Interface10 interface2 in class2.interface10_0.Prop_1)
                {
                    if (interface2.String_2 == "http://www.w3.org/2000/xmlns/")
                    {
                        string prefix = (interface2.String_0 != "xmlns") ? interface2.String_0 : string.Empty;
                        string uri    = interface2.String_1;
                        xmlNamespaceManager_0.AddNamespace(prefix, uri);
                    }
                }
                if (bool_2)
                {
                    jsonWriter_0.WritePropertyName(this.method_3(class2.interface10_0, xmlNamespaceManager_0));
                }
                if ((!this.method_17(class2.interface10_0.Prop_1).Any <Interface10>() && (class2.interface10_0.Prop_0.Count == 1)) && (class2.interface10_0.Prop_0[0].XmlNodeType_0 == XmlNodeType.Text))
                {
                    jsonWriter_0.WriteValue(class2.interface10_0.Prop_0[0].String_1);
                }
                else if ((class2.interface10_0.Prop_0.Count == 0) && Class191.smethod_0 <Interface10>(class2.interface10_0.Prop_1))
                {
                    jsonWriter_0.WriteNull();
                }
                else
                {
                    jsonWriter_0.WriteStartObject();
                    for (int i = 0; i < class2.interface10_0.Prop_1.Count; i++)
                    {
                        this.method_6(jsonWriter_0, class2.interface10_0.Prop_1[i], xmlNamespaceManager_0, true);
                    }
                    this.method_5(jsonWriter_0, class2.interface10_0, xmlNamespaceManager_0, true);
                    jsonWriter_0.WriteEndObject();
                }
                xmlNamespaceManager_0.PopScope();
                return;

            case XmlNodeType.Attribute:
            case XmlNodeType.Text:
            case XmlNodeType.CDATA:
            case XmlNodeType.ProcessingInstruction:
            case XmlNodeType.Whitespace:
            case XmlNodeType.SignificantWhitespace:
                if (!(class2.interface10_0.String_2 == "http://www.w3.org/2000/xmlns/") || !(class2.interface10_0.String_1 == "http://james.newtonking.com/projects/json"))
                {
                    if ((class2.interface10_0.String_2 != "http://james.newtonking.com/projects/json") || (class2.interface10_0.String_0 != "Array"))
                    {
                        if (bool_2)
                        {
                            jsonWriter_0.WritePropertyName(this.method_3(class2.interface10_0, xmlNamespaceManager_0));
                        }
                        jsonWriter_0.WriteValue(class2.interface10_0.String_1);
                    }
                    return;
                }
                return;

            case XmlNodeType.Comment:
                if (bool_2)
                {
                    jsonWriter_0.WriteComment(class2.interface10_0.String_1);
                }
                return;

            case XmlNodeType.Document:
            case XmlNodeType.DocumentFragment:
                this.method_5(jsonWriter_0, class2.interface10_0, xmlNamespaceManager_0, bool_2);
                return;

            case XmlNodeType.XmlDeclaration:
            {
                Interface13 interface3 = (Interface13)class2.interface10_0;
                jsonWriter_0.WritePropertyName(this.method_3(class2.interface10_0, xmlNamespaceManager_0));
                jsonWriter_0.WriteStartObject();
                if (!string.IsNullOrEmpty(interface3.String_3))
                {
                    jsonWriter_0.WritePropertyName("@version");
                    jsonWriter_0.WriteValue(interface3.String_3);
                }
                if (!string.IsNullOrEmpty(interface3.String_4))
                {
                    jsonWriter_0.WritePropertyName("@encoding");
                    jsonWriter_0.WriteValue(interface3.String_4);
                }
                if (!string.IsNullOrEmpty(interface3.String_5))
                {
                    jsonWriter_0.WritePropertyName("@standalone");
                    jsonWriter_0.WriteValue(interface3.String_5);
                }
                jsonWriter_0.WriteEndObject();
                return;
            }
            }
            throw new JsonSerializationException("Unexpected XmlNodeType when serializing nodes: " + class2.interface10_0.XmlNodeType_0);
        }
예제 #5
0
 public void method_6(Class105 startPoint, Class105 endPoint)
 {
     this.method_5(this.method_2(startPoint), this.method_2(endPoint));
 }
예제 #6
0
 public int method_2(Class105 point)
 {
     return(this.method_0(point.method_4(this.matrix4D_0)));
 }
예제 #7
0
 internal static void smethod_0(Class857 A_0, Class105 A_1)
 {
 }
예제 #8
0
    // Token: 0x0600049A RID: 1178 RVA: 0x00021B24 File Offset: 0x0001FD24
    public override bool vmethod_7(Class104 class104_0)
    {
        Class105 @class = (Class105)class104_0;

        return(this.method_4() == @class.method_4() && Class30.smethod_0(this.method_6(), @class.method_6()));
    }
 public abstract void Visit(Class105 c);
 public override void Visit(Class105 c) { }