Exemple #1
0
        private static void smethod_0(DxfPolyfaceMesh mesh, Class285 entityBuilder)
        {
            Class301 class301 = entityBuilder as Class301;

            if (class301 == null)
            {
                return;
            }
            mesh.Vertices.Add((DxfVertex3D)class301.Entity);
        }
Exemple #2
0
        public override void ResolveReferences(Class374 modelBuilder)
        {
            base.ResolveReferences(modelBuilder);
            DxfPolyfaceMesh entity = (DxfPolyfaceMesh)this.Entity;

            if (entity != null)
            {
                if (this.ulong_6 != 0UL)
                {
                    for (Class285 entityBuilder = modelBuilder.method_6(this.ulong_6); entityBuilder != null; entityBuilder = modelBuilder.method_7(entityBuilder))
                    {
                        Class304.smethod_0(entity, entityBuilder);
                        if ((long)entityBuilder.HandledObject.Handle == (long)this.ulong_7)
                        {
                            break;
                        }
                    }
                    for (Class285 entityBuilder = modelBuilder.method_6(this.ulong_6); entityBuilder != null; entityBuilder = modelBuilder.method_7(entityBuilder))
                    {
                        this.method_2(modelBuilder, entity, entityBuilder);
                        if ((long)entityBuilder.HandledObject.Handle == (long)this.ulong_7)
                        {
                            break;
                        }
                    }
                }
                else if (this.list_1 != null)
                {
                    for (int index = 0; index < this.list_1.Count; ++index)
                    {
                        ulong handle = this.list_1[index];
                        Class304.smethod_0(entity, modelBuilder.method_6(handle));
                    }
                    for (int index = 0; index < this.list_1.Count; ++index)
                    {
                        ulong handle = this.list_1[index];
                        this.method_2(modelBuilder, entity, modelBuilder.method_6(handle));
                    }
                }
            }
            if (this.ulong_8 == 0UL)
            {
                return;
            }
            DxfSequenceEnd dxfSequenceEnd = modelBuilder.method_4 <DxfSequenceEnd>(this.ulong_8);

            if (dxfSequenceEnd == null)
            {
                return;
            }
            entity.SeqEnd = dxfSequenceEnd;
        }
Exemple #3
0
        private void method_2(Class374 modelBuilder, DxfPolyfaceMesh mesh, Class285 entityBuilder)
        {
            Class286 class286 = entityBuilder as Class286;

            if (class286 == null)
            {
                return;
            }
            DxfMeshFace entity = (DxfMeshFace)class286.Entity;

            if (class286.Vertex0Index != (short)0)
            {
                int index = Math.Abs((int)class286.Vertex0Index) - 1;
                if (index >= mesh.Vertices.Count)
                {
                    this.method_3(modelBuilder, mesh, (int)class286.Vertex0Index);
                    return;
                }
                entity.Corners.Add(new DxfMeshFace.Corner(mesh.Vertices[index], class286.Vertex0Index > (short)0));
            }
            if (class286.Vertex1Index != (short)0)
            {
                int index = Math.Abs((int)class286.Vertex1Index) - 1;
                if (index >= mesh.Vertices.Count)
                {
                    this.method_3(modelBuilder, mesh, (int)class286.Vertex1Index);
                    return;
                }
                entity.Corners.Add(new DxfMeshFace.Corner(mesh.Vertices[index], class286.Vertex1Index > (short)0));
            }
            if (class286.Vertex2Index != (short)0)
            {
                int index = Math.Abs((int)class286.Vertex2Index) - 1;
                if (index >= mesh.Vertices.Count)
                {
                    this.method_3(modelBuilder, mesh, (int)class286.Vertex2Index);
                    return;
                }
                entity.Corners.Add(new DxfMeshFace.Corner(mesh.Vertices[index], class286.Vertex2Index > (short)0));
            }
            if (class286.Vertex3Index != (short)0)
            {
                int index = Math.Abs((int)class286.Vertex3Index) - 1;
                if (index >= mesh.Vertices.Count)
                {
                    this.method_3(modelBuilder, mesh, (int)class286.Vertex3Index);
                    return;
                }
                entity.Corners.Add(new DxfMeshFace.Corner(mesh.Vertices[index], class286.Vertex3Index > (short)0));
            }
            mesh.Faces.Add(entity);
        }
Exemple #4
0
        private void method_3(Class374 modelBuilder, DxfPolyfaceMesh mesh, int vertexIndex)
        {
            DxfBlock objectSoftReference = mesh.OwnerObjectSoftReference as DxfBlock;

            if (objectSoftReference != null)
            {
                ((Class318)modelBuilder.method_5(objectSoftReference.Handle)).method_1((DxfEntity)mesh);
            }
            this.IsValid = false;
            modelBuilder.Messages.Add(new DxfMessage(DxfStatus.InvalidMeshFaceVertexIndex, Severity.Error, "target", (object)mesh)
            {
                Parameters =
                {
                    {
                        "VertexIndex",
                        (object)vertexIndex
                    }
                }
            });
        }
Exemple #5
0
 public void Visit(DxfPolyfaceMesh mesh)
 {
     this.method_0((DxfEntity)mesh);
     this.method_2(mesh.Faces.Count + mesh.Vertices.Count);
 }
Exemple #6
0
 public void Visit(DxfPolyfaceMesh mesh)
 {
     this.bool_0 = true;
 }
Exemple #7
0
 public Class304(DxfPolyfaceMesh polyline)
     : base((DxfEntity)polyline)
 {
 }
 /// <summary>
 /// Visits the specified entity.
 /// See the <see cref="IEntityVisitor"/> for more details.
 /// </summary>
 public override void Visit(DxfPolyfaceMesh mesh)
 {
     HandleEntity(mesh);  // don't care for vertices, as they ought to have the same layer
 }