Closed Bug 338640 Opened 19 years ago Closed 17 years ago

rotate() shouldn't affect the current path

Categories

(Core :: Graphics: Canvas2D, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 380338

People

(Reporter: annevk, Unassigned)

Details

Attachments

(1 file)

rotate() (and other transformations) should apply just before rendering. They should not affect the next lineTo() etc. directly.
Attached file testcase
Er, no; rotate/translate/etc. all modify the current transformation matrix, which is applied to each path operation point when it's added to the path. Otherwise, there's no consistent way to integrate transforms and path points; you could try something like "the CTM at the time the path is created", but we also have things like the implicit moveTo(0,0) when the canvas is created, which would then lock in an identity matix, which would be broken. Having the CTM affect each point as its specified keeps everything consistent (in fact, calling rotate() /after/ you specify a path fully but before you call fill() or something should have no effect). The spec should probably explicitly state this (that path points are transformed by the CTM as path operations are called). (Do any of the implementations actually behave the way you describe? I'm pretty sure Safari doesn't, though I can't test at the moment.)
Status: NEW → RESOLVED
Closed: 19 years ago
Resolution: --- → INVALID
Both Safari and Opera pass the test. (As in, they don't show this star thingie.)
Reopening based on comment 3 and lack of reply from Ian.
Status: RESOLVED → REOPENED
Resolution: INVALID → ---
So Safari 2.0.3 shows the star for me; the latest WebKit nightly does not. Not sure what changed.
Status: REOPENED → RESOLVED
Closed: 19 years ago17 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: