Polyphase Game Engine
Loading...
Searching...
No Matches
IMGUIZMO_NAMESPACE Namespace Reference

Classes

struct  Context
 
struct  matrix_t
 
struct  Style
 
struct  vec_t
 

Enumerations

enum  MOVETYPE {
  MT_NONE , MT_MOVE_X , MT_MOVE_Y , MT_MOVE_Z ,
  MT_MOVE_YZ , MT_MOVE_ZX , MT_MOVE_XY , MT_MOVE_SCREEN ,
  MT_ROTATE_X , MT_ROTATE_Y , MT_ROTATE_Z , MT_ROTATE_SCREEN ,
  MT_SCALE_X , MT_SCALE_Y , MT_SCALE_Z , MT_SCALE_XYZ
}
 
enum  OPERATION {
  TRANSLATE_X = (1u << 0) , TRANSLATE_Y = (1u << 1) , TRANSLATE_Z = (1u << 2) , ROTATE_X = (1u << 3) ,
  ROTATE_Y = (1u << 4) , ROTATE_Z = (1u << 5) , ROTATE_SCREEN = (1u << 6) , SCALE_X = (1u << 7) ,
  SCALE_Y = (1u << 8) , SCALE_Z = (1u << 9) , BOUNDS = (1u << 10) , SCALE_XU = (1u << 11) ,
  SCALE_YU = (1u << 12) , SCALE_ZU = (1u << 13) , TRANSLATE = TRANSLATE_X | TRANSLATE_Y | TRANSLATE_Z , ROTATE = ROTATE_X | ROTATE_Y | ROTATE_Z | ROTATE_SCREEN ,
  SCALE = SCALE_X | SCALE_Y | SCALE_Z , SCALEU = SCALE_XU | SCALE_YU | SCALE_ZU , UNIVERSAL = TRANSLATE | ROTATE | SCALEU
}
 
enum  MODE { LOCAL , WORLD }
 
enum  COLOR {
  DIRECTION_X , DIRECTION_Y , DIRECTION_Z , PLANE_X ,
  PLANE_Y , PLANE_Z , SELECTION , INACTIVE ,
  TRANSLATION_LINE , SCALE_LINE , ROTATION_USING_BORDER , ROTATION_USING_FILL ,
  HATCHED_AXIS_LINES , TEXT , TEXT_SHADOW , COUNT
}
 

Functions

void FPU_MatrixF_x_MatrixF (const float *a, const float *b, float *r)
 
void Frustum (float left, float right, float bottom, float top, float znear, float zfar, float *m16)
 
void Perspective (float fovyInDegrees, float aspectRatio, float znear, float zfar, float *m16)
 
void Cross (const float *a, const float *b, float *r)
 
float Dot (const float *a, const float *b)
 
void Normalize (const float *a, float *r)
 
void LookAt (const float *eye, const float *at, const float *up, float *m16)
 
template<typename T >
Clamp (T x, T y, T z)
 
template<typename T >
max (T x, T y)
 
template<typename T >
min (T x, T y)
 
template<typename T >
bool IsWithin (T x, T y, T z)
 
vec_t makeVect (float _x, float _y, float _z=0.f, float _w=0.f)
 
vec_t makeVect (ImVec2 v)
 
vec_t Normalized (const vec_t &v)
 
vec_t Cross (const vec_t &v1, const vec_t &v2)
 
float Dot (const vec_t &v1, const vec_t &v2)
 
vec_t BuildPlan (const vec_t &p_point1, const vec_t &p_normal)
 
StyleGetStyle ()
 
vec_t PointOnSegment (const vec_t &point, const vec_t &vertPos1, const vec_t &vertPos2)
 
void SetRect (float x, float y, float width, float height)
 
void SetOrthographic (bool isOrthographic)
 
void SetDrawlist (ImDrawList *drawlist)
 
void SetImGuiContext (ImGuiContext *ctx)
 
void BeginFrame ()
 
bool IsUsing ()
 
bool IsUsingViewManipulate ()
 
bool IsViewManipulateHovered ()
 
bool IsUsingAny ()
 
bool IsOver ()
 
bool IsOver (OPERATION op)
 
void Enable (bool enable)
 
void DecomposeMatrixToComponents (const float *matrix, float *translation, float *rotation, float *scale)
 
