This page has been translated automatically.
Видеоуроки
Интерфейс
Основы
Продвинутый уровень
Подсказки и советы
Основы
Программирование на C#
Рендеринг
Профессиональный уровень (SIM)
Принципы работы
Свойства (properties)
Компонентная Система
Рендер
Физика
Редактор UnigineEditor
Обзор интерфейса
Работа с ассетами
Контроль версий
Настройки и предпочтения
Работа с проектами
Настройка параметров ноды
Setting Up Materials
Настройка свойств
Освещение
Sandworm
Использование инструментов редактора для конкретных задач
Расширение функционала редактора
Встроенные объекты
Ноды (Nodes)
Объекты (Objects)
Эффекты
Декали
Источники света
Geodetics
World-ноды
Звуковые объекты
Объекты поиска пути
Player-ноды
Программирование
Основы
Настройка среды разработки
Примеры использования
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Плагины
Форматы файлов
Материалы и шейдеры
Rebuilding the Engine Tools
Интерфейс пользователя (GUI)
Двойная точность координат
API
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
Работа с контентом
Оптимизация контента
Материалы
Визуальный редактор материалов
Сэмплы материалов
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Учебные материалы
Внимание! Эта версия документация УСТАРЕЛА, поскольку относится к более ранней версии SDK! Пожалуйста, переключитесь на самую актуальную документацию для последней версии SDK.
Внимание! Эта версия документации описывает устаревшую версию SDK, которая больше не поддерживается! Пожалуйста, обновитесь до последней версии SDK.

Unigine::Plugins::Projection Class

Warning
The functionality described in this article is not available in the Community SDK edition.
You should upgrade to Sim SDK edition to use it.
Header: #include <plugins/Unigine/Projection/UnigineProjection.h>

This set of functions is available when the Projection plugin is loaded. This plugin allows creating multi-projector setups.

Notice
Projection plugin cannot be used in a Qt-based application

If the plugin is loaded together with the engine, the HAS_PROJECTION definition is set. This definition can be used, for example, to avoid errors if the plugin is not loaded: the code in which the plugin functions are executed can be wrapped around as follows:

Source code (UnigineScript)
#ifdef HAS_PROJECTION
	// engine.projection functions
#endif

Projection Class

Members


void showSetupWindow ( ) #

Shows the setup window for the Projection plugin.

void setResolutionUpscale ( float upscale ) #

Sets the resolution upscale factor.

Arguments

  • float upscale - Resolution upscale factor.

float getResolutionUpscale ( ) const#

Returns the current resolution upscale factor.

Return value

Resolution upscale factor.

void setPluginEnabled ( bool enabled ) #

Enables or disables the Projection plugin.
Notice
All distortions will be removed.

Arguments

  • bool enabled - true to enable the Projection plugin; false to disable it.

bool isPluginEnabled ( ) const#

Returns a value indicating if the Projection plugin is enabled.

Return value

true if the Projection plugin is enabled; otherwise, false.

int projectionGetWidth ( ) const#

Returns the number of projections set via width CLI option.

Return value

Number of projections.

void setPrimary ( int primary ) #

Specifies which projection to use as a primary one.

Arguments

int getPrimary ( ) const#

Returns the number of projection, which is used as a primary one.

Return value

Projection number, in the range from 0 to the total number of projections.

bool saveState ( const Ptr<Stream> & stream ) const#

Saves current states of all projections (warping, blending, color, etc.) to the specified stream.

Saving into the stream requires creating a blob to save into. To restore the saved state the restoreState() method is used:

Source code (C++)
// set the projection state
//...//

// save state
BlobPtr blob_state = Blob::create();
appprojection1->saveState(blob_state);

// change state
//...//

// restore state
blob_state->seekSet(0);				// returning the carriage to the start of the blob
appprojection1->restoreState(blob_state);

Arguments

  • const Ptr<Stream> & stream - Stream to save state data for all projections.

Return value

true on success; otherwise, false.

bool saveState ( int num, const Ptr<Stream> & stream ) const#

Saves the current state of the projection with the specified number to the specified stream.

Saving into the stream requires creating a blob to save into. To restore the saved state the restoreState() method is used:

