Beispiel #1
0
        private void method_16(
            DxfReader r,
            Class285 objectBuilder,
            ref Interface30 binaryDataReader,
            ref Interface30 stringDataReader,
            ref long graphicsDataSizeInBytes,
            ref PagedMemoryStream graphicsData,
            ref Stream currentStream)
        {
            string subclass = (string)r.CurrentGroup.Value;

            r.method_85();
            this.stream_0 = (Stream)null;
            this.stream_1 = (Stream)null;
            while (!r.method_92(subclass))
            {
                if (!this.method_17(r, objectBuilder, ref graphicsDataSizeInBytes, ref graphicsData, ref currentStream))
                {
                    r.method_85();
                }
            }
            if (this.stream_0 != null)
            {
                this.stream_0.Position = 0L;
                binaryDataReader       = Class444.Create(r.ModelBuilder.Version, this.stream_0);
            }
            if (this.stream_1 == null)
            {
                return;
            }
            this.stream_1.Position = 0L;
            stringDataReader       = Class444.Create(r.ModelBuilder.Version, this.stream_1);
        }
Beispiel #2
0
    private static void smethod_20(Class722 A_0, Class722 A_1, Class444 A_2)
    {
        bool     flag;
        int      num    = A_2.method_2();
        int      num2   = A_2.method_3();
        int      num3   = smethod_22(A_0, num, false);
        int      num4   = smethod_22(A_0, num, true);
        int      num5   = smethod_22(A_1, num2, false);
        int      num6   = smethod_22(A_1, num2, true);
        Class448 class2 = smethod_23(A_0, num, num4);
        Class448 class3 = smethod_23(A_1, num2, num5);
        PointF   tf     = smethod_24(class2);
        PointF   tf2    = smethod_24(class3);
        Class448 class4 = new Class448(A_0.method_20(num).method_2(), A_1.method_20(num2).method_2());
        Class448 class5 = new Class448(tf, tf2);

        if (flag = Class448.smethod_8(class4, class5))
        {
            class2 = smethod_23(A_0, num, num3);
            class3 = smethod_23(A_1, num2, num6);
            tf     = smethod_24(class2);
            tf2    = smethod_24(class3);
        }
        if (tf != PointF.Empty)
        {
            A_0.method_6(flag ? num : num4, new Class886(tf));
        }
        if (tf2 != PointF.Empty)
        {
            A_1.method_6(flag ? num6 : num2, new Class886(tf2));
        }
        num4 = smethod_22(A_0, num, true);
        num6 = smethod_22(A_1, num2, true);
        A_0.method_3(num4, A_1.method_9(num6));
    }
Beispiel #3
0
    private static void smethod_19(ArrayList A_0, int A_1)
    {
        Class444 class2 = smethod_21(A_0, A_1);
        Class722 class3 = (Class722)A_0[class2.method_4()];
        Class722 class4 = (Class722)A_0[class2.method_5()];

        smethod_20(class3, class4, class2);
        A_0.RemoveAt(class2.method_4());
        A_0.RemoveAt(class2.method_5());
        A_0.Insert(0, class3);
    }
Beispiel #4
0
        internal override void Read(Class434 or, Class259 objectBuilder)
        {
            base.Read(or, objectBuilder);
            Interface30 objectBitStream = or.ObjectBitStream;
            int         num1;

            if (or.Builder.Version > DxfVersion.Dxf14)
            {
                num1 = objectBitStream.imethod_11();
                if (or.Builder.Version > DxfVersion.Dxf15)
                {
                    objectBitStream.ReadString();
                }
                int num2 = objectBitStream.imethod_11();
                this.dwgVersion_0 = (DwgVersion)(num2 & (int)ushort.MaxValue);
                this.short_1      = (short)(num2 >> 16);
                this.bool_2       = objectBitStream.imethod_6();
                if (this.bool_2)
                {
                    objectBitStream.imethod_11();
                    objectBitStream.imethod_11();
                }
            }
            else
            {
                num1 = objectBitStream.imethod_11();
                objectBitStream.imethod_11();
            }
            this.dxfClass_0 = or.Builder.Model.Classes.GetClassWithClassNumber((short)num1);
            Class1048 class1048 = (Class1048)objectBitStream;

            this.stream_0 = (Stream) new PagedMemoryStream(1024L, 1024);
            this.long_0   = (long)class1048.MainReader.imethod_21((PagedMemoryStream)this.stream_0);
            Class444.Create(or.Builder.Version, this.stream_0);
            if (class1048.StringReader != class1048.MainReader)
            {
                this.stream_1 = (Stream) new PagedMemoryStream(1024L, 1024);
                this.uint_0   = class1048.StringReader.imethod_21((PagedMemoryStream)this.stream_1);
            }
            else
            {
                this.method_13(or.Builder.Version);
            }
            while (class1048.HandleReader.Stream.Position < class1048.HandleReader.Stream.Length)
            {
                ReferenceType           referenceType;
                ulong                   handle = class1048.HandleReader.imethod_34(0UL, true, out referenceType);
                DxfTypedObjectReference typedObjectReference = new DxfTypedObjectReference(referenceType);
                this.list_0.Add(typedObjectReference);
                objectBuilder.ChildBuilders.Add((Interface10)typedObjectReference.method_0(handle));
            }
        }
Beispiel #5
0
    private static Class444 smethod_21(ArrayList A_0, int A_1)
    {
        Class444 class2 = null;

        for (int i = 0; i < A_0.Count; i++)
        {
            if (A_1 != i)
            {
                Class444 class3 = new Class444((Class722)A_0[A_1], (Class722)A_0[i], A_1, i);
                if ((class2 == null) || (class3.method_1() < class2.method_1()))
                {
                    class2 = class3;
                }
            }
        }
        return(class2);
    }
Beispiel #6
0
        private void method_20(DxfWriter w)
        {
            Interface30 binaryDataReader = Class444.Create(w.Version, this.stream_0);

            binaryDataReader.imethod_4(0L);
            Interface30 stringDataReader = (Interface30)null;

            if (this.stream_1 != null)
            {
                stringDataReader = Class444.Create(w.Version, this.stream_1);
                stringDataReader.imethod_4(0L);
            }
            DxfProxyEntity.Class362 class362 = new DxfProxyEntity.Class362(this.dwgVersion_0, this.long_0, binaryDataReader, this.uint_0, stringDataReader, this.list_0);
            while (!class362.IsAtEndOfStream)
            {
                Struct18 group = class362.method_0();
                w.Write(group);
            }
        }
Beispiel #7
0
        internal override void Write(Class432 ow)
        {
            base.Write(ow);
            Interface29 objectWriter = ow.ObjectWriter;

            if (ow.Version > DxfVersion.Dxf14)
            {
                objectWriter.imethod_33(this.dxfClass_0 == null ? 0 : (int)this.dxfClass_0.ClassNumber);
                if (ow.Version > DxfVersion.Dxf15)
                {
                    objectWriter.imethod_4("cn:" + (this.dxfClass_0 == null ? string.Empty : this.dxfClass_0.CPlusPlusClassName));
                }
                objectWriter.imethod_33((int)(this.dwgVersion_0 | (DwgVersion)((int)this.short_1 << 16)));
                objectWriter.imethod_14(this.bool_2);
                if (this.bool_2)
                {
                    objectWriter.imethod_33(this.dxfClass_0 == null ? 0 : (int)this.dxfClass_0.ItemClassId);
                    objectWriter.imethod_33(this.dxfClass_0 == null ? 0 : (int)this.dxfClass_0.ClassNumber);
                }
            }
            else
            {
                objectWriter.imethod_33(this.dxfClass_0 == null ? 0 : (int)this.dxfClass_0.ItemClassId);
                objectWriter.imethod_33(this.dxfClass_0 == null ? 0 : (int)this.dxfClass_0.ClassNumber);
            }
            Interface30 binaryDataReader = Class444.Create(ow.Version, this.stream_0);

            binaryDataReader.imethod_4(0L);
            Interface30 stringDataReader = (Interface30)null;

            if (this.stream_1 != null)
            {
                stringDataReader = Class444.Create(ow.Version, this.stream_1);
                stringDataReader.imethod_4(0L);
            }
            if (this.bool_2 && this.method_23(ow.Version))
            {
                DxfProxyEntity.Class362 class362 = new DxfProxyEntity.Class362(this.dwgVersion_0, this.long_0, binaryDataReader, this.uint_0, stringDataReader, this.list_0);
                DxfProxyEntity.Class361 class361 = new DxfProxyEntity.Class361(ow.ObjectWriter);
                while (!class362.IsAtEndOfStream)
                {
                    class361.imethod_0(class362.method_0());
                }
            }
            else
            {
                this.method_14(ow.ObjectWriter, this.stream_0, this.long_0);
                if (ow.Version > DxfVersion.Dxf18)
                {
                    if (stringDataReader != null && this.uint_0 > 0U)
                    {
                        this.method_14((Interface29)((Class990)ow.ObjectWriter).StringBitStreamWriter, this.stream_1, (long)this.uint_0);
                    }
                }
                else
                {
                    this.method_15(ow.ObjectWriter);
                }
            }
            foreach (DxfTypedObjectReference typedObjectReference in this.list_0)
            {
                objectWriter.imethod_42(typedObjectReference.ReferenceType, (DxfHandledObject)typedObjectReference.ObjectReference.Value);
            }
        }
 public abstract void Visit(Class444 c);
 public override void Visit(Class444 c) { }