void RecomposeMatrixFromComponents (const float *translation, const float *rotation, const float *scale, float *matrix)
 
void SetAlternativeWindow (ImGuiWindow *window)
 
void SetID (int id)
 
ImGuiID GetID (const char *str, const char *str_end)
 
ImGuiID GetID (const char *str)
 
ImGuiID GetID (const void *ptr)
 
ImGuiID GetID (int n)
 
void PushID (const char *str_id)
 
void PushID (const char *str_id_begin, const char *str_id_end)
 
void PushID (const void *ptr_id)
 
void PushID (int int_id)
 
void PopID ()
 
void AllowAxisFlip (bool value)
 
void SetAxisLimit (float value)
 
void SetAxisMask (bool x, bool y, bool z)
 
void SetPlaneLimit (float value)
 
bool IsOver (float *position, float pixelRadius)
 
bool Manipulate (const float *view, const float *projection, OPERATION operation, MODE mode, float *matrix, float *deltaMatrix, const float *snap, const float *localBounds, const float *boundsSnap)
 
void SetGizmoSizeClipSpace (float value)
 
void ComputeFrustumPlanes (vec_t *frustum, const float *clip)
 
void DrawCubes (const float *view, const float *projection, const float *matrices, int matrixCount)
 
void DrawGrid (const float *view, const float *projection, const float *matrix, const float gridSize)
 
void ViewManipulate (float *view, const float *projection, OPERATION operation, MODE mode, float *matrix, float length, ImVec2 position, ImVec2 size, ImU32 backgroundColor)
 
void ViewManipulate (float *view, float length, ImVec2 position, ImVec2 size, ImU32 backgroundColor)
 
OPERATION operator| (OPERATION lhs, OPERATION rhs)
 

Variables

const float screenRotateSize = 0.06f
 
const float rotationDisplayFactor = 1.2f
 

Enumeration Type Documentation

◆ COLOR

enum IMGUIZMO_NAMESPACE::COLOR
Enumerator
DIRECTION_X 
DIRECTION_Y 
DIRECTION_Z 
PLANE_X 
PLANE_Y 
PLANE_Z 
SELECTION 
INACTIVE 
TRANSLATION_LINE 
SCALE_LINE 
ROTATION_USING_BORDER 
ROTATION_USING_FILL 
HATCHED_AXIS_LINES 
TEXT 
TEXT_SHADOW 
COUNT 

◆ MODE

enum IMGUIZMO_NAMESPACE::MODE
Enumerator
LOCAL 
WORLD 

◆ MOVETYPE

enum IMGUIZMO_NAMESPACE::MOVETYPE
Enumerator
MT_NONE 
MT_MOVE_X 
MT_MOVE_Y 
MT_MOVE_Z 
MT_MOVE_YZ 
MT_MOVE_ZX 
MT_MOVE_XY 
MT_MOVE_SCREEN 
MT_ROTATE_X 
MT_ROTATE_Y 
MT_ROTATE_Z 
MT_ROTATE_SCREEN 
MT_SCALE_X 
MT_SCALE_Y 
MT_SCALE_Z 
MT_SCALE_XYZ 

◆ OPERATION

enum IMGUIZMO_NAMESPACE::OPERATION
Enumerator
TRANSLATE_X 
TRANSLATE_Y 
TRANSLATE_Z 
ROTATE_X 
ROTATE_Y 
ROTATE_Z 
ROTATE_SCREEN 
SCALE_X 
SCALE_Y 
SCALE_Z 
BOUNDS 
SCALE_XU 
SCALE_YU 
SCALE_ZU 
TRANSLATE 
ROTATE 
SCALE 
SCALEU 
UNIVERSAL 

Function Documentation

◆ AllowAxisFlip()

IMGUI_API void IMGUIZMO_NAMESPACE::AllowAxisFlip ( bool  value)

◆ BeginFrame()

IMGUI_API void IMGUIZMO_NAMESPACE::BeginFrame ( )

◆ BuildPlan()

vec_t IMGUIZMO_NAMESPACE::BuildPlan ( const vec_t p_point1,
const vec_t p_normal 
)

◆ Clamp()

template<typename T >
T IMGUIZMO_NAMESPACE::Clamp ( x,
y,
z 
)

◆ ComputeFrustumPlanes()

void IMGUIZMO_NAMESPACE::ComputeFrustumPlanes ( vec_t frustum,
const float *  clip 
)

◆ Cross() [1/2]

void IMGUIZMO_NAMESPACE::Cross ( const float *  a,
const float *  b,
float *  r 
)

◆ Cross() [2/2]

vec_t IMGUIZMO_NAMESPACE::Cross ( const vec_t v1,
const vec_t v2 
)

◆ DecomposeMatrixToComponents()

IMGUI_API void IMGUIZMO_NAMESPACE::DecomposeMatrixToComponents ( const float *  matrix,
float *  translation,
float *  rotation,
float *  scale 
)

◆ Dot() [1/2]

float IMGUIZMO_NAMESPACE::Dot ( const float *  a,
const float *  b 
)

◆ Dot() [2/2]

float IMGUIZMO_NAMESPACE::Dot ( const vec_t v1,
const vec_t v2 
)

◆ DrawCubes()

IMGUI_API void IMGUIZMO_NAMESPACE::DrawCubes ( const float *  view,
const float *  projection,
const float *  matrices,
int  matrixCount 
)

◆ DrawGrid()

IMGUI_API void IMGUIZMO_NAMESPACE::DrawGrid ( const float *  view,
const float *  projection,
const float *  matrix,
const float  gridSize 
)

◆ Enable()

IMGUI_API void IMGUIZMO_NAMESPACE::Enable ( bool  enable)

◆ FPU_MatrixF_x_MatrixF()

void IMGUIZMO_NAMESPACE::FPU_MatrixF_x_MatrixF ( const float *  a,
const float *  b,
float *  r 
)

◆ Frustum()

void IMGUIZMO_NAMESPACE::Frustum ( float  left,
float  right,
float  bottom,
float  top,
float  znear,
float  zfar,
float *  m16 
)

◆ GetID() [1/4]

IMGUI_API ImGuiID IMGUIZMO_NAMESPACE::GetID ( const char *  str)

◆ GetID() [2/4]

IMGUI_API ImGuiID IMGUIZMO_NAMESPACE::GetID ( const char *  str,
const char *  str_end 
)

◆ GetID() [3/4]

IMGUI_API ImGuiID IMGUIZMO_NAMESPACE::GetID ( const void *  ptr)

◆ GetID() [4/4]

ImGuiID IMGUIZMO_NAMESPACE::GetID ( int  n)

◆ GetStyle()

IMGUI_API Style & IMGUIZMO_NAMESPACE::GetStyle ( )

◆ IsOver() [1/3]

IMGUI_API bool IMGUIZMO_NAMESPACE::IsOver ( )

◆ IsOver() [2/3]

IMGUI_API bool IMGUIZMO_NAMESPACE::IsOver ( float *  position,
float  pixelRadius 
)

◆ IsOver() [3/3]

IMGUI_API bool IMGUIZMO_NAMESPACE::IsOver ( OPERATION  op)

◆ IsUsing()

IMGUI_API bool IMGUIZMO_NAMESPACE::IsUsing ( )

◆ IsUsingAny()

IMGUI_API bool IMGUIZMO_NAMESPACE::IsUsingAny ( )

◆ IsUsingViewManipulate()

IMGUI_API bool IMGUIZMO_NAMESPACE::IsUsingViewManipulate ( )

◆ IsViewManipulateHovered()

IMGUI_API bool IMGUIZMO_NAMESPACE::IsViewManipulateHovered ( )

◆ IsWithin()

template<typename T >
bool IMGUIZMO_NAMESPACE::IsWithin ( x,
y,
z 
)

◆ LookAt()

void IMGUIZMO_NAMESPACE::LookAt ( const float *  eye,
const float *  at,
const float *  up,
float *  m16 
)

◆ makeVect() [1/2]

vec_t IMGUIZMO_NAMESPACE::makeVect ( float  _x,
float  _y,
float  _z = 0.f,
float  _w = 0.f 
)

◆ makeVect() [2/2]

vec_t IMGUIZMO_NAMESPACE::makeVect ( ImVec2  v)

◆ Manipulate()

IMGUI_API bool IMGUIZMO_NAMESPACE::Manipulate ( const float *  view,
const float *  projection,
OPERATION  operation,
MODE  mode,
float *  matrix,
float *  deltaMatrix,
const float *  snap,
const float *  localBounds,
const float *  boundsSnap 
)

◆ max()

template<typename T >
T IMGUIZMO_NAMESPACE::max ( x,
y 
)

◆ min()

template<typename T >
T IMGUIZMO_NAMESPACE::min ( x,
y 
)

◆ Normalize()

void IMGUIZMO_NAMESPACE::Normalize ( const float *  a,
float *  r 
)

◆ Normalized()

vec_t IMGUIZMO_NAMESPACE::Normalized ( const vec_t v)

◆ operator|()

OPERATION IMGUIZMO_NAMESPACE::operator| ( OPERATION  lhs,
OPERATION  rhs 
)
inline

◆ Perspective()

void IMGUIZMO_NAMESPACE::Perspective ( float  fovyInDegrees,
float  aspectRatio,
float  znear,
float  zfar,
float *  m16 
)

◆ PointOnSegment()

vec_t IMGUIZMO_NAMESPACE::PointOnSegment ( const vec_t point,
const vec_t vertPos1,
const vec_t vertPos2 
)
inline

◆ PopID()

IMGUI_API void IMGUIZMO_NAMESPACE::PopID ( )

◆ PushID() [1/4]

IMGUI_API void IMGUIZMO_NAMESPACE::PushID ( const char *  str_id)

◆ PushID() [2/4]

IMGUI_API void IMGUIZMO_NAMESPACE::PushID ( const char *  str_id_begin,
const char *  str_id_end 
)

◆ PushID() [3/4]

IMGUI_API void IMGUIZMO_NAMESPACE::PushID ( const void *  ptr_id)

◆ PushID() [4/4]

IMGUI_API void IMGUIZMO_NAMESPACE::PushID ( int  int_id)

◆ RecomposeMatrixFromComponents()

IMGUI_API void IMGUIZMO_NAMESPACE::RecomposeMatrixFromComponents ( const float *  translation,
const float *  rotation,
const float *  scale,
float *  matrix 
)

◆ SetAlternativeWindow()

IMGUI_API void IMGUIZMO_NAMESPACE::SetAlternativeWindow ( ImGuiWindow *  window)

◆ SetAxisLimit()

IMGUI_API void IMGUIZMO_NAMESPACE::SetAxisLimit ( float  value)

◆ SetAxisMask()

IMGUI_API void IMGUIZMO_NAMESPACE::SetAxisMask ( bool  x,
bool  y,
bool  z 
)

◆ SetDrawlist()

IMGUI_API void IMGUIZMO_NAMESPACE::SetDrawlist ( ImDrawList *  drawlist)

◆ SetGizmoSizeClipSpace()

IMGUI_API void IMGUIZMO_NAMESPACE::SetGizmoSizeClipSpace ( float  value)

◆ SetID()

IMGUI_API void IMGUIZMO_NAMESPACE::SetID ( int  id)

◆ SetImGuiContext()

IMGUI_API void IMGUIZMO_NAMESPACE::SetImGuiContext ( ImGuiContext *  ctx)

◆ SetOrthographic()

IMGUI_API void IMGUIZMO_NAMESPACE::SetOrthographic ( bool  isOrthographic)

◆ SetPlaneLimit()

IMGUI_API void IMGUIZMO_NAMESPACE::SetPlaneLimit ( float  value)

◆ SetRect()

IMGUI_API void IMGUIZMO_NAMESPACE::SetRect ( float  x,
float  y,
float  width,
float  height 
)

◆ ViewManipulate() [1/2]

IMGUI_API void IMGUIZMO_NAMESPACE::ViewManipulate ( float *  view,
const float *  projection,
OPERATION  operation,
MODE  mode,
float *  matrix,
float  length,
ImVec2  position,
ImVec2  size,
ImU32  backgroundColor 
)

◆ ViewManipulate() [2/2]

IMGUI_API void IMGUIZMO_NAMESPACE::ViewManipulate ( float *  view,
float  length,
ImVec2  position,
ImVec2  size,
ImU32  backgroundColor 
)

Variable Documentation

◆ rotationDisplayFactor

const float IMGUIZMO_NAMESPACE::rotationDisplayFactor = 1.2f

◆ screenRotateSize

const float IMGUIZMO_NAMESPACE::screenRotateSize = 0.06f