Source code (C++)
// set the projection state
//...//

// save state
BlobPtr blob_state = Blob::create();
appprojection1->saveState(0, blob_state);

// change state
//...//

// restore state
blob_state->seekSet(0);				// returning the carriage to the start of the blob
appprojection1->restoreState(0, blob_state);

Arguments

Return value

true on success; otherwise, false.

bool restoreState ( const Ptr<Stream> & stream ) #

Restores states of all projections (warping, blending, color, etc.) from the specified stream.

Restoring from the stream requires creating a blob to save into and saving the state using the saveState() method:

Source code (C++)
// set the projection state
//...//

// save state
BlobPtr blob_state = Blob::create();
appprojection1->saveState(blob_state);

// change state
//...//

// restore state
blob_state->seekSet(0);				// returning the carriage to the start of the blob
appprojection1->restoreState(blob_state);

Arguments

  • const Ptr<Stream> & stream - Stream containing saved state data for all projections.

Return value

true on success; otherwise, false.

bool restoreState ( int num, const Ptr<Stream> & stream ) #

Restores the state of the projection with the specified number from the specified stream.

Restoring from the stream requires creating a blob to save into and saving the state using the saveState() method:

Source code (C++)
// set the projection state
//...//

// save state
BlobPtr blob_state = Blob::create();
appprojection1->saveState(0, blob_state);

// change state
//...//

// restore state
blob_state->seekSet(0);				// returning the carriage to the start of the blob
appprojection1->restoreState(0, blob_state);

Arguments

Return value

true on success; otherwise, false.

void reset ( ) #

Resets all parameters (warping, blending, color, etc.) of all projections to default values.

void reset ( int num ) #

Resets all parameters (warping, blending, color, etc.) of the specified projection to default values.

Arguments

void save ( const char * file_name, int binary = 0 ) #

Saves configurations of all projections to the specified file.

Arguments

  • const char * file_name - Path to a .proj file, to which configurations of all projections are to be saved.
  • int binary - 1 to save in binary format, 0 to save in XML format. The default value is 0.

void save ( int num, const char * file_name, int binary = 0 ) #

Saves configuration of the specified projection to the specified file.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • const char * file_name - Path to a .proj file, to which configuration of the specified projection is to be saved.
  • int binary - 1 to save in binary format, 0 to save in XML format. The default value is 0.

void load ( const char * file_name, int binary = 0 ) #

Loads configurations of all projections from the specified file.

Arguments

  • const char * file_name - Path to a .proj file containing configurations of all projections.
  • int binary - 1 to save in binary format, 0 to save in XML format. The default value is 0.

void load ( int num, const char * file_name, int binary = 0 ) #

Loads configuration of the specified projection from the specified file.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • const char * file_name - Path to a .proj file containing configuration of the specified projection.
  • int binary - 1 to save in binary format, 0 to save in XML format. The default value is 0.

void setEnabled ( int num, int enable ) #

Enables the specified projection for viewport rendering.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int enable - 1 to enable the projection for rendering; 0 to disable it.

int isEnabled ( int num ) const#

Returns a value indicating if the specified projection is enabled for viewport rendering.

Arguments

Return value

1 if the projection is enabled for rendering; otherwise, 0.

void setAngle ( int num, int angle ) #

Sets canvas rotation angle for the specified projection.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int angle - Canvas rotation angle:
    • 0 - 0 degrees
    • 1 - 90 degrees
    • 2 - 180 degrees
    • 3 - 270 degrees

int getAngle ( int num ) const#

Returns the current canvas rotation angle for the specified projection.

Arguments

Return value

Current canvas rotation angle:
  • 0 - 0 degrees
  • 1 - 90 degrees
  • 2 - 180 degrees
  • 3 - 270 degrees

void setFlipHorizontal ( int num, int flip ) #

Enables or disables horizontal flipping of canvas for the specified projection.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int flip - 1 to enable horizontal flipping for the canvas of the specified projection, 0 to disable it.

int isFlipHorizontal ( int num ) const#

Returns a value indicating if the canvas of the specified projection is flipped horizontally.

Arguments

Return value

