예제 #1
0
 public DxfLeaderObjectContextData(DxfLeader leader, DxfScale scale)
     : base(scale)
 {
     this.list_0              = new List <WW.Math.Point3D>((IEnumerable <WW.Math.Point3D>)leader.Vertices);
     this.vector3D_0          = leader.LastVertexOffsetFromBlock;
     this.vector3D_1          = leader.LastVertexOffsetFromAnnotation;
     this.vector3D_2          = leader.HorizontalDirection;
     this.hookLineDirection_0 = leader.HookLineDirection;
 }
예제 #2
0
        public override void CopyFrom(DxfHandledObject from, CloneContext cloneContext)
        {
            base.CopyFrom(from, cloneContext);
            DxfLeaderObjectContextData objectContextData = (DxfLeaderObjectContextData)from;

            this.list_0              = new List <WW.Math.Point3D>((IEnumerable <WW.Math.Point3D>)objectContextData.Vertices);
            this.vector3D_0          = objectContextData.LastVertexOffsetFromBlock;
            this.vector3D_1          = objectContextData.LastVertexOffsetFromAnnotation;
            this.vector3D_2          = objectContextData.HorizontalDirection;
            this.hookLineDirection_0 = objectContextData.HookLineDirection;
        }
예제 #3
0
        internal override void Read(Class434 or, Class259 ob)
        {
            base.Read(or, ob);
            Interface30 objectBitStream = or.ObjectBitStream;
            int         num             = (int)objectBitStream.imethod_14();

            this.list_0.Clear();
            for (int index = 0; index < num; ++index)
            {
                this.list_0.Add(objectBitStream.imethod_39());
            }
            this.vector3D_2          = objectBitStream.imethod_51();
            this.hookLineDirection_0 = objectBitStream.imethod_6() ? HookLineDirection.Same : HookLineDirection.Opposite;
            this.vector3D_0          = objectBitStream.imethod_51();
            this.vector3D_1          = objectBitStream.imethod_51();
        }
예제 #4
0
        public override void CopyFrom(DxfHandledObject from, CloneContext cloneContext)
        {
            base.CopyFrom(from, cloneContext);
            DxfLeader dxfLeader = (DxfLeader)from;

            if (dxfLeader.dxfDimensionStyleOverrides_0 != null)
            {
                this.dxfDimensionStyleOverrides_0 = dxfLeader.dxfDimensionStyleOverrides_0.Clone(cloneContext);
            }
            this.bool_2               = dxfLeader.bool_2;
            this.leaderPathType_0     = dxfLeader.leaderPathType_0;
            this.leaderCreationType_0 = dxfLeader.leaderCreationType_0;
            this.hookLineDirection_0  = dxfLeader.hookLineDirection_0;
            this.bool_3               = dxfLeader.bool_3;
            this.double_2             = dxfLeader.double_2;
            this.double_3             = dxfLeader.double_3;
            this.list_0.AddRange((IEnumerable <WW.Math.Point3D>)dxfLeader.list_0);
            this.color_0 = dxfLeader.color_0;
            if (dxfLeader.AssociatedAnnotation == null)
            {
                this.AssociatedAnnotation = (DxfEntity)null;
            }
            else if (cloneContext.SourceModel == cloneContext.TargetModel)
            {
                this.AssociatedAnnotation = dxfLeader.AssociatedAnnotation;
            }
            else
            {
                this.AssociatedAnnotation = (DxfEntity)dxfLeader.AssociatedAnnotation.Clone(cloneContext);
                cloneContext.method_0((DxfHandledObject)this.AssociatedAnnotation);
            }
            this.vector3D_0 = dxfLeader.vector3D_0;
            this.vector3D_1 = dxfLeader.vector3D_1;
            this.vector3D_2 = dxfLeader.vector3D_2;
            this.vector3D_3 = dxfLeader.vector3D_3;
        }
예제 #5
0
        internal override void Read(DxfReader r, Class259 objectBuilder)
        {
            base.Read(r, objectBuilder);
            while (!r.method_92(this.AcClass))
            {
                WW.Math.Point3D point3D;
                switch (r.CurrentGroup.Code)
                {
                case 10:
                    this.list_0.Add(new WW.Math.Point3D((double)r.CurrentGroup.Value, 0.0, 0.0));
                    break;

                case 11:
                    this.vector3D_2.X = (double)r.CurrentGroup.Value;
                    break;

                case 12:
                    this.vector3D_0.X = (double)r.CurrentGroup.Value;
                    break;

                case 13:
                    this.vector3D_1.X = (double)r.CurrentGroup.Value;
                    break;

                case 20:
                    point3D   = this.list_0.Last <WW.Math.Point3D>();
                    point3D.Y = (double)r.CurrentGroup.Value;
                    this.list_0[this.list_0.Count - 1] = point3D;
                    break;

                case 21:
                    this.vector3D_2.Y = (double)r.CurrentGroup.Value;
                    break;

                case 22:
                    this.vector3D_0.Y = (double)r.CurrentGroup.Value;
                    break;

                case 23:
                    this.vector3D_1.Y = (double)r.CurrentGroup.Value;
                    break;

                case 30:
                    point3D   = this.list_0.Last <WW.Math.Point3D>();
                    point3D.Z = (double)r.CurrentGroup.Value;
                    this.list_0[this.list_0.Count - 1] = point3D;
                    break;

                case 31:
                    this.vector3D_2.Z = (double)r.CurrentGroup.Value;
                    break;

                case 32:
                    this.vector3D_0.Z = (double)r.CurrentGroup.Value;
                    break;

                case 33:
                    this.vector3D_1.Z = (double)r.CurrentGroup.Value;
                    break;

                case 290:
                    this.hookLineDirection_0 = (bool)r.CurrentGroup.Value ? HookLineDirection.Same : HookLineDirection.Opposite;
                    break;
                }
                r.method_85();
            }
        }