Reorganize Geometry and Math classes
https://bugs.webkit.org/show_bug.cgi?id=44983
Summary Reorganize Geometry and Math classes
Chris Marrin
Reported 2010-08-31 14:02:32 PDT
We've been having an ongoing discussion about pulling together all the geometry related classes (FloatPoint, TransformationMatrix, etc.) into a single place. I propose to make this place WebCore/platform/graphics/math. I propose move these classes: FloatPoint FloatPoint3D FloatQuad FloatRect FloatSize IntPoint IntRect IntSize TransformationMatrix AffineTransform There may be others scattered around.
Attachments
Kenneth Russell
Comment 1 2010-08-31 14:23:08 PDT
platform/graphics/math is too specific a directory name; at least some of these classes need to be referenced from the ongoing web audio work. I would suggest platform/math. We'll also want to move wtf/Vector3 and wtf/Complex here.
Chris Marrin
Comment 2 2010-08-31 14:42:38 PDT
(In reply to comment #1) > platform/graphics/math is too specific a directory name; at least some of these classes need to be referenced from the ongoing web audio work. I would suggest platform/math. > > We'll also want to move wtf/Vector3 and wtf/Complex here. Ok, platform/math seems reasonable. We should get rid of wtf/Vector3 and replace it with FloatPoint3D once you add cross/dot/etc. to it. And Complex is just a simple audio specific wrapper around std::complex, which I think should go into platform/audio directly. I've opened a bug for this work: https://bugs.webkit.org/show_bug.cgi?id=44991 Ken, can you add the bug number for the FloatPoint3D work and make the above bug depend on it?
Chris Rogers
Comment 3 2010-08-31 15:16:25 PDT
I don't really care that much where Complex.h lives, but Complex::complexFromMagnitudePhase() is kind of general from a mathematical point of view, even if graphics doesn't really have a use for it.
Kenneth Russell
Comment 4 2010-08-31 15:24:39 PDT
(In reply to comment #2) > (In reply to comment #1) > > platform/graphics/math is too specific a directory name; at least some of these classes need to be referenced from the ongoing web audio work. I would suggest platform/math. > > > > We'll also want to move wtf/Vector3 and wtf/Complex here. > > Ok, platform/math seems reasonable. We should get rid of wtf/Vector3 and replace it with FloatPoint3D once you add cross/dot/etc. to it. And Complex is just a simple audio specific wrapper around std::complex, which I think should go into platform/audio directly. I've opened a bug for this work: > > https://bugs.webkit.org/show_bug.cgi?id=44991 > > Ken, can you add the bug number for the FloatPoint3D work and make the above bug depend on it? 44991 now depends on 44970, which has already been fixed.
Note You need to log in before you can comment on or make changes to this bug.