---
name: "SbViewportRegion"
section: "3iv"
platform: "linux"
package: "inventor-doc"
version: "2.1.6+ds-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SbViewportRegion/3iv"
---

# SbViewportRegion(3iv)

class for representing a viewport

## NAME

SbViewportRegion — class for representing a viewport

## INHERITS FROM

SbViewportRegion

## SYNOPSIS

**#include \<Inventor/SbViewportRegion.h\>**

Methods from class SbViewportRegion:

	**SbViewportRegion()**\
 	**SbViewportRegion(short width, short height)**\
 	**SbViewportRegion(SbVec2s winSize)**\
 	**SbViewportRegion(const SbViewportRegion &vpReg)**\
 **void**	**setWindowSize(short width, short height)**\
 **void**	**setWindowSize(SbVec2s winSize)**\
 **void**	**setViewport(float left, float bottom, float width, float height)**\
 **void**	**setViewport(SbVec2f origin, SbVec2f size)**\
 **void**	**setViewportPixels(short left, short bottom, short width, short height)**\
 **void**	**setViewportPixels(SbVec2s origin, SbVec2s size)**\
 **const SbVec2s &**	**getWindowSize() const**\
 **const SbVec2f &**	**getViewportOrigin() const**\
 **const SbVec2s &**	**getViewportOriginPixels() const**\
 **const SbVec2f &**	**getViewportSize() const**\
 **const SbVec2s &**	**getViewportSizePixels() const**\
 **float**	**getViewportAspectRatio() const**\
 **void**	**scaleWidth(float ratio)**\
 **void**	**scaleHeight(float ratio)**\
 **void**	**setPixelsPerInch(float ppi)**\
 **float**	**getPixelsPerInch() const**\
 **float**	**getPixelsPerPoint() const**\
 **friend int**	**operator ==(const SbViewportRegion &reg1, const SbViewportRegion &reg2)**

## DESCRIPTION

**This class represents the active viewport region in a display window. It contains the screen-space size of the window as well as the origin and size of the viewport within the window. By default, the viewport** **is the same as the full window. Methods allow the viewport to be set either in terms of screen-space pixels or as normalized coordinates, where (0,0) is the lower-left corner of the window and (1,1) is** **the upper-right corner.**

## METHODS

	**SbViewportRegion()**\
 	**SbViewportRegion(short width, short height)**\
 	**SbViewportRegion(SbVec2s winSize)**\
 	**SbViewportRegion(const SbViewportRegion &vpReg)**\
 Constructors of various kinds.

**void**	**setWindowSize(short width, short height)**\
 Changes window size to given width and height in pixels.

**void**	**setWindowSize(SbVec2s winSize)**\
 Changes window size to given width and height in pixels, given as **SbVec2s**.

**void**	**setViewport(float left, float bottom, float width, float height)**\
 Sets viewport to given region, specified as normalized window coordinates: (0,0) is the lower-left corner, (1,1) is the upper-right.

**void**	**setViewport(SbVec2f origin, SbVec2f size)**\
 Sets viewport to region with given origin (lower-left corner) and size, given as normalized coordinate vectors.

**void**	**setViewportPixels(short left, short bottom, short width, short height)**\
 Sets viewport to given region, specified as pixel coordinates in window: (0,0) is the lower-left corner.

**void**	**setViewportPixels(SbVec2s origin, SbVec2s size)**\
 Sets viewport to region with given origin (lower-left corner) and size, given as pixel coordinates.

**const SbVec2s &**	**getWindowSize() const**\
 Returns window size in pixels.

**const SbVec2f &**	**getViewportOrigin() const**\
 Returns viewport origin in normalized coordinates.

**const SbVec2s &**	**getViewportOriginPixels() const**\
 Returns viewport origin in pixels.

**const SbVec2f &**	**getViewportSize() const**\
 Returns viewport size in normalized coordinates.

**const SbVec2s &**	**getViewportSizePixels() const**\
 Returns viewport size in pixels.

**float**	**getViewportAspectRatio() const**\
 Returns aspect ratio (width/height) of viewport.

**void**	**scaleWidth(float ratio)**\
 **void**	**scaleHeight(float ratio)**\
 Scales viewport within window to be the given ratio of its current width or height, leaving the resulting viewport centered about the same point as the current one.

**void**	**setPixelsPerInch(float ppi)**\
 **float**	**getPixelsPerInch() const**\
 Sets/returns the pixel-per-inch ratio for the display device the viewport is part of. The default value is 72 (1 pixel per printer's point).

**float**	**getPixelsPerPoint() const**\
 Convenience function that returns number of pixels per printer's point.

**friend int**	**operator ==(const SbViewportRegion &reg1, const SbViewportRegion &reg2)**\
 Equality comparison operator.

## SEE ALSO

**SbVec2f, SbVec2s**