1 if the canvas of the specified projection is flipped horizontally; otherwise, 0.

void setFlipVertical ( int num, int flip ) #

Enables or disables vertical flipping of canvas for the specified projection.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int flip - 1 to enable vertical flipping for the canvas of the specified projection, 0 to disable it.

int isFlipVertical ( int num ) const#

Returns a value indicating if the canvas of the specified projection is flipped vertically.

Arguments

Return value

1 if the canvas of the specified projection is flipped vertically; otherwise, 0.

void setDebugFillColor ( int num, int color_num ) #

Sets a color to be used for the specified projection in debug mode.
Notice
Setting individual colors for different projections enables you to visualize overlapping regions for different projections and facilitates the setup process.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int color_num - Color to be used for the specified projection in debug mode, one of the following values:
    • 0 - no color
    • 1 - red
    • 2 - green
    • 3 - blue
    • 4 - cyan
    • 5 - magenta
    • 6 - yellow
    • 7 - white
    • 8 - black

int getDebugFillColor ( int num ) const#

Returns the current color used for the specified projection in debug mode.
Notice
Setting individual colors for different projections enables you to visualize overlapping regions for different projections and facilitates the setup process.

Arguments

Return value

Color currently used for the specified projection in debug mode, one of the following values:
  • 0 - no color
  • 1 - red
  • 2 - green
  • 3 - blue
  • 4 - cyan
  • 5 - magenta
  • 6 - yellow
  • 7 - white
  • 8 - black

void setDebugShowGrid ( int num, int show ) #

Enables or disables visualization of warping grid for the specified projection on the screen.
Notice
This option significantly facilitates the process of debugging configuration of a multi-projector setup.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int show - 1 to enable visualization of warping grid for the specified projection on the screen, 0 to disable it.

int isDebugShowGrid ( int num ) const#

Returns a value indicating if warping grid for the specified projection is displayed on the screen.
Notice
This option significantly facilitates the process of debugging configuration of a multi-projector setup.

Arguments

Return value

1 if warping grid for the specified projection is displayed on the screen; otherwise, 0.

void setDebugShowWarpPoints ( int num, int show ) #

Enables or disables visualization of warping control points for the specified projection on the screen.
Notice
This option significantly facilitates the process of debugging configuration of a multi-projector setup.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int show - 1 to enable visualization of warping control points for the specified projection on the screen, 0 to disable it.

int isDebugShowWarpPoints ( int num ) const#

Returns a value indicating if warping control points for the specified projection are displayed on the screen.
Notice
This option significantly facilitates the process of debugging configuration of a multi-projector setup.

Arguments

Return value

1 if warping control points for the specified projection are displayed on the screen; otherwise, 0.

void setWarpPoints ( int num, const Vector< Math::vec2 > & points, int columns, int rows ) #

Sets warping grid size (width, height) and positions of all its control points for the specified projection.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • const Vector< Math::vec2 > & points - Vector containing positions of all warping grid points. Vector size is determined by the values for columns and rows specified.
  • int columns - Grid width, defines the number of warping grid points horizontally.
  • int rows - Grid height, defines the number of warping grid points vertically.

void getWarpPoints ( int num, Vector< Math::vec2 > & points, int & columns, int & rows ) const#

Gets the current size (width, height) of the warping grid along with positions of all its control points for the specified projection and puts them to the specified variables.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • Vector< Math::vec2 > & points - Vector to which positions of all warping grid points are to be put.
  • int & columns - Grid width, defines the number of warping grid points horizontally.
  • int & rows - Grid height, defines the number of warping grid points vertically.

void setWarpHandles ( int num, const Vector< Math::vec2 > & handles ) #

Sets coordinates of control handles for all warping grid points of the specified projection.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • const Vector< Math::vec2 > & handles - Vector containing coordinates of handles for all warping grid points. First half - vertical handles, next half - horizontal ones.
    Notice
    The number of control handles must be twice as large as the number of grid points, as there are two handles for each point.

void getWarpHandles ( int num, Vector< Math::vec2 > & handles ) const#

