cc::MathUtil has methods like MapEnclosingClippedRect, MapClippedRect, ProjectEnclosingClippedRect and ProjectClippedRect. They take in a gfx::Transform and a gfx::Rect and returns the transformed Rect after the operation.
Conceptually, they perform similar operations to gfx::Transform::TransformRect. The cc::MathUtil methods exist because the Transform code doesn't do the right thing when there is a perspective projection that causes one of the transformed vertices to go to w < 0.
Merge the transform methods into Transform code to enable wider usage and reduce the complexity inside MathUtil.
Comment 1 by danakj@chromium.org
, Sep 8 2017