use of func.lib.ArrayImgWriter in project mkgmap by openstreetmap.
the class TypTextReaderTest method testZeroColourBug.
@Test
public void testZeroColourBug() {
String s = "[_point]\n" + "Type=0x01e\n" + "SubType=0x00\n" + "String1=0x04,island\n" + "DayXpm=\"5 5 1 1\" Colormode=32\n" + "\"! c #000000\" canalalpha=15\n" + "\"!!!!!\"\n" + "\"!!!!!\"\n" + "\"!!!!!\"\n" + "\"!!!!!\"\n" + "\"!!!!!\"\n" + "[end]";
tr = makeTyp(s);
TypData data = tr.getData();
TypPoint point = data.getPoints().get(0);
ArrayImgWriter w = new ArrayImgWriter();
point.write(w, data.getEncoder());
byte[] out = w.getBytes();
assertEquals("width", 5, out[1]);
assertEquals("height", 5, out[2]);
assertEquals("number of colours", 1, out[3]);
}
use of func.lib.ArrayImgWriter in project mkgmap by openstreetmap.
the class TypTextReaderTest method testStacking.
@Test
public void testStacking() {
tr = makeTyp("[_drawOrder]\n" + "Type=0x3,1\n" + "Type=0x2,2\n" + "Type=0x1,4\n" + "Type=0x4,2\n" + "Type=0x10402,2\n" + "Type=0x10405,2\n" + "[End]\n");
ShapeStacking stacking = tr.getData().getStacking();
ArrayImgWriter out = new ArrayImgWriter();
stacking.write(out);
byte[] buf = out.getBytes();
assertEquals(3, buf[0]);
assertEquals(0, buf[ORDER_SIZE]);
assertEquals(2, buf[2 * ORDER_SIZE]);
assertEquals(4, buf[3 * ORDER_SIZE]);
assertEquals(0, buf[3 * ORDER_SIZE + 1]);
assertEquals(4, buf[4 * ORDER_SIZE]);
assertEquals((1 << 2) + (1 << 5), buf[4 * ORDER_SIZE + 1]);
}
use of func.lib.ArrayImgWriter in project mkgmap by openstreetmap.
the class TypTextReaderTest method testLineTwoColours.
@Test
public void testLineTwoColours() {
TypTextReader tr = makeTyp("[_line]\n" + "Type=0x00\n" + "UseOrientation=Y\n" + "LineWidth=2\n" + "BorderWidth=1\n" + "Xpm=\"0 0 2 0\"\n" + "\"1 c #DDDDDD\"\n" + "\"2 c #999999\"\n" + "String1=0x04,Road\n" + "String2=0x01,Route non-définie\n" + "String3=0x03,Weg\n" + "ExtendedLabels=Y\n" + "FontStyle=SmallFont\n" + "CustomColor=No\n" + "[end]");
TypData data = tr.getData();
TypLine line = data.getLines().get(0);
ImgFileWriter w = new ArrayImgWriter();
line.write(w, data.getEncoder());
}
use of func.lib.ArrayImgWriter in project mkgmap by openstreetmap.
the class TypTextReaderTest method testPointWithAlpha.
@Test
public void testPointWithAlpha() {
TestUtils.registerFile("hello");
TypTextReader tr = makeTyp("[_point]\n" + "Type=0x12\n" + "SubType=0x01\n" + ";23E6\n" + ";size: 45\n" + "String1=0x4,Mini round\n" + "String2=0x1,Mini rond-point\n" + "ExtendedLabels=N\n" + "DayXpm=\"9 9 10 1\"\n" + "\"$ c none\"\n" + "\"% c #808080\" alpha=14\n" + "\"& c #808080\"\n" + "\"' c #808080\" alpha=15\n" + "\"( c #808080\" alpha=8\n" + "\") c #F0F7FF\"\n" + "\"* c #808080\" alpha=4\n" + "\"+ c #808080\" alpha=11\n" + "\", c #808080\" alpha=12\n" + "\"- c #808080\" alpha=13\n" + "\"$%&&&&&'$\"\n" + "\"(&&&)&&&*\"\n" + "\"&&)))))&&\"\n" + "\"&&)&&&)&&\"\n" + "\"&))&)&))&\"\n" + "\"&&)&&&)&&\"\n" + "\"&&)))))&&\"\n" + "\"+&&&)&&&,\"\n" + "\"$-&&&&&-$\"\n" + "[end]");
TypData data = tr.getData();
TypPoint point = data.getPoints().get(0);
ArrayImgWriter w = new ArrayImgWriter();
point.write(w, data.getEncoder());
System.out.println("size " + w.getSize());
try (OutputStream os = new FileOutputStream("hello")) {
os.write(w.getBytes());
} catch (IOException e) {
e.printStackTrace();
}
assertEquals(115, w.getBytes().length);
}
use of func.lib.ArrayImgWriter in project mkgmap by openstreetmap.
the class TypTextReaderTest method testPolygonWithBitmap.
@Test
public void testPolygonWithBitmap() {
tr = makeTyp("[_polygon]\n" + "Xpm=\"32 32 4 1\"\n" + "\"! c #FFCC99\"\n" + "\" c none\"\n" + "\"3 c #000000\"\n" + "\"4 c none\"\n" + "\"! !!! !!! !!! !!\"\n" + "\" !!! !!! !!! !!!\"\n" + "\" !!! !!! !!! !!! \"\n" + "\" !!! !!! !!! !!! \"\n" + "\" !!! !!! !!! !!! \"\n" + "\" !!! !!! !!! !!! \"\n" + "\"!!! !!! !!! !!! \"\n" + "\"!! !! !! !! \"\n" + "\"! !!! !!! !!! !!\"\n" + "\" !!! !!! !!! !!!\"\n" + "\" !!! !!! !!! !!! \"\n" + "\" !!! !!! !!! !!! \"\n" + "\" !!! !!! !!! !!! \"\n" + "\" !!! !!! !!! !!! \"\n" + "\"!!! !!! !!! !!! \"\n" + "\"!! !! !! !! \"\n" + "\"! !!! !!! !!! !!\"\n" + "\" !!! !!! !!! !!!\"\n" + "\" !!! !!! !!! !!! \"\n" + "\" !!! !!! !!! !!! \"\n" + "\" !!! !!! !!! !!! \"\n" + "\" !!! !!! !!! !!! \"\n" + "\"!!! !!! !!! !!! \"\n" + "\"!! !! !! !! \"\n" + "\"! !!! !!! !!! !!\"\n" + "\" !!! !!! !!! !!!\"\n" + "\" !!! !!! !!! !!! \"\n" + "\" !!! !!! !!! !!! \"\n" + "\" !!! !!! !!! !!! \"\n" + "\" !!! !!! !!! !!! \"\n" + "\"!!! !!! !!! !!! \"\n" + "\"!! !! !! !! \"\n" + "[End]\n");
TypData data = tr.getData();
List<TypPolygon> polygons = data.getPolygons();
TypPolygon p = polygons.get(0);
ArrayImgWriter out = new ArrayImgWriter();
p.write(out, data.getEncoder());
byte[] bytes = out.getBytes();
assertEquals(135, bytes.length);
}
Aggregations