Lines Matching refs:float2
31 AI Rect(float2 topLeft, float2 botRight) : fVals(topLeft, -botRight) {}
37 AI static Rect XYWH(float2 topLeft, float2 size) {
43 AI static Rect WH(float2 size) {
44 return Rect(float2(0), size);
46 AI static Rect Point(float2 p) {
74 AI float2 topLeft() const { return fVals.xy(); }
75 AI float2 botRight() const { return -fVals.zw(); }
82 AI void setTopLeft(float2 topLeft) { fVals.xy() = topLeft; }
83 AI void setBotRight(float2 botRight) { fVals.zw() = -botRight; }
96 AI float2 size() const { return -(fVals.xy() + fVals.zw()); } // == [-(l-r), -(t-b)] == [w, h]
98 AI float2 center() const {
104 float2 negativeSize = fVals.xy() + fVals.zw(); // == [l-r, t-b] == [-w, -h]
124 AI Rect makeInset(float2 inset) const { return fVals + inset.xyxy(); }
126 AI Rect makeOutset(float2 outset) const { return fVals - outset.xyxy(); }
127 AI Rect makeOffset(float2 offset) const { return fVals + float4(offset, -offset); }
135 AI Rect& inset(float2 inset) { return *this = this->makeInset(inset); }
137 AI Rect& outset(float2 outset) { return *this = this->makeOutset(outset); }
138 AI Rect& offset(float2 offset) { return *this = this->makeOffset(offset); }