public void updateQPFRes(StructQPF tmp) { StructQPF[] tmpdata; if (this.data.Length == 0) { tmpdata = new StructQPF[1]; tmpdata[0] = new StructQPF(); tmpdata[0] = tmp; this.header = Hexcnv.StringToByteArrayFastest("6E466C61766F7220517565737450726F700003000000"); } else { tmpdata = new StructQPF[this.data.Length + 1]; for (int i = 0; i < this.data.Length; i++) { tmpdata[i] = new StructQPF(); tmpdata[i] = data[i]; } tmpdata[this.data.Length] = new StructQPF(); tmpdata[this.data.Length] = tmp; } this.data = tmpdata; this.cnt = cnt + 1; this.edit = true; }
private void loadData() { try { if (File.Exists(this.fullpath)) { FileStream fileStream = File.Open(this.fullpath, FileMode.Open, FileAccess.Read, FileShare.Read); BinaryReader binaryReader = new BinaryReader(fileStream, Encoding.ASCII); this.header = new byte[22]; for (int i = 0; i < 22; i++) { this.header[i] = binaryReader.ReadByte(); } //binaryReader.ReadBytes(22); this.cnt = binaryReader.ReadInt32(); data = new StructQPF[this.cnt]; for (int i = 1; i <= cnt; i++) { data[i - 1] = new StructQPF(); data[i - 1].id = binaryReader.ReadInt32(); if (this.loadstrings) { data[i - 1].name = this.strings.get_Fname(data[i - 1].id + 170000000); } else { data[i - 1].name = "No StringResource found!"; } /*data[i - 1].x = binaryReader.ReadSingle() / (float)5.25; * data[i - 1].y = mirrory((int)(binaryReader.ReadSingle() / (float)5.25));*/ data[i - 1].x = binaryReader.ReadSingle() + Hexcnv.GetCoords(this.filename, 1); data[i - 1].y = binaryReader.ReadSingle() + Hexcnv.GetCoords(this.filename, 2); data[i - 1].offset_z = binaryReader.ReadSingle(); data[i - 1].rotation_x = binaryReader.ReadSingle(); data[i - 1].rotation_y = binaryReader.ReadSingle(); data[i - 1].rotation_z = binaryReader.ReadSingle(); data[i - 1].scale_x = binaryReader.ReadSingle(); data[i - 1].scale_y = binaryReader.ReadSingle(); data[i - 1].scale_z = binaryReader.ReadSingle(); data[i - 1].id2 = binaryReader.ReadInt32(); binaryReader.ReadByte(); binaryReader.ReadInt32(); } binaryReader.Close(); fileStream.Close(); this.error = false; this.check = true; } } catch { this.error = true; this.MapImg = new Bitmap(3072, 3072); this.check = false; } }
public void deleteQPF(int id, int index) { StructQPF[] tmpdata = new StructQPF[this.data.Length - 1]; int j = 0; for (int i = 0; i < this.data.Length; i++) { if (i != index) { tmpdata[j] = new StructQPF(); tmpdata[j] = data[i]; j++; } } this.data = tmpdata; this.cnt = cnt - 1; this.edit = true; }