From 782cea668b9807de2bc79448156708277b031606 Mon Sep 17 00:00:00 2001 From: chrisf Date: Fri, 6 Jul 2007 01:20:10 +0000 Subject: [PATCH] remapping! git-svn-id: svn://svn.ijw.co.nz/svn/OpenRa@1108 993157c7-ee19-0410-b2c4-bb4e9862e678 --- OpenRa.FileFormats/OpenRa.FileFormats.csproj | 2 ++ OpenRa.FileFormats/Palette.cs | 6 ++++ OpenRa.FileFormats/PaletteRemap.cs | 36 +++++++++++++++++++ ShpViewer/ShpViewForm.cs | 3 ++ atek.shp | Bin 0 -> 2348 bytes blue.rem | 1 + fact.shp | Bin 0 -> 26153 bytes gold.rem | 1 + gray.rem | 1 + green.rem | 1 + orange.rem | Bin 0 -> 48 bytes red.rem | Bin 0 -> 48 bytes salmon.rem | Bin 0 -> 48 bytes teal.rem | Bin 0 -> 48 bytes 14 files changed, 51 insertions(+) create mode 100644 OpenRa.FileFormats/PaletteRemap.cs create mode 100644 atek.shp create mode 100644 blue.rem create mode 100644 fact.shp create mode 100644 gold.rem create mode 100644 gray.rem create mode 100644 green.rem create mode 100644 orange.rem create mode 100644 red.rem create mode 100644 salmon.rem create mode 100644 teal.rem diff --git a/OpenRa.FileFormats/OpenRa.FileFormats.csproj b/OpenRa.FileFormats/OpenRa.FileFormats.csproj index 9ac47d6448..7bd764613a 100644 --- a/OpenRa.FileFormats/OpenRa.FileFormats.csproj +++ b/OpenRa.FileFormats/OpenRa.FileFormats.csproj @@ -36,6 +36,7 @@ + @@ -47,6 +48,7 @@ + diff --git a/OpenRa.FileFormats/Palette.cs b/OpenRa.FileFormats/Palette.cs index 3976b1b67d..f366157d5c 100644 --- a/OpenRa.FileFormats/Palette.cs +++ b/OpenRa.FileFormats/Palette.cs @@ -32,5 +32,11 @@ namespace OpenRa.FileFormats colors[3] = Color.FromArgb(178, 0, 0, 0); colors[4] = Color.FromArgb(140, 0, 0, 0); } + + public Palette(Palette p, PaletteRemap r) + { + for (int i = 0; i < 256; i++) + colors.Add(r.GetRemappedColor(p.GetColor(i), i)); + } } } diff --git a/OpenRa.FileFormats/PaletteRemap.cs b/OpenRa.FileFormats/PaletteRemap.cs new file mode 100644 index 0000000000..f4d3b57c41 --- /dev/null +++ b/OpenRa.FileFormats/PaletteRemap.cs @@ -0,0 +1,36 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Drawing; + +namespace OpenRa.FileFormats +{ + public class PaletteRemap + { + List remapColors = new List(); + + public PaletteRemap(Stream s) + { + using (BinaryReader reader = new BinaryReader(s)) + { + for (int i = 0; i < 16; i++) + { + byte r = reader.ReadByte(); + byte g = reader.ReadByte(); + byte b = reader.ReadByte(); + + remapColors.Add(Color.FromArgb(r, g, b)); + } + } + } + + public Color GetRemappedColor(Color original, int index) + { + if (index < 80 || index >= 96) + return original; + + return remapColors[index - 80]; + } + } +} diff --git a/ShpViewer/ShpViewForm.cs b/ShpViewer/ShpViewForm.cs index 23ea225fc0..b62c7ef541 100644 --- a/ShpViewer/ShpViewForm.cs +++ b/ShpViewer/ShpViewForm.cs @@ -26,6 +26,9 @@ namespace ShpViewer Palette pal = new Palette( File.OpenRead( "../../../temperat.pal" ) ); + PaletteRemap remap = new PaletteRemap(File.OpenRead("../../../blue.rem")); + pal = new Palette(pal, remap); + foreach( ImageHeader h in shpReader ) bitmaps.Add( BitmapBuilder.FromBytes( h.Image, shpReader.Width, shpReader.Height, pal ) ); } diff --git a/atek.shp b/atek.shp new file mode 100644 index 0000000000000000000000000000000000000000..ed251e2cda06264c62d55cf997ce62f3643c8501 GIT binary patch literal 2348 zcmYLJZHybm8GdJW_QUqAy%z+3N?RvEfJ%C|XZX=p{c#{wYX4M`?c4QwKYUf7>NiMt zSFdfUy4ergyY||bTmV%mC3nds0g8$$)d&d{QmHKzNCLEiKq>zaDyraueW4c$or52p zU5#eueP-Tg-uImc!>uq6D*Nu?0cHSJfwiCUFuylGl-is9zft()+W`S(4O9TLQ z8ce7S>(o|e0z=cS3ocq4v=X5i=#j;R$Fl=F(!sZ}-2v}zZ>gM!AOnZTirr5QDA zL4$SWscy~I7OGaQc0t1JMpCaQ18C$`s=;y3tSV0hW!eXbXmxS0kfl z+cl?B)|6wwUHBUA-rGo;&4yluwV+b7bY<)t<+5^wg|_h0FEMrDd?y*`x?}0{i&Wn? z4YT>-#UEfVX~20%XjOR{h-d3CR=(1%)e_frFYMy|hpB#NzO5UE$-FvVZ2&V=2K4+_ zxiF6UNrDasdd0Ef4zQ>WobqmGkhrqjXu$2%T`bVf5#ni+*h&gVU|o z<$CP)<@x(*jGto_a7Q=pCz|P46_!KIFzu=igZ9XkfbudZ}EsOm@Ixe(aeB*m0}XXf#{RW^0&7cfNtY*%=N^!?G-Vk7rbr zHNR?G^J{bj1-MNqELm{-o_iJYP@y&osfoJkn#YReFdf{t7z9hp382F&weu=^f|{xm zB+b@{ozTk9_)ESI1bRK!ku|N$?!>(%R?S0b;ne+P0*gkXm9XBP#LlY=%~M`S5KZixv{aab=KAwN@e&d?PH$0N@04x z-%9$R`mh`*v!1^JhvreZxpjJL6MjW4T=Jp_|0sXAKWezlYXOb~OIw>8^S1}5w@z(L zo7aCA-^BdH@O`f?!=LBpyv{QG(c9WmZF*W+N54>JnQ@L)h8@;r*-cQ9HcQy+1n?*L zw}0yNrZUTtvCS%R?m)$lB3W7YhJ!^F>BCkgClmpRW$^m*uqqh^zk=S|KF1Ng{0vkBirMYQdYT0{IVKbA-No;ONf z_>y?vk?_>kBUW|a0sKPYK|KB97sbT_>iK6L&7xyWv!0A6W|m!1&mk~;g& zP@>@{-vXep`WK;G5;LXBxv6qdNK5E*^?Zm#tkG=65Cw@B(q*Qrj&tI=C}zw5e4Xc0 zDUnE1d-8c=-)FK}z08Z5v`Es~Tn0ZRMhqFhnW8u)`6QD{@efOTD*4u%T=tyA1TlW= z!`?G9UnM=GRFkwhFG;@!UW%PImfSKk)ya)J5JE+ zC=((?QHCPX!x&SP^AYD^$63R}t3I0TFsnq6h&YZ+KKf~5i0_HQ>6h}FpLlk4Qj)&OKy_U@g0?shIgvCsT zQQ$pVueBtY0Bm!?FX zVwuo1mQqqWli~;t&6Kh|IoFx=W!LB2 zMiO9@iy03Arv$?IBHTt-D4$zt=2j@TTkrdr5Rd;fm*q($aR^JIh~+Sw!yj{>Zs&sk zZVS!bMnr_RNFst+@+gwJ95Ykt%9Zd6$?f2dKv5Wq*@z(KrI*R(J`BUKP4P$lE=QO7 zK8KLdlj=J=SG^U#N3p*{xu8S*y?przhjJq8CS#BIy&*HlBt*Ldj8LCk-5HN59*+|xl}sip`AzhbmrQJ+rL5ECoqp5$0R$%5uu1YAPB3X zAmk|O_;{E0NEi`vJcU<%5oa-<^*G+=*b@66;5ke}o+8vmc!M8fA>_Mg`{6yNU+*!J z-#Cdm+{2T}uhE2&+AER{eu?wQpgAJPF_-bV@wMF$p*Gth5JK2nKb|4E-SK}u?c~yR zb`!40LcabvH4pE0C{H@MYg0Y!k_T}Z(M)%BvXqvl$Wn)F$a}0vTbQa(5fY!-+l9Lk X<=S2HSqx7h;xj-@JQlXKRe=8imelRs literal 0 HcmV?d00001 diff --git a/blue.rem b/blue.rem new file mode 100644 index 0000000000..9589fb20cb --- /dev/null +++ b/blue.rem @@ -0,0 +1 @@ +âæöÎÒê¶¾Þ¡ªÊ•º}…®iu¡Yi•DU‰8H}0@u(8m ,a,U D4 \ No newline at end of file diff --git a/fact.shp b/fact.shp new file mode 100644 index 0000000000000000000000000000000000000000..c867fd27ed1524da0702d7e587c2ad25278db3ff GIT binary patch literal 26153 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 literal 0 HcmV?d00001 diff --git a/gold.rem b/gold.rem new file mode 100644 index 0000000000..e35abd6942 --- /dev/null +++ b/gold.rem @@ -0,0 +1 @@ +öÖyæÊqÖ¾iƲa¶¥Yª™U‘‰L‘u@…q8me8YU,UL$HD 844,(  \ No newline at end of file diff --git a/gray.rem b/gray.rem new file mode 100644 index 0000000000..e397db43d6 --- /dev/null +++ b/gray.rem @@ -0,0 +1 @@ +îîîîâÚÞÎÆÎº²º¥™¥‘…•}q…qeqYP]H@P<4P<4<,(<,(,, \ No newline at end of file diff --git a/green.rem b/green.rem new file mode 100644 index 0000000000..b66e9436e3 --- /dev/null +++ b/green.rem @@ -0,0 +1 @@ +ÿæ•ÿæ•Ææ…²Ò}¾u‰®my™ei‰]YuLLe<4hA0v5V8Ox0Q;*CRR910 literal 0 HcmV?d00001 diff --git a/teal.rem b/teal.rem new file mode 100644 index 0000000000000000000000000000000000000000..8aef28df1a79992a2e393321d2f5362e12b5564f GIT binary patch literal 48 ycmaz&v^4h6($GyafyifJr_01zht^Vy(p;I`M2ScrAd+!#;4v`)A_fHoAOZmX#Sl#Z literal 0 HcmV?d00001