public void VisitColourFloat(ColourData field) { if (!FilterString(field, field.Name)) { FilterString(field, field.Value); } }
public void VisitColourInt(ColourData field) { SeekToOffset(field.Offset); if (field.Value.Length == 7) { field.Value = field.Value.Insert(1, "FF"); } foreach (char formatChar in field.Format) { switch (formatChar) { case 'a': byte alpha = byte.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber); _writer.WriteByte(alpha); break; case 'r': byte red = byte.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber); _writer.WriteByte(red); break; case 'g': byte green = byte.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber); _writer.WriteByte(green); break; case 'b': byte blue = byte.Parse(field.Value.Replace("#", "").Remove(0, 6), NumberStyles.HexNumber); _writer.WriteByte(blue); break; } } }
public void VisitColourFloat(ColourData field) { SeekToOffset(field.Offset); foreach(var formatChar in field.Format.ToCharArray()) { switch(formatChar) { case 'a': var alpha = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber)) / 255; _writer.WriteFloat(alpha); break; case 'r': var red = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber)) / 255; _writer.WriteFloat(red); break; case 'g': var green = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber)) / 255; _writer.WriteFloat(green); break; case 'b': var blue = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 6), NumberStyles.HexNumber)) / 255; _writer.WriteFloat(blue); break; } } }
public void VisitColourFloat(ColourData field) { SeekToOffset(field.Offset); if (field.Value.Length == 7) field.Value = field.Value.Insert(1, "FF"); foreach (char formatChar in field.Format) { switch (formatChar) { case 'a': float alpha = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber))/255; _writer.WriteFloat(alpha); break; case 'r': float red = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber))/255; _writer.WriteFloat(red); break; case 'g': float green = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber))/255; _writer.WriteFloat(green); break; case 'b': float blue = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 6), NumberStyles.HexNumber))/255; _writer.WriteFloat(blue); break; } } }
public void VisitColourInt(ColourData field) { SeekToOffset(field.Offset); int offset = 0; if (_reader.Endianness == Endian.BigEndian && field.Format.Length == 3) { offset = 1; } byte[] colorArray = new byte[4]; for (int i = offset; i < 4; i++) { colorArray[i] = _reader.ReadByte(); } if (_reader.Endianness == Endian.LittleEndian) { Array.Reverse(colorArray); } if (field.Format.Length == 3) { colorArray[0] = 0xFF; } string colorValue = String.Concat(Array.ConvertAll(colorArray, x => x.ToString("X2"))); field.Value = "#" + colorValue; }
public void VisitColourInt(ColourData field) { SeekToOffset(field.Offset); string colorValue = "#"; foreach (char formatChar in field.Format) { colorValue += (_reader.ReadByte().ToString("X2")); } field.Value = colorValue; }
public void VisitColourFloat(ColourData field) { SeekToOffset(field.Offset); string colorValue = "#"; foreach (char formatChar in field.Format) { colorValue += ((int)(_reader.ReadFloat() * 255)).ToString("X2"); } field.Value = colorValue; }
public void VisitColourInt(ColourData field) { SeekToOffset(field.Offset); byte[] colorArray = new byte[4]; if (field.Value.Length == 7) { field.Value = field.Value.Insert(1, "FF"); } foreach (char formatChar in field.Format) { switch (formatChar) { case 'a': colorArray[0] = byte.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber); break; case 'r': colorArray[1] = byte.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber); break; case 'g': colorArray[2] = byte.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber); break; case 'b': colorArray[3] = byte.Parse(field.Value.Replace("#", "").Remove(0, 6), NumberStyles.HexNumber); break; } } int offset = 1; if (_writer.Endianness == Endian.LittleEndian) { Array.Reverse(colorArray); offset = 0; } if (field.Format.Length == 3) { _writer.WriteBlock(colorArray, offset, 3); } else { _writer.WriteBlock(colorArray); } }
public void VisitColourInt(ColourData field) { SeekToOffset(field.Offset); byte[] colorArray = new byte[field.Format.Length]; for (int i = 0; i < field.Format.Length; i++) { colorArray[i] = _reader.ReadByte(); } if (_cache.Engine == EngineType.FourthGeneration) { Array.Reverse(colorArray); } string colorValue = String.Concat(Array.ConvertAll(colorArray, x => x.ToString("X2"))); field.Value = "#" + colorValue; }
public void VisitColourFloat(ColourData field) { SeekToOffset(field.Offset); if (field.Value.Length == 7) { field.Value = field.Value.Insert(1, "FF"); } foreach (char formatChar in field.Format) { switch (formatChar) { case 'a': float alpha = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber)) / 255; _writer.WriteFloat(alpha); break; case 'r': float red = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber)) / 255; _writer.WriteFloat(red); break; case 'g': float green = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber)) / 255; _writer.WriteFloat(green); break; case 'b': float blue = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 6), NumberStyles.HexNumber)) / 255; _writer.WriteFloat(blue); break; } } }
public void VisitColourInt(ColourData field) { SeekToOffset(field.Offset); string colorValue = "#"; foreach(var formatChar in field.Format.ToCharArray()) colorValue += (_reader.ReadByte().ToString("X2")); field.Value = colorValue; }
public void VisitColourInt(ColourData field) { if (!FilterString(field, field.Name)) FilterString(field, field.Value); }
public void VisitColourFloat(ColourData field) { SeekToOffset(field.Offset); string colorValue = "#"; foreach (var formatChar in field.Format.ToCharArray()) colorValue += ((int)(_reader.ReadFloat() * 255)).ToString("X2"); field.Value = colorValue; }
public void VisitColourInt(ColourData field) { SeekToOffset(field.Offset); foreach (var formatChar in field.Format.ToCharArray()) { switch (formatChar) { case 'a': var alpha = byte.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber); _writer.WriteByte(alpha); break; case 'r': var red = byte.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber); _writer.WriteByte(red); break; case 'g': var green = byte.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber); _writer.WriteByte(green); break; case 'b': var blue = byte.Parse(field.Value.Replace("#", "").Remove(0, 6).Remove(2), NumberStyles.HexNumber); _writer.WriteByte(blue); break; } } }
public void VisitColourFloat(ColourData field) { }
public void VisitColourInt(ColourData field) { AddWidth(_colourValue.Width); }
public void VisitColourInt(ColourData field) { }
public void VisitColourFloat(ColourData field) { AddWidth(_colourValue.Width); }
public void VisitColourInt(ColourData field) { SeekToOffset(field.Offset); byte[] colorArray = new byte[field.Format.Length]; for (int i = 0; i < field.Format.Length; i++) colorArray[i] = _reader.ReadByte(); if (_cache.Engine == EngineType.FourthGeneration) Array.Reverse(colorArray); string colorValue = String.Concat(Array.ConvertAll(colorArray, x => x.ToString("X2"))); field.Value = "#" + colorValue; }
public void VisitColourInt(ColourData field) { SeekToOffset(field.Offset); if (field.Value.Length == 7) field.Value = field.Value.Insert(1, "FF"); foreach (char formatChar in field.Format) { switch (formatChar) { case 'a': byte alpha = byte.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber); _writer.WriteByte(alpha); break; case 'r': byte red = byte.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber); _writer.WriteByte(red); break; case 'g': byte green = byte.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber); _writer.WriteByte(green); break; case 'b': byte blue = byte.Parse(field.Value.Replace("#", "").Remove(0, 6), NumberStyles.HexNumber); _writer.WriteByte(blue); break; } } }