---
name: "SbBox2s"
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/SbBox2s"
---

# SbBox2s(3)

The SbBox2s class is a 2 dimensional box with short integer coordinates.

## NAME

SbBox2s - The **SbBox2s** class is a 2 dimensional box with short integer coordinates.

## SYNOPSIS

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

### Public Member Functions

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

### Related Symbols

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

## Detailed Description

The **SbBox2s** class is a 2 dimensional box with short integer coordinates.

This box class is used by other classes in Coin for data exchange. It provides storage for two box corners with short 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

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

The default constructor makes an empty box.

### SbBox2s::SbBox2s (short xmin, short ymin, short xmax, short 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.

### SbBox2s::SbBox2s (const SbVec2s & boxmin, const SbVec2s & boxmax) \[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.

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

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

**Since**

Coin 2.5

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

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

**Since**

Coin 2.5

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

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

**Since**

Coin 2.5

## Member Function Documentation

### SbBox2s & SbBox2s::setBounds (short xmin, short ymin, short xmax, short 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()**.

### SbBox2s & SbBox2s::setBounds (const SbVec2s & boxmin, const SbVec2s & 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()**.

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

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

Returns reference to self.

**See also**

**setBounds()**

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

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

Returns reference to self.

**See also**

**setBounds()**

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

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

Returns reference to self.

**See also**

**setBounds()**

### void SbBox2s::getBounds (short & xmin, short & ymin, short & xmax, short & ymax) const \[inline\]

Returns the box boundary coordinates.

**See also**

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

### void SbBox2s::getBounds (SbVec2s & boxmin, SbVec2s & boxmax) const \[inline\]

Returns the box corner points.

**See also**

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

### const SbVec2s & SbBox2s::getMin (void ) const \[inline\]

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

**See also**

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

### SbVec2s & SbBox2s::getMin (void ) \[inline\]

Returns the lower left corner of the box.

**See also**

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

### const SbVec2s & SbBox2s::getMax (void ) const \[inline\]

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

**See also**

**getMin()**.

### SbVec2s & SbBox2s::getMax (void ) \[inline\]

Returns the upper right corner of the box.

**See also**

**getMin()**.

### void SbBox2s::extendBy (const SbVec2s & 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 SbBox2s::extendBy (const SbBox2s & box)

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

### void SbBox2s::makeEmpty (void )

Marks this as an empty box.

**See also**

**isEmpty()**.

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

Check if this has been marked as an empty box.

**See also**

**makeEmpty()**.

### SbBool SbBox2s::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 SbBox2s::intersect (const SbVec2s & point) const

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

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

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

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

Returns the center point of the box.

### void SbBox2s::getOrigin (short & originX, short & originY) const \[inline\]

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

**See also**

**getMin()**.

### void SbBox2s::getSize (short & sizeX, short & sizeY) const \[inline\]

Returns width and height of box.

### SbVec2s SbBox2s::getSize (void ) const \[inline\]

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

**Since**

Coin 3.0

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

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

## Friends And Related Symbol Documentation

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

Check *b1* and *b2* for equality.

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

Check *b1* and *b2* for inequality.

## Author

Generated automatically by Doxygen for Coin from the source code.
