-
-
Notifications
You must be signed in to change notification settings - Fork 905
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Added transform
to Rect
#1360
Conversation
transformRect
to Matrix4
transform
to Rect
/// Transform Rect using the transformation defined by [matrix]. | ||
/// | ||
/// **Note:** Rotation matrices will increase the size of the [Rect] but they | ||
/// will not rotate it as [Rect] does not have any rotational values. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder if it would be best to validate and throw errors for invalid matrixes.
We could (in the future) also have a version that fully works with any matrix and returns a Polygon to represent non-AA rectangles
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I could, but not sure how to validate that on a matrix. So if anyone has any pointers, I am all ears!
@@ -36,5 +37,14 @@ void main() { | |||
expect(r2.position.x, r1.left); | |||
expect(r2.position.y, r1.top); | |||
}); | |||
|
|||
test('test transform', () { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should we test the edge cases mentioned on the comments?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with a couple comments
Description
Noticed there wasn't a method for transform rects. This method is kinda biased as it will transform from "center".
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the
relevant checkboxes (
[x]
). This will ensure a smooth and quick review process.fix:
,feat:
,docs:
etc).docs
and added dartdoc comments with///
.examples
.Breaking Change
Does your PR require Flame users to manually update their apps to accommodate your change?
!
,e.g.
feat!:
,fix!:
).Related Issues
Replace this paragraph with a list of issues related to this PR from the issue database.
Indicate which of these issues are resolved or fixed by this PR, i.e. Fixes #xxxx