Skip to content

Vp::Manipulators ​

#include "Viewport/Manipulators.h"

Public Classes ​

Name
classManipulator

Public Types ​

Name
enum classManipulatorType { UNKNOWN, UNIMPLEMENTED, TRANSLATE, ROTATE_X, ROTATE_Y, ROTATE_Z, ROTATE, SCALE, ORTHO, PERSPECTIVE, FRUSTUM, LOOKAT}

Public Functions ​

Name
Manipulators(Viewport * viewport)
voidaddManipulator(std::shared_ptr< Core::Node > node)
voidclearManipulators()
booldrawManipulators(glm::vec2 windowPos, glm::vec2 windowSize, const glm::mat4 * referenceFrame, const glm::mat4 & view, const glm::mat4 & proj)
booldrawViewAxes(glm::vec2 windowPos, glm::vec2 windowSize, const ImVec2 & position, const ImVec2 & size, const glm::mat4 * model, glm::mat4 & view, const glm::mat4 & proj, float * axisFactors =nullptr)

Public Types Documentation ​

enum ManipulatorType ​

EnumeratorValueDescription
UNKNOWN
UNIMPLEMENTED
TRANSLATE
ROTATE_X
ROTATE_Y
ROTATE_Z
ROTATE
SCALE
ORTHO
PERSPECTIVE
FRUSTUM
LOOKAT

Public Functions Documentation ​

function Manipulators ​

cpp
explicit Manipulators(
    Viewport * viewport
)
explicit Manipulators(
    Viewport * viewport
)

function addManipulator ​

cpp
void addManipulator(
    std::shared_ptr< Core::Node > node
)
void addManipulator(
    std::shared_ptr< Core::Node > node
)

function clearManipulators ​

cpp
void clearManipulators()
void clearManipulators()

function drawManipulators ​

cpp
bool drawManipulators(
    glm::vec2 windowPos,
    glm::vec2 windowSize,
    const glm::mat4 * referenceFrame,
    const glm::mat4 & view,
    const glm::mat4 & proj
)
bool drawManipulators(
    glm::vec2 windowPos,
    glm::vec2 windowSize,
    const glm::mat4 * referenceFrame,
    const glm::mat4 & view,
    const glm::mat4 & proj
)

Parameters:

  • windowPos
  • windowSize
  • referenceFrame Reference frame matrix

Return: Whether manipulators have been interacted with.

function drawViewAxes ​

cpp
bool drawViewAxes(
    glm::vec2 windowPos,
    glm::vec2 windowSize,
    const ImVec2 & position,
    const ImVec2 & size,
    const glm::mat4 * model,
    glm::mat4 & view,
    const glm::mat4 & proj,
    float * axisFactors =nullptr
)
bool drawViewAxes(
    glm::vec2 windowPos,
    glm::vec2 windowSize,
    const ImVec2 & position,
    const ImVec2 & size,
    const glm::mat4 * model,
    glm::mat4 & view,
    const glm::mat4 & proj,
    float * axisFactors =nullptr
)

Updated on 2025-05-31 at 12:55:31 +0000