Coin Logo http://www.sim.no
http://www.coin3d.org

SbBox2i32 Class Reference
[Base classes]

The SbBox2i32 class is a 2 dimensional box with int32_t coordinates.

This box class is used by other classes in Coin for data exchange. It provides storage for two box corners with int32_t coordinates. More...

#include <Inventor/SbBox.h>

List of all members.

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)
SbBox2i32setBounds (int32_t xmin, int32_t ymin, int32_t xmax, int32_t ymax)
SbBox2i32setBounds (const SbVec2i32 &minpoint, const SbVec2i32 &maxpoint)
SbBox2i32setBounds (const SbBox2s &box)
SbBox2i32setBounds (const SbBox2f &box)
SbBox2i32setBounds (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 SbVec2i32getMin (void) const
SbVec2i32getMin (void)
const SbVec2i32getMax (void) const
SbVec2i32getMax (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
float getAspectRatio (void) const

Related Functions

(Note that these are not member functions.)

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 int32_t coordinates.

This box class is used by other classes in Coin for data exchange. It provides storage for two box corners with int32_t coordinates.

See also:
SbBox2d, SbBox2f, SbBox2s, SbBox3d, SbBox3f, SbBox3i32, SbBox3s, SbXfBox3d, SbXfBox3f
Since:
Coin-2.5

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 a box with coordinates from box, converting the coordinates to 32-bit integers

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

Constructs a box with coordinates from box, converting the coordinates to 32-bit integers

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

Constructs a box with coordinates from box, converting the coordinates to 32-bit integers


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

References SbBox2s::getMax(), SbBox2s::getMin(), SbBox2s::isEmpty(), makeEmpty(), and SbVec2i32::setValue().

SbBox2i32 & SbBox2i32::setBounds ( const SbBox2f box  ) 

Reset the boundaries to the boundaries of the given box.

Returns reference to self.

See also:
getBounds()

References SbBox2f::getMax(), SbBox2f::getMin(), SbBox2f::isEmpty(), makeEmpty(), and SbVec2i32::setValue().

SbBox2i32 & SbBox2i32::setBounds ( const SbBox2d box  ) 

Reset the boundaries to the boundaries of the given box.

Returns reference to self.

See also:
getBounds()

References SbBox2d::getMax(), SbBox2d::getMin(), SbBox2d::isEmpty(), makeEmpty(), and SbVec2i32::setValue().

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

Referenced by extendBy(), intersect(), operator==(), SbBox2s::setBounds(), SbBox2f::setBounds(), and SbBox2d::setBounds().

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

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

See also:
getOrigin(), getMax().

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

Referenced by extendBy(), intersect(), operator==(), SbBox2s::setBounds(), SbBox2f::setBounds(), and SbBox2d::setBounds().

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

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

See also:
getMin().

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.

References SbVec2i32::setValue().

Referenced by extendBy().

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.

References extendBy(), getMax(), getMin(), maxpt, minpt, and SoDebugError::postWarning().

void SbBox2i32::makeEmpty ( void   ) 

Marks this as an empty box.

See also:
isEmpty().

References SbVec2i32::setValue().

Referenced by setBounds().

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

Check if this has been marked as an empty box.

See also:
makeEmpty().

Referenced by SbBox2s::setBounds(), SbBox2f::setBounds(), and SbBox2d::setBounds().

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

Check if the box has "positive" area, i.e. the lower left corner is actually lower and more to the left than the other corner 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 wholly or partly within the boundaries of this box.

References getMax(), and getMin().

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.

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

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


Friends And Related Function Documentation

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

Check b1 and b2 for equality.

References getMax(), and getMin().

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

Check b1 and b2 for inequality.


The documentation for this class was generated from the following files:

Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.

Generated on Mon Feb 23 16:33:40 2009 for Coin by Doxygen. 1.5.8