Gets coordinates of control handles of all warping grid points for the specified projection and puts them to the specified vector.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • Vector< Math::vec2 > & handles - Vector containing coordinates of control handles for all mask polygon points. First half - vertical handles, next half - horizontal ones.
    Notice
    The number of control handles must be twice as large as the number of grid points, as there are two handles for each point.

void resetWarpGrid ( int num ) #

Resets warping grid for the specified projection to the default one.

Arguments

void setBorderBlend ( int num, int border_num, const Math::vec4& blend ) #

Sets edge blending parameters for the specified side of the specified projection.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int border_num - Number of projection's side:
    • 0 - left
    • 1 - right
    • 2 - top
    • 3 - bottom
  • const Math::vec4& blend - Four-component vector containing soft edge blending parameters for the specified side of the specified projection: (X - size, Y - alpha, Z - contrast, W - gamma).
    Notice
    The power component should have a non-zero value to enable blending.

Math::vec4 getBorderBlend ( int num, int border_num ) const#

Returns current edge blending parameters for the specified side of the specified projection.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int border_num - Number of projection's side:
    • 0 - left
    • 1 - right
    • 2 - top
    • 3 - bottom

Return value

Four-component vector containing soft edge blending parameters for the specified side of the specified projection: (X - size, Y - alpha, Z - contrast, W - gamma).
Notice
The power component should have a non-zero value to enable blending.

void setMultiplyImage ( int num, const Ptr<Image> & image ) #

Sets the edge blending map for the specified projection.

Arguments

void setMultiplyTexture ( int num, const Ptr<Texture> & texture ) #

Sets the edge blending map for the specified projection.

Arguments

Ptr<Texture> getMultiplyTexture ( int num ) #

Returns the current edge blending map for the specified projection.

Arguments

Return value

Current edge blending map.

int addBlend ( int num, const Vector< Math::vec2 > & points, const Vector< Math::vec2 > & handles_left, const Vector< Math::vec2 > & handles_right ) #

Adds a new screen-space blend area for the specified projection. The form of the new screen-space blend area is defined by the positions of points and control handles (left and right) stored in the vectors specified.
Notice
All three vectors must have the same size.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • const Vector< Math::vec2 > & points - Vector containing positions of all screen-space blend area polygon points.
  • const Vector< Math::vec2 > & handles_left - Vector containing coordinates of left control handles for all screen-space blend area polygon points.
  • const Vector< Math::vec2 > & handles_right - Vector containing coordinates of right control handles for all screen-space blend area polygon points.

Return value

Number of the last added screen-space blend area.

void getBlend ( int num, int blend_num, Vector< Math::vec2 > & points, Vector< Math::vec2 > & handles_left, Vector< Math::vec2 > & handles_right ) const#

Gets all points, along with their control handles, for the specified screen-space blend area of the specified projection and puts the data to the corresponding vectors specified.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int blend_num - Screen-space blend area number, in the range from 0 to the total number of screen-space blend areas.
  • Vector< Math::vec2 > & points - Vector containing positions of all screen-space blend area polygon points.
  • Vector< Math::vec2 > & handles_left - Vector containing coordinates of left control handles for all screen-space blend area polygon points.
  • Vector< Math::vec2 > & handles_right - Vector containing coordinates of right control handles for all screen-space blend area polygon points.

int getNumBlends ( int num ) const#

Returns the total number of screen-space blend areas assigned for the specified projection. Blends can be used for blending regions or to cut out certain areas (e.g. top and bottom areas for a curved screen projection).

Arguments

Return value

Total number of blends assigned for the specified projection, including the ones enabled and disabled.

void setBlendEnabled ( int num, int blend_num, int enabled ) #

Enables or disables the specified screen-space blend area of the specified projection.

Arguments

int isBlendEnabled ( int num, int blend_num ) const#

Returns a value indicating if the specified screen-space blend area of the specified projection is enabled.

Arguments

Return value

1 if warping grid for the specified projection is displayed on the screen; otherwise, 0.

void setBlendAlpha ( int num, int blend_num, float alpha ) #

Sets a new transparency value for the specified screen-space blend area of the specified projection.

Arguments

float getBlendAlpha ( int num, int blend_num ) const#

Returns the current transparency value for the specified screen-space blend area of the specified projection.

Arguments

Return value

Current transparency value.

void setBlendContrast ( int num, int blend_num, float alpha ) #

Sets a new gradient part contrast value for the specified screen-space blend area of the specified projection.

Arguments

float getBlendContrast ( int num, int blend_num ) const#

Returns the current gradient part contrast value for the specified screen-space blend area of the specified projection.

Arguments

Return value

Current gradient part contrast value.

void setBlendGamma ( int num, int blend_num, float power ) #

Sets a new gamma correction value for the specified screen-space blend area of the specified projection.

Arguments

float getBlendGamma ( int num, int blend_num ) const#

Returns the current gamma correction value for the specified screen-space blend area of the specified projection.

Arguments

Return value

Current gamma correction value.

void clearBlends ( int num ) #

Removes all screen-space blend area created for the specified projection.

Arguments

void setDebugShowBlendPoints ( int num, int show ) #

Enables or disables visualization of screen-space blend area control points for the specified projection on the screen.
Notice
This option significantly facilitates the process of debugging configuration of a multi-projector setup.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int show - 1 to enable visualization of screen-space blend area control points for the specified projection on the screen, 0 to disable it.

int isDebugShowBlendPoints ( int num ) const#

Returns a value indicating if screen-space blend area control points for the specified projection are displayed on the screen.
Notice
This option significantly facilitates the process of debugging configuration of a multi-projector setup.

Arguments

Return value

1 if screen-space blend area control points for the specified projection are displayed on the screen; otherwise, 0.

int addMask ( int num, const Vector< Math::vec2 > & points, const Vector< Math::vec2 > & handles_left, const Vector< Math::vec2 > & handles_right ) #

Adds a new mask for the specified projection. The form of the new mask is defined by the positions of points and control handles (left and right) stored in the vectors specified.
Notice
All three vectors must have the same size.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • const Vector< Math::vec2 > & points - Vector containing positions of all mask polygon points.
  • const Vector< Math::vec2 > & handles_left - Vector containing coordinates of left control handles for all mask polygon points.
  • const Vector< Math::vec2 > & handles_right - Vector containing coordinates of right control handles for all mask polygon points.

Return value

Number of the last added mask.

void getMask ( int num, int mask_num, Vector< Math::vec2 > & points, Vector< Math::vec2 > & handles_left, Vector< Math::vec2 > & handles_right ) const#

Gets all points, along with their control handles, for the specified mask of the specified projection and puts the data to the corresponding vectors specified.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int mask_num - Mask number, in the range from 0 to the total number of masks.
  • Vector< Math::vec2 > & points - Vector containing positions of all mask polygon points.
  • Vector< Math::vec2 > & handles_left - Vector containing coordinates of left control handles for all mask polygon points.
  • Vector< Math::vec2 > & handles_right - Vector containing coordinates of right control handles for all mask polygon points.

int getNumMasks ( int num ) const#

Returns the total number of masks assigned for the specified projection. Masks can be used for blending regions or to cut out certain areas (e.g. top and bottom areas for a curved screen projection).

Arguments

Return value

Total number of masks assigned for the specified projection, including the ones enabled and disabled.

void setMaskEnabled ( int num, int mask_num, int enabled ) #

Enables or disables the specified mask of the specified projection.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • int mask_num - Mask number, in the range from 0 to the total number of masks.
  • int enabled - 1 to enable the specified mask of the specified projection, 0 to disable it.

int isMaskEnabled ( int num, int mask_num ) const#

Returns a value indicating if the specified mask of the specified projection is enabled.

Arguments

Return value

1 if warping grid for the specified projection is displayed on the screen; otherwise, 0.

void setMaskSmooth ( int num, int mask_num, int smooth ) #

Sets smoothing of edges of the specified mask of the specified projection. This value determines the number of additional points to be inserted between the control points of the mask.

Arguments

int getMaskSmooth ( int num, int mask_num ) const#

Returns the current smoothing value used for edges of the specified mask of the specified projection. This value determines the number of additional points to be inserted between the control points of the mask.

Arguments

Return value

Current smoothing value.

void clearMasks ( int num ) #

Removes all mask created for the specified projection.

Arguments

