SOORTHOGRAPHICCAMERA(3iv)
π SoOrthographicCamera β orthographic camera node β¨
okay bestie, pull up a chair because we're talking about SoOrthographicCamera, a whole manual page from the 3IV series, and she is lowkey iconic. no cap.
π¦ INHERITS FROM
SoBase > SoFieldContainer > SoNode > SoCamera > SoOrthographicCamera
like, she comes from a long line of distinguished ancestors and she's the baby of the family π
β¨ SYNOPSIS
#include <Inventor/nodes/SoOrthographicCamera.h>
π Fields from class SoOrthographicCamera
SoSFFloatheight
πΈ Fields from class SoCamera
SoSFEnumviewportMappingSoSFVec3fpositionSoSFRotationorientationSoSFFloataspectRatioSoSFFloatnearDistanceSoSFFloatfarDistanceSoSFFloatfocalDistance
π«Ά Methods from class SoOrthographicCamera
SoOrthographicCamera()
static SoType getClassTypeId()
π Methods from class SoCamera
void pointAt(const SbVec3f &targetPoint)
virtual void scaleHeight(float scaleFactor)
virtual SbViewVolume getViewVolume(float useAspectRatio = 0.0) const
void viewAll(SoNode *sceneRoot, const SbViewportRegion
&vpRegion, float slack = 1.0)
void viewAll(SoPath *path, const SbViewportRegion
&vpRegion, float slack = 1.0)
SbViewportRegion getViewportBounds(const SbViewportRegion ®ion)
const
π Methods from class SoNode
void setOverride(SbBool state)
SbBool isOverride() const
SoNode * copy(SbBool copyConnections = FALSE) const
virtual SbBool affectsState() const
static SoNode * getByName(const SbName &name)
static int getByName(const SbName &name, SoNodeList &list)
β Methods from class SoFieldContainer
void setToDefaults()
SbBool hasDefaultValues() const
SbBool fieldsAreEqual(const SoFieldContainer *fc) const
void copyFieldValues(const SoFieldContainer *fc, SbBool
copyConnections = FALSE)
SbBool set(const char *fieldDataString)
void get(SbString &fieldDataString)
virtual int getFields(SoFieldList &resultList) const
virtual SoField * getField(const SbName &fieldName) const
SbBool getFieldName(const SoField *field, SbName &fieldName)
const
SbBool isNotifyEnabled() const
SbBool enableNotify(SbBool flag)
π§ Methods from class SoBase
void ref()
void unref() const
void unrefNoDelete() const
void touch()
virtual SoType getTypeId() const
SbBool isOfType(SoType type) const
virtual void setName(const SbName &name)
virtual SbName getName() const
π₯ DESCRIPTION
okay so. an orthographic camera defines a parallel projection from a viewpoint. the whole vibe is that this camera does not diminish objects with distance, the way an SoPerspectiveCamera does. nope! no shrinking with distance here, bestie, she simply refuses. π
βοΈ
the viewing volume for an orthographic camera is a rectangular parallelepiped (a box). yes. a box. that's the shape. it's giving "i contain multitudes but make them rectangular." π¦
by default, the camera is located at (0,0,1) and looks along the negative z-axis; the position and orientation fields can be used to change these values. the height field defines the total height of the viewing volume; this and the aspectRatio field determine its width. so height + aspectRatio = the width situation. math is math. β¨
πΈ FIELDS
SoSFFloatheightβ Height of the viewing volume. that's it, that's the whole job, and she does it flawlessly π
π METHODS
SoOrthographicCamera()β Creates an orthographic camera node with default settings. a fresh baby camera, defaults and all πstatic SoType getClassTypeId()β Returns type identifier for this class. it's her ID. her little name tag. her passport. πͺͺ
π ACTION BEHAVIOR
SoGLRenderAction, SoCallbackAction, SoGetBoundingBoxAction, SoHandleEventAction, SoRayPickAction
- Sets the viewport and camera information in the state. every single one of them, doing the exact same thing, and honestly? consistent queens. π
π FILE FORMAT/DEFAULTS
OrthographicCamera {
viewportMapping ADJUST_CAMERA
position 0 0 1
orientation 0 0 1 0
aspectRatio 1
nearDistance 1
farDistance 10
focalDistance 5
height 2
}
those are the defaults, copy them exactly, do not freestyle, i am begging π
π SEE ALSO
SbViewVolumeSoPerspectiveCamera
and that's the whole page bestie!! go forth and render something parallel-projected π β¨
okay so this was SoOrthographicCamera(3IV) β that's the title and the manual section, folded in right at the top because we're casual like that π¦. and for the cute sign-off: the page signs itself SoOrthographicCamera(3IV)() at the bottom, which is the source/version situation, so consider that my little goodbye kiss ππ
π¦ where this page comes from
- debian bookworm: inventor-doc 2.1.5-10+dfsg-2 Β· LGPL-2.0-or-later
- debian trixie: inventor-doc 2.1.6+ds-2 Β· LGPL-2.0-or-later
- ubuntu jammy: inventor-doc 2.1.5-10-24
- ubuntu noble: inventor-doc 2.1.5-10+dfsg-2.1build2 Β· LGPL-2.0-or-later
- ubuntu questing: inventor-doc 2.1.6+ds-2
- ubuntu resolute: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- ubuntu stonking: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms