4.1.17 PolygonCB
The following is an annotated dump of a PolygonCB (section 2.2.2.2.1.1.2.17) Primary Drawing Order.
-
00000000 09 15 ef 1b ea 00 46 01 0d 01 08 00 00 04 03 81 ......F......... 00000010 08 03 05 88 09 26 09 77 .....&.w 09 -> PRIMARY_DRAWING_ORDER::controlFlags = 0x09 0x09 = 0x01 | 0x08 = TS_STANDARD | TS_TYPE_CHANGE 15 -> PRIMARY_DRAWING_ORDER::orderType = 0x15 = TS_ENC_POLYGON_CB_ORDER ef 1b -> PRIMARY_DRAWING_ORDER::fieldFlags = 0x1bef Binary of 0x1bef = 0001 1011 1110 1111 Fields 1-4, 6-10, 12-13 are present ea 00 -> POLYGON_CB_ORDER::xStart = 0xea = 234 46 01 -> POLYGON_CB_ORDER::yStart = 0x146 = 326 0d -> POLYGON_CB_ORDER::bRop2 = 0x0d = COPYPEN 01 -> POLYGON_CB_ORDER::FillMode = 0x01 = ALTERNATE POLYGON_CB_ORDER::BackColor not present 08 00 00 -> POLYGON_CB_ORDER::ForeColor TS_COLOR::RedOrPaletteIndex = 0x08 TS_COLOR::Green = 0x00 TS_COLOR::Blue = 0x00 04 -> POLYGON_CB_ORDER::BrushOrgX = 4 03 -> POLYGON_CB_ORDER::BrushOrgY = 3 81 -> POLYGON_CB_ORDER:BrushStyle = 0x81 = 0x80 | 0x01 = TS_CACHED_BRUSH | BMF_1BPP 08 -> POLYGON_CB_ORDER:BrushHatch = Brush Cache Index = 0x8 POLYGON_CB_ORDER::BrushExtra not present 03 -> POLYGON_CB_ORDER::NumDeltaEntries = 0x3 = 3 entries 05 -> VARIABLE1_FIELD::cbData = 5 bytes 88 09 26 09 77 -> VARIABLE1_FIELD::rgbData 88 -> DELTA_PTS_FIELD::zeroBits = binary:10 00 10 00 Point 1: Delta X = 0 (zeroBit set) 09 -> Delta Y = 0x9 = 9 Point 2: 26 -> Delta X = 0x26 = 38 09 -> Delta Y = 0x9 = 9 Point 3: Delta X = 0 (zeroBit set) 77 -> Delta Y = 0xfffffff7 = -9 Actual point 1: 234, 335 Actual point 2: 272, 344 Actual point 3: 272, 335