Re: [Inkscape-devel] Rotatable desktop (was: Inkscape 0.49 Proposed Release Plan)
Indeed, I already had a rudimentary rotatable desktop working a while ago; it was only a small coding effort. What popped up were some UI questions: - page display - boundingbox, do we want it to rotate too or not? - thingies for scaling, shearing, rotating, should they rotate too? - horizontal/vertical directions for dragging objects with ctrl, should they rotate too? Etc...
Related: it can be nice to have different scales in x and y dir. If rotating works, then it should be programmed such that any reasonable transform matrix works...?
Cheers, Johan
----- Reply message ----- Van: "Krzysztof Kosiński" <tweenk.pl@...400...> Datum: do, sep. 20, 2012 11:13 Onderwerp: [Inkscape-devel] Inkscape 0.49 Proposed Release Plan Aan: "Josh Andler" <scislac@...400...> CC: "Johan Engelen" <jbc.engelen@...2592...>, "Inkscape Devel List" inkscape-devel@lists.sourceforge.net
2012/9/19 Josh Andler <scislac@...400...>:
I think that if we are going to break compatibility, we go for one release to do it. Basically, all of the new-style stuff including custom doc coords would be a huge win to introduce all at once. I would love to see a rotatable canvas in Inkscape, but I have no idea how feasible it is with the current rendering/viewport stuff we have in place.
In principle it should be possible to change doc2dt and dt2doc matrices to any transform without any modifications to the display subsystem, but it might expose bugs - mainly hidden assumptions that doc2dt is always an Y flip + translation.
The code drawing the page background will need to be rewritten, as it now assumes that the page is a rectangle with sides parallel to desktop coordinate system axes.
Regards, Krzysztof
2012/9/20 jbc.engelen@...2592... <jbc.engelen@...2592...>:
Indeed, I already had a rudimentary rotatable desktop working a while ago; it was only a small coding effort. What popped up were some UI questions:
- page display
This requires changing the stuff that draws the page border. Right now it uses CtrlRect, which draws only axis-aligned rectangles. The page border should of course always correspond to the size of the root <svg> element.
- boundingbox, do we want it to rotate too or not?
- thingies for scaling, shearing, rotating, should they rotate too?
- horizontal/vertical directions for dragging objects with ctrl, should they
rotate too?
These should always be parallel to the window edges - they work in desktop space, not document space. However, the desktop space could be altered in a limited way by picking the orientation of axes (e.g. in which direction do they grow) - this is not possible by using the desktop transform alone.
Related: it can be nice to have different scales in x and y dir. If rotating works, then it should be programmed such that any reasonable transform matrix works...?
Yes, there should be no internal restriction on the desktop transform, though for practical reasons restricting it to exclude shearing might be a good idea.
Regards, Krzysztof
participants (2)
-
jbc.engelen@swissonline.ch
-
Krzysztof Kosiński