.TH "SbBox2f" 3 "Tue Dec 26 2023 17:59:22" "Version 4.0.2" "Coin" \" -*- nroff -*- .ad l .nh .SH NAME SbBox2f \- The \fBSbBox2f\fP class is a 2 dimensional box with floating point corner coordinates\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBSbBox2f\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBSbBox2f\fP (float \fBxmin\fP, float ymin, float \fBxmax\fP, float ymax)" .br .ti -1c .RI "\fBSbBox2f\fP (\fBconst\fP \fBSbVec2f\fP &\fBminpoint\fP, \fBconst\fP \fBSbVec2f\fP &\fBmaxpoint\fP)" .br .ti -1c .RI "\fBSbBox2f\fP (\fBconst\fP \fBSbBox2d\fP &\fBbox\fP)" .br .ti -1c .RI "\fBSbBox2f\fP (\fBconst\fP \fBSbBox2s\fP &\fBbox\fP)" .br .ti -1c .RI "\fBSbBox2f\fP (\fBconst\fP \fBSbBox2i32\fP &\fBbox\fP)" .br .ti -1c .RI "\fBSbBox2f\fP & \fBsetBounds\fP (float \fBxmin\fP, float ymin, float \fBxmax\fP, float ymax)" .br .ti -1c .RI "\fBSbBox2f\fP & \fBsetBounds\fP (\fBconst\fP \fBSbVec2f\fP &\fBminpoint\fP, \fBconst\fP \fBSbVec2f\fP &\fBmaxpoint\fP)" .br .ti -1c .RI "\fBSbBox2f\fP & \fBsetBounds\fP (\fBconst\fP \fBSbBox2d\fP &\fBbox\fP)" .br .ti -1c .RI "\fBSbBox2f\fP & \fBsetBounds\fP (\fBconst\fP \fBSbBox2s\fP &\fBbox\fP)" .br .ti -1c .RI "\fBSbBox2f\fP & \fBsetBounds\fP (\fBconst\fP \fBSbBox2i32\fP &\fBbox\fP)" .br .ti -1c .RI "\fBvoid\fP \fBgetBounds\fP (float &\fBxmin\fP, float &ymin, float &\fBxmax\fP, float &ymax) \fBconst\fP" .br .ti -1c .RI "\fBvoid\fP \fBgetBounds\fP (\fBSbVec2f\fP &\fBminpoint\fP, \fBSbVec2f\fP &\fBmaxpoint\fP) \fBconst\fP" .br .ti -1c .RI "\fBconst\fP \fBSbVec2f\fP & \fBgetMin\fP (\fBvoid\fP) \fBconst\fP" .br .ti -1c .RI "\fBSbVec2f\fP & \fBgetMin\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBconst\fP \fBSbVec2f\fP & \fBgetMax\fP (\fBvoid\fP) \fBconst\fP" .br .ti -1c .RI "\fBSbVec2f\fP & \fBgetMax\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBvoid\fP \fBextendBy\fP (\fBconst\fP \fBSbVec2f\fP &point)" .br .ti -1c .RI "\fBvoid\fP \fBextendBy\fP (\fBconst\fP \fBSbBox2f\fP &\fBbox\fP)" .br .ti -1c .RI "\fBvoid\fP \fBmakeEmpty\fP (\fBvoid\fP)" .br .ti -1c .RI "SbBool \fBisEmpty\fP (\fBvoid\fP) \fBconst\fP" .br .ti -1c .RI "SbBool \fBhasArea\fP (\fBvoid\fP) \fBconst\fP" .br .ti -1c .RI "SbBool \fBintersect\fP (\fBconst\fP \fBSbVec2f\fP &point) \fBconst\fP" .br .ti -1c .RI "SbBool \fBintersect\fP (\fBconst\fP \fBSbBox2f\fP &\fBbox\fP) \fBconst\fP" .br .ti -1c .RI "\fBSbVec2f\fP \fBgetClosestPoint\fP (\fBconst\fP \fBSbVec2f\fP &point) \fBconst\fP" .br .ti -1c .RI "\fBSbVec2f\fP \fBgetCenter\fP (\fBvoid\fP) \fBconst\fP" .br .ti -1c .RI "\fBvoid\fP \fBgetOrigin\fP (float &\fBoriginX\fP, float &\fBoriginY\fP) \fBconst\fP" .br .ti -1c .RI "\fBvoid\fP \fBgetSize\fP (float &\fBsizeX\fP, float &\fBsizeY\fP) \fBconst\fP" .br .ti -1c .RI "\fBSbVec2f\fP \fBgetSize\fP (\fBvoid\fP) \fBconst\fP" .br .ti -1c .RI "float \fBgetAspectRatio\fP (\fBvoid\fP) \fBconst\fP" .br .in -1c .SS "Protected Attributes" .in +1c .ti -1c .RI "\fBSbVec2f\fP \fBminpt\fP" .br .ti -1c .RI "\fBSbVec2f\fP \fBmaxpt\fP" .br .in -1c .SS "Related Symbols" (Note that these are not member symbols\&.) .in +1c .ti -1c .RI "int \fBoperator==\fP (\fBconst\fP \fBSbBox2f\fP &\fBb1\fP, \fBconst\fP \fBSbBox2f\fP &\fBb2\fP)" .br .ti -1c .RI "int \fBoperator!=\fP (\fBconst\fP \fBSbBox2f\fP &\fBb1\fP, \fBconst\fP \fBSbBox2f\fP &\fBb2\fP)" .br .in -1c .SH "Detailed Description" .PP The \fBSbBox2f\fP class is a 2 dimensional box with floating point corner coordinates\&. This box class is used by many other classes in Coin for data exchange and storage\&. It provides two box corners with floating point coordinates, which is among other things useful for representing screen or canvas dimensions in normalized coordinates\&. .PP \fBSee also\fP .RS 4 \fBSbBox2s\fP, \fBSbBox2d\fP, \fBSbBox3s\fP, \fBSbBox3f\fP, \fBSbBox3d\fP, \fBSbXfBox3f\fP\&. .RE .PP .SH "Constructor & Destructor Documentation" .PP .SS "SbBox2f::SbBox2f (\fBvoid\fP)\fC [inline]\fP" The default constructor makes an empty box\&. .SS "SbBox2f::SbBox2f (float xmin, float ymin, float xmax, float ymax)\fC [inline]\fP" Constructs a box with the given corners\&. .PP \fIxmin\fP should be less than \fIxmax\fP and \fIymin\fP should be less than \fIymax\fP if you want to make a valid box\&. .SS "SbBox2f::SbBox2f (\fBconst\fP \fBSbVec2f\fP & min, \fBconst\fP \fBSbVec2f\fP & max)\fC [inline]\fP" Constructs a box with the given lower left and upper right corners\&. .PP The coordinates of \fImin\fP should be less than the coordinates of \fImax\fP if you want to make a valid box\&. .SS "SbBox2f::SbBox2f (\fBconst\fP \fBSbBox2d\fP & box)\fC [inline]\fP, \fC [explicit]\fP" Constructs an \fBSbBox2f\fP instance from the value in an \fBSbBox2d\fP instance\&. .PP \fBSince\fP .RS 4 Coin \fB2\&.5\fP .RE .PP .SS "SbBox2f::SbBox2f (\fBconst\fP \fBSbBox2s\fP & box)\fC [inline]\fP, \fC [explicit]\fP" Constructs an \fBSbBox2f\fP instance from the value in an \fBSbBox2s\fP instance\&. .PP \fBSince\fP .RS 4 Coin \fB2\&.5\fP .RE .PP .SS "SbBox2f::SbBox2f (\fBconst\fP \fBSbBox2i32\fP & box)\fC [inline]\fP, \fC [explicit]\fP" Constructs an \fBSbBox2f\fP instance from the value in an \fBSbBox2i32\fP instance\&. .PP \fBSince\fP .RS 4 Coin \fB2\&.5\fP .RE .PP .SH "Member Function Documentation" .PP .SS "\fBSbBox2f\fP & SbBox2f::setBounds (float xmin, float ymin, float xmax, float ymax)\fC [inline]\fP" Reset the boundaries of the box\&. .PP \fIxmin\fP should be less than \fIxmax\fP and \fIymin\fP should be less than \fIymax\fP if you want to make a valid box\&. .PP Returns reference to self\&. .PP \fBSee also\fP .RS 4 \fBgetBounds()\fP\&. .RE .PP .SS "\fBSbBox2f\fP & SbBox2f::setBounds (\fBconst\fP \fBSbVec2f\fP & min, \fBconst\fP \fBSbVec2f\fP & max)\fC [inline]\fP" Reset the boundaries of the box with the given corners\&. .PP The coordinates of \fImin\fP should be less than the coordinates of \fImax\fP if you want to make a valid box\&. .PP Returns reference to self\&. .PP \fBSee also\fP .RS 4 \fBgetBounds()\fP\&. .RE .PP .SS "\fBSbBox2f\fP & SbBox2f::setBounds (\fBconst\fP \fBSbBox2d\fP & box)" Reset the boundaries of the box to the boundaries of the given \fIbox\fP\&. .PP Returns reference to self\&. .PP \fBSee also\fP .RS 4 \fBgetBounds()\fP .RE .PP .SS "\fBSbBox2f\fP & SbBox2f::setBounds (\fBconst\fP \fBSbBox2s\fP & box)" Reset the boundaries of the box to the boundaries of the given \fIbox\fP\&. .PP Returns reference to self\&. .PP \fBSee also\fP .RS 4 \fBgetBounds()\fP .RE .PP .SS "\fBSbBox2f\fP & SbBox2f::setBounds (\fBconst\fP \fBSbBox2i32\fP & box)" Reset the boundaries of the box to the boundaries of the given \fIbox\fP\&. .PP Returns reference to self\&. .PP \fBSee also\fP .RS 4 \fBgetBounds()\fP .RE .PP .SS "\fBvoid\fP SbBox2f::getBounds (float & xmin, float & ymin, float & xmax, float & ymax) const\fC [inline]\fP" Returns the box boundaries\&. .PP \fBSee also\fP .RS 4 \fBsetBounds()\fP, \fBgetMin()\fP, \fBgetMax()\fP\&. .RE .PP .SS "\fBvoid\fP SbBox2f::getBounds (\fBSbVec2f\fP & min, \fBSbVec2f\fP & max) const\fC [inline]\fP" Returns the box corner points\&. .PP \fBSee also\fP .RS 4 \fBsetBounds()\fP, \fBgetMin()\fP, \fBgetMax()\fP\&. .RE .PP .SS "\fBconst\fP \fBSbVec2f\fP & SbBox2f::getMin (\fBvoid\fP) const\fC [inline]\fP" Returns the lower left corner of the box\&. .PP \fBSee also\fP .RS 4 \fBgetOrigin()\fP, \fBgetMax()\fP\&. .RE .PP .SS "\fBSbVec2f\fP & SbBox2f::getMin (\fBvoid\fP)\fC [inline]\fP" Returns a modifiable reference to the lower left corner of the box\&. .PP \fBSee also\fP .RS 4 \fBgetOrigin()\fP, \fBgetMax()\fP\&. .RE .PP .SS "\fBconst\fP \fBSbVec2f\fP & SbBox2f::getMax (\fBvoid\fP) const\fC [inline]\fP" Returns the upper right corner of the box\&. .PP \fBSee also\fP .RS 4 \fBgetMin()\fP\&. .RE .PP .SS "\fBSbVec2f\fP & SbBox2f::getMax (\fBvoid\fP)\fC [inline]\fP" Returns the upper right corner of the box\&. .PP \fBSee also\fP .RS 4 \fBgetMin()\fP\&. .RE .PP .SS "\fBvoid\fP SbBox2f::extendBy (\fBconst\fP \fBSbVec2f\fP & point)" Extend the boundaries of the box by the given point, i\&.e\&. make the box fit around the \fIpoint\fP if it isn't already situated within it\&. .SS "\fBvoid\fP SbBox2f::extendBy (\fBconst\fP \fBSbBox2f\fP & box)" Extend the boundaries of the box by the given \fIbox\fP parameter\&. This is equal to calling the above method twice with the corner points\&. .SS "\fBvoid\fP SbBox2f::makeEmpty (\fBvoid\fP)" Marks this as an empty box\&. .PP \fBSee also\fP .RS 4 \fBisEmpty()\fP\&. .RE .PP .SS "SbBool SbBox2f::isEmpty (\fBvoid\fP) const\fC [inline]\fP" Check if this has been marked as an empty box\&. .PP \fBSee also\fP .RS 4 \fBmakeEmpty()\fP\&. .RE .PP .SS "SbBool SbBox2f::hasArea (\fBvoid\fP) const\fC [inline]\fP" Check if the box has been correctly specified and by that virtue has 'positive' area, i\&.e\&. all coordinates of its upper right corner (the maximum point) are greater than the corresponding coordinates of its lower left corner (the minimum point)\&. .SS "SbBool SbBox2f::intersect (\fBconst\fP \fBSbVec2f\fP & point) const" Check if \fIpoint\fP lies within the boundaries of this box\&. .SS "SbBool SbBox2f::intersect (\fBconst\fP \fBSbBox2f\fP & box) const" Check if \fIbox\fP lies entirely or partially within the boundaries of this box\&. .SS "\fBSbVec2f\fP SbBox2f::getClosestPoint (\fBconst\fP \fBSbVec2f\fP & point) const" Return the point on the box closest to the given point \fIp\fP\&. If the given point equals the center, the center point on the positive X-side is returned\&. .SS "\fBSbVec2f\fP SbBox2f::getCenter (\fBvoid\fP) const\fC [inline]\fP" Returns the center point of the box\&. .SS "\fBvoid\fP SbBox2f::getOrigin (float & originX, float & originY) const\fC [inline]\fP" Returns the coordinates of the box origin (i\&.e\&. the lower left corner)\&. .PP \fBSee also\fP .RS 4 \fBgetMin()\fP\&. .RE .PP .SS "\fBvoid\fP SbBox2f::getSize (float & sizeX, float & sizeY) const\fC [inline]\fP" Returns width and height of box\&. .SS "\fBSbVec2f\fP SbBox2f::getSize (\fBvoid\fP) const\fC [inline]\fP" Returns width and height of box as a 2D vector\&. .PP \fBSince\fP .RS 4 Coin \fB3\&.0\fP .RE .PP .SS "float SbBox2f::getAspectRatio (\fBvoid\fP) const\fC [inline]\fP" Returns aspect ratio of box, which is defined as box width divided on box height\&. .SH "Friends And Related Symbol Documentation" .PP .SS "int \fBoperator\fP== (\fBconst\fP \fBSbBox2f\fP & b1, \fBconst\fP \fBSbBox2f\fP & b2)\fC [related]\fP" Check \fIb1\fP and \fIb2\fP for equality\&. .SS "int operator!= (\fBconst\fP \fBSbBox2f\fP & b1, \fBconst\fP \fBSbBox2f\fP & b2)\fC [related]\fP" Check \fIb1\fP and \fIb2\fP for inequality\&. .SH "Author" .PP Generated automatically by Doxygen for Coin from the source code\&.