private int read(Stream fd, ref grid_io_block diskBlock, int sizeOf) { var buf = new byte[sizeOf]; var read = fd.Read(buf, 0, sizeOf); diskBlock = buf.ByteArrayToStructure <grid_io_block>(0); return(read); }
public void test() { var fs = File.Open(@"C:\Users\michael\Documents\Mission Planner\sitl\d0\terrain\S36E149.DAT", FileMode.Open); var br = new BinaryReader(fs); var buffer = new byte[2048]; while (br.BaseStream.Position < br.BaseStream.Length) { grid_info info = new grid_info(); var loc = new Locationwp() { lat = -35.363261 * 1.0e7, lng = 149.165230 * 1.0e7 }; calculate_grid_info(loc, ref info); disk_block.block.lat = info.grid_lat; disk_block.block.lon = info.grid_lon; disk_block.block.spacing = grid_spacing; disk_block.block.grid_idx_x = info.grid_idx_x; disk_block.block.grid_idx_y = info.grid_idx_y; disk_block.block.lat_degrees = info.lat_degrees; disk_block.block.lon_degrees = info.lon_degrees; disk_block.block.version = TERRAIN_GRID_FORMAT_VERSION; // 29,5 = 1792000 //read_block(fs); //continue; var off = br.BaseStream.Position; br.Read(buffer, 0, buffer.Length); disk_block = buffer.ByteArrayToStructure <grid_io_block>(0); if (disk_block.block.bitmap > 0 && disk_block.block.lat != 0 && disk_block.block.lon != 0) { Console.WriteLine("Got {0} - {1} at idx {2},{3} off {4}", disk_block.block.lat, disk_block.block.lon, disk_block.block.grid_idx_x, disk_block.block.grid_idx_y, off); } } }
private void memset(ref grid_io_block diskBlock, int i, int sizeOf) { }