private void ReadVertices(long address, int bufferIndex, int count) { _reader.BaseStream.Seek(address, SeekOrigin.Begin); for (var i = bufferIndex; i < bufferIndex + count; i++) { _vertices[i] = new VertexAC(_reader.ReadInt16().Reverse(), _reader.ReadInt16().Reverse(), _reader.ReadInt16().Reverse(), _reader.ReadInt16().Reverse(), (short)(_reader.ReadInt16().Reverse() * 0.03125), (short)(_reader.ReadInt16().Reverse() * 0.03125), _reader.ReadByte(), _reader.ReadByte(), _reader.ReadByte(), _reader.ReadByte()); } }
private (Point3D[], VertexAC[]) LoadVertices(BinaryReader reader, long vtxOffset, int count) { var vectors = new VertexAC[count]; var points = new Point3D[count]; // Seek to the vertex begin offset. reader.BaseStream.Seek(vtxOffset, SeekOrigin.Begin); // Read vectors from file. for (var i = 0; i < count; i++) { vectors[i] = new VertexAC(reader.ReadInt16().Reverse(), reader.ReadInt16().Reverse(), reader.ReadInt16().Reverse(), reader.ReadInt16().Reverse(), reader.ReadInt16().Reverse(), reader.ReadInt16().Reverse(), reader.ReadByte(), reader.ReadByte(), reader.ReadByte(), reader.ReadByte()); points[i] = vectors[i].ToPoint3D(); } return(points, vectors); }