Hi!
Please see my comments below.
> There's a problem with most of these. You only use the World
> Transform [WT] when you're in GM_ADVANCED, in fact Windows will use
it
> no matter which mode it's in. You can only change the WT in
> GM_ADVANCED but if you go back to GM_COMPATIBLE the transform is
still
> there. Programs might do this to take advantage of the different
> rectangle inclusion or arc drawing rules. I think what you want to
do
> is use LPToDP to transform the co-ords (or modify [X|Y]LPTODP to
> respect WTs).
Thanks, I did not know that.
> X11DRV_Rectangle then has to be drawn using XDrawLines/XFillPolygon
> unless the WT is diagonal (eM12 == 0 && eM21 == 0) or off-diagonal
(eM11
> == 0 && eM22 == 0 i.e. +/- pi/2 rotation). Then you can use
> X{Draw|Fill}Rectangle which may be accelerated.
Fair enough.
> There should be a test for GM_ADVANCED but this just changes whether
> (right,bottom) is inside or outside the rect.
> I think most of the other functions you've changed will work as they
> are if you change {X|Y}LPTODP. The curve functions are harder...
Yes, I will change them. I have been experimenting with bezier
curves,
and they will work with transformations nicely. I just have not
figured out
an algorithim to caculate the control/end points yet.
> I find the MM_LOENGLISH change very surprising, but I assume you've
> tested it.
With the viewport as it was, my test program's gfx were too small.
When I changed
the viewport to its current settings, the graphics matched under wine
and windows.
> > - SetWorldTransform
> > - ModifyWorldTransform
>
> These should fail if the determinant of the WT is too small - no
idea
> how to define too though. This ensures we can always generate an
> inverse transform.
> If you like I'll merge your stuff into what I did a re-submit it.
You can do that if you want, but I will have to make these changes
and re submit to the Corel tree as well.
> Huw.
Thanks for the pointers, I appreciate it!
______________________________
Jason Mawdsley
Macadamian Technologies
http://www.macadamian.com