void setColorScale ( int num, const Math::vec4& scale ) #

Sets the color multiplier for the specified projection.

Arguments

Math::vec4 getColorScale ( int num ) const#

Returns the color multiplier for the specified projection.

Arguments

Return value

Per-channel color scale.

void setColorBias ( int num, const Math::vec4& bias ) #

Sets the color bias for the specified projection.

Arguments

Math::vec4 getColorBias ( int num ) const#

Returns the color bias for the specified projection.

Arguments

Return value

Per-channel color bias.

void setCornerBrightness ( int num, const Math::vec4& brightness ) #

Sets brightness correction values for corners of the specified projection using a four-component vector specified.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • const Math::vec4& brightness - Four-component vector containing brightness values, in the [0.0f, 1.0f] range, for projection's corners (upper left, upper right, lower left, lower right).

Math::vec4 getCornerBrightness ( int num ) const#

Returns current brightness correction values for corners of the specified projection as a four-component vector.

Arguments

Return value

Four-component vector containing brightness values, in the [0.0f, 1.0f] range, for projection's corners (upper left, upper right, lower left, lower right).

int addMesh ( int num, const Ptr<Mesh> & mesh, const Math::Mat4& transform ) #

Adds a new mesh for the specified projection.
Notice
Meshes are used for complex-shaped projection screens.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • const Ptr<Mesh> & mesh - Pointer to a mesh to be added.
  • const Math::Mat4& transform - Mesh transformation.

Return value

Total number of meshes for the specified projection.

Ptr<Mesh> getMesh ( int num, int mesh_num ) #

Returns the specified mesh of the specified projection.
Notice
Meshes are used for complex-shaped projection screens.

Arguments

Return value

Mesh pointer.

Math::Mat4 getMeshTransform ( int num, int mesh_num ) #

Returns the transformation of the specified mesh of the specified projection.
Notice
Meshes are used for complex-shaped projection screens.

Arguments

Return value

Mesh transformation.

void resetMesh ( int num ) #

Resets the mesh for the specified projection.
Notice
Meshes are used for complex-shaped projection screens.

Arguments

void setProjectorModelview ( int num, const Math::Mat4& modelview ) #

Sets the projector's model-view matrix for the specified projection.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • const Math::Mat4& modelview - Projector's model-view matrix.

Math::Mat4 getProjectorModelview ( int num ) #

Returns the current projector's model-view matrix for the specified projection.

Arguments

Return value

Projector's model-view matrix.

void setProjectorProjection ( int num, const Math::mat4& projection ) #

Sets the projector's projection matrix for the specified projection.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • const Math::mat4& projection - Projector's projection matrix.

Math::mat4 getProjectorProjection ( int num ) #

Returns the current projector's projection matrix for the specified projection.

Arguments

Return value

Projector's projection matrix.

void setViewerModelview ( int num, const Math::Mat4& modelview ) #

Sets the viewer's model-view matrix for the specified projection.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • const Math::Mat4& modelview - Viewer's model-view matrix.

Math::Mat4 getViewerModelview ( int num ) #

Returns the current viewer's model-view matrix for the specified projection.

Arguments

Return value

Viewer's model-view matrix.

void setViewerProjection ( int num, const Math::mat4& projection ) #

Sets the viewer's projection matrix for the specified projection.

Arguments

  • int num - Projection number, in the range from 0 to the total number of projections.
  • const Math::mat4& projection - Viewer's projection matrix.

Math::mat4 getViewerProjection ( int num ) #

Returns the current viewer's projection matrix for the specified projection.

Arguments

Return value

Viewer's projection matrix.

Ptr<Gui> getGui ( int num ) #

Returns a GUI instance to draw interface on for the specified projection.

Arguments

Return value

GUI instance.

void setCamera ( int num, const Ptr<Camera> & camera ) #

Copies the camera from the specified display to the provided camera.

Arguments

  • int num - Display index.
  • const Ptr<Camera> & camera - Camera to copy the data to.

Ptr<Camera> getCamera ( int num ) #

Returns the camera from the display with the specified index.

Arguments

  • int num - Display index.

Return value

Camera smart pointer.
Last update: 23.06.2023
Build: ()