Polygons drawn incorrectly with gc.SetOrigin(TPoint(-1, xxx));
Drawing the following simple polygon causes screen corruption with gc.SetOrigin(TPoint(-1, 0));, but no problems with any other positive or negative x offset I tried. The problem is always reproducible both on 6600 device and emulator, and arises for many polygons. I use gc.SetOrigin for scrolling; translating polygons manually would break a lot of existing code, and also slower I think. What can I do with it?
[code] CWindowGc& gc = SystemGc();
gc.Clear();
TPoint points[] = {
TPoint( 93, 111),
TPoint( 92, 108),
TPoint( 77, 116),
TPoint( 78, 120),
TPoint( 66, 118),
TPoint( 66, 120),
TPoint( 80, 122),
TPoint( 80, 118),
TPoint( 93, 111)
};
const TInt numPoints = 9;
gc.SetPenColor(TRgb(0, 0, 0xFF));
gc.SetBrushColor(TRgb(0));
gc.SetBrushStyle(CGraphicsContext::ESolidBrush);
gc.SetOrigin(TPoint(-1, 0));
gc.DrawPolygon(points, numPoints);
[/code]