---
name: "SbBox2i32"
section: "3"
platform: "linux"
package: "coin"
version: "1:4.0.10-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/SbBox2i32"
---

# SbBox2i32(3)

The SbBox2i32 class is a 2 dimensional box with 32-bit integer coordinates.

## NAME

SbBox2i32 - The **SbBox2i32** class is a 2 dimensional box with 32-bit integer coordinates.

## SYNOPSIS

\#include \<Inventor/SbBox2i32.h\>

### Public Member Functions

**SbBox2i32** (void)\
 **SbBox2i32** (int32\_t xmin, int32\_t ymin, int32\_t xmax, int32\_t ymax)\
 **SbBox2i32** (const **SbVec2i32** &minpoint, const **SbVec2i32** &maxpoint)\
 **SbBox2i32** (const **SbBox2s** &box)\
 **SbBox2i32** (const **SbBox2f** &box)\
 **SbBox2i32** (const **SbBox2d** &box)\
 **SbBox2i32** & **setBounds** (int32\_t xmin, int32\_t ymin, int32\_t xmax, int32\_t ymax)\
 **SbBox2i32** & **setBounds** (const **SbVec2i32** &minpoint, const **SbVec2i32** &maxpoint)\
 **SbBox2i32** & **setBounds** (const **SbBox2s** &box)\
 **SbBox2i32** & **setBounds** (const **SbBox2f** &box)\
 **SbBox2i32** & **setBounds** (const **SbBox2d** &box)\
 void **getBounds** (int32\_t &xmin, int32\_t &ymin, int32\_t &xmax, int32\_t &ymax) const\
 void **getBounds** (**SbVec2i32** &minpoint, **SbVec2i32** &maxpoint) const\
 const **SbVec2i32** & **getMin** (void) const\
 **SbVec2i32** & **getMin** (void)\
 const **SbVec2i32** & **getMax** (void) const\
 **SbVec2i32** & **getMax** (void)\
 void **extendBy** (const **SbVec2i32** &point)\
 void **extendBy** (const **SbBox2i32** &box)\
 void **makeEmpty** (void)\
 SbBool **isEmpty** (void) const\
 SbBool **hasArea** (void) const\
 SbBool **intersect** (const **SbVec2i32** &point) const\
 SbBool **intersect** (const **SbBox2i32** &box) const\
 **SbVec2f** **getCenter** (void) const\
 void **getOrigin** (int32\_t &originX, int32\_t &originY) const\
 void **getSize** (int32\_t &sizeX, int32\_t &sizeY) const\
 **SbVec2i32** **getSize** (void) const\
 float **getAspectRatio** (void) const\

### Related Symbols

(Note that these are not member symbols.)  int **operator==** (const **SbBox2i32** &b1, const **SbBox2i32** &b2)\
 int **operator!=** (const **SbBox2i32** &b1, const **SbBox2i32** &b2)\

## Detailed Description

The **SbBox2i32** class is a 2 dimensional box with 32-bit integer coordinates.

This box class is used by other classes in Coin for data exchange. It provides storage for two box corners with 32-bit integer coordinates, which is among other things useful for representing screen or canvas areas in absolute window coordinates.

**See also**

**SbBox2f**, **SbBox2d**, **SbBox3s**, **SbBox3f**, **SbBox3d**, **SbXfBox3f**.

## Constructor & Destructor Documentation

### SbBox2i32::SbBox2i32 (void ) \[inline\]

The default constructor makes an empty box.

### SbBox2i32::SbBox2i32 (int32\_t xmin, int32\_t ymin, int32\_t xmax, int32\_t ymax) \[inline\]

Constructs a box with the given corner coordinates.

*xmin* should be less than *xmax* and *ymin* should be less than *ymax* if you want to make a valid box.

### SbBox2i32::SbBox2i32 (const SbVec2i32 & minpt, const SbVec2i32 & maxpt) \[inline\]

Constructs a box with the given corners.

The coordinates of *min* should be less than the coordinates of *max* if you want to make a valid box.

### SbBox2i32::SbBox2i32 (const SbBox2s & box) \[inline\], \[explicit\]

Constructs an **SbBox2i32** instance from the value in an **SbBox2s** instance.

**Since**

Coin 2.5

### SbBox2i32::SbBox2i32 (const SbBox2f & box) \[inline\], \[explicit\]

Constructs an **SbBox2i32** instance from the value in an **SbBox2f** instance.

**Since**

Coin 2.5

### SbBox2i32::SbBox2i32 (const SbBox2d & box) \[inline\], \[explicit\]

Constructs an **SbBox2i32** instance from the value in an **SbBox2d** instance.

**Since**

Coin 2.5

## Member Function Documentation

### SbBox2i32 & SbBox2i32::setBounds (int32\_t xmin, int32\_t ymin, int32\_t xmax, int32\_t ymax) \[inline\]

Reset the boundaries of the box.

*xmin* should be less than *xmax* and *ymin* should be less than *ymax* if you want to make a valid box.

Returns reference to self.

**See also**

**getBounds()**.

### SbBox2i32 & SbBox2i32::setBounds (const SbVec2i32 & boxmin, const SbVec2i32 & boxmax) \[inline\]

Reset the boundaries of the box with the given corners.

The coordinates of *min* should be less than the coordinates of *max* if you want to make a valid box.

Returns reference to self.

**See also**

**getBounds()**.

### SbBox2i32 & SbBox2i32::setBounds (const SbBox2s & box)

Reset the boundaries to the boundaries of the given *box*.

Returns reference to self.

**See also**

**getBounds()**

### SbBox2i32 & SbBox2i32::setBounds (const SbBox2f & box)

Reset the boundaries to the boundaries of the given *box*.

Returns reference to self.

**See also**

**getBounds()**

### SbBox2i32 & SbBox2i32::setBounds (const SbBox2d & box)

Reset the boundaries to the boundaries of the given *box*.

Returns reference to self.

**See also**

**getBounds()**

### void SbBox2i32::getBounds (int32\_t & xmin, int32\_t & ymin, int32\_t & xmax, int32\_t & ymax) const \[inline\]

Returns the box boundary coordinates.

**See also**

**setBounds()**, **getMin()**, **getMax()**.

### void SbBox2i32::getBounds (SbVec2i32 & boxmin, SbVec2i32 & boxmax) const \[inline\]

Returns the box corner points.

**See also**

**setBounds()**, **getMin()**, **getMax()**.

### const SbVec2i32 & SbBox2i32::getMin (void ) const \[inline\]

Returns the minimum point. This should usually be the lower left corner point of the box.

**See also**

**getOrigin()**, **getMax()**.

### SbVec2i32 & SbBox2i32::getMin (void ) \[inline\]

Returns a modifiable reference to the minimum point.

### const SbVec2i32 & SbBox2i32::getMax (void ) const \[inline\]

Returns the maximum point. This should usually be the upper right corner point of the box.

**See also**

**getMin()**.

### SbVec2i32 & SbBox2i32::getMax (void ) \[inline\]

Returns a modifiable reference to the maximum point.

### void SbBox2i32::extendBy (const SbVec2i32 & point)

Extend the boundaries of the box by the given point, i.e. make the point fit inside the box if it isn't already within it.

### void SbBox2i32::extendBy (const SbBox2i32 & box)

Extend the boundaries of the box by the given *box* parameter. This is equal to calling **extendBy()** twice with the corner points.

### void SbBox2i32::makeEmpty (void )

Marks this as an empty box.

**See also**

**isEmpty()**.

### SbBool SbBox2i32::isEmpty (void ) const \[inline\]

Check if this has been marked as an empty box.

**See also**

**makeEmpty()**.

### SbBool SbBox2i32::hasArea (void ) const \[inline\]

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).

### SbBool SbBox2i32::intersect (const SbVec2i32 & point) const

Check if the given point lies within the boundaries of this box.

### SbBool SbBox2i32::intersect (const SbBox2i32 & box) const

Check if *box* lies entirely or partially within the boundaries of this box.

### SbVec2f SbBox2i32::getCenter (void ) const \[inline\]

Returns the center point of the box.

### void SbBox2i32::getOrigin (int32\_t & originX, int32\_t & originY) const \[inline\]

Returns the coordinates of the box origin (i.e. the lower left corner).

**See also**

**getMin()**.

### void SbBox2i32::getSize (int32\_t & sizeX, int32\_t & sizeY) const \[inline\]

Returns width and height of box.

### SbVec2i32 SbBox2i32::getSize (void ) const \[inline\]

Returns width and height of box as a 2D vector.

**Since**

Coin 3.0

### float SbBox2i32::getAspectRatio (void ) const \[inline\]

Returns aspect ratio of box, which is defined as box width divided by box height.

## Friends And Related Symbol Documentation

### int operator== (const SbBox2i32 & b1, const SbBox2i32 & b2) \[related\]

Check *b1* and *b2* for equality.

### int operator!= (const SbBox2i32 & b1, const SbBox2i32 & b2) \[related\]

Check *b1* and *b2* for inequality.

## Author

Generated automatically by Doxygen for Coin from the source code.
