[webkit-dev] Complex and Vector3 classes in WTF?

Chris Marrin cmarrin at apple.com
Tue Aug 31 17:29:37 PDT 2010

On Aug 31, 2010, at 5:25 PM, Kenneth Russell wrote:

>>> ...Yes, I did the Google search and you're right that the term is not in common usage (although I still maintain it's a completely reasonable term). The reason I think it's meaningful is because it really is a matrix of sorts, but a specialized one that handles only affine transformations. We could call it AffineTransform, but then why not call our 4x4 matrix HomogeneousTransform? I'd just like to be consistent.
>> HomogenousTransform is fine. I would also be fond of PerspectiveProjection.
> PerspectiveProjection is not a good name for a 4x4 matrix class. Such
> a matrix might be used to represent an orthographic projection.
>> I think TransformMatrix is not a good name. It immediately raises the question, "what kind of transform". I also think Matrix does not need to be in the name. That is to some extent an implementation detail, from the mathematical perspective. It's more important to identify the type of transformation.
> I'm concerned about the route of adding a class for each kind of
> transformation. It will lead to a proliferation of confusingly named
> types and excess type conversion, or re-identification of the type of
> transformation, when composing transformations. At least in the 3D
> realm, all that is desired is one simple 4x4 matrix class. Additional
> classes to represent e.g. 4x3 matrices add unnecessary complexity.

I agree. So, in order to appease Maciej :-) what if we keep AffineTransform as is, and change TransformationMatrix to Matrix (or Matrix4 if Matrix is too generic)?

cmarrin at apple.com

More information about the webkit-dev mailing list