Class DebugPoints
#include <DebugPoints.h>
Inherits the following classes: ObjectID, Transform3D
Public Types inherited from ObjectID
See ObjectID
| Type | Name |
|---|---|
| enum | GOType Enumeration of scene object types. |
Public Types inherited from Transform
See Transform
| Type | Name |
|---|---|
| enum | TransType Flags for enabling/disabling transform components. |
Public Attributes
| Type | Name |
|---|---|
| glm::vec3 | dp_color = glm::vec3(1.0f, 1.0f, 1.0f) |
| float | dp_opacity = 1.0f |
| std::vector< glm::vec3 > | dp_pos_list |
| float | dp_scale = 1.0f |
| std::array< RenderShader, 2 > | dp_shader |
| PointType | dp_type = SQUARE\_POINT |
| bool | is_list_changed = true |
| bool | is_proj = true |
| bool | is_scaled |
Public Attributes inherited from ObjectID
See ObjectID
| Type | Name |
|---|---|
| bool | is_rendered = trueIncluded in rendering pipeline. |
| bool | is_viewport = trueVisible in viewport (editor-only) |
| std::string | o_name Display name in editor UI . |
| GOType | o_type = NONE\_GORuntime type identifier. |
Public Attributes inherited from Transform3D
See Transform3D
| Type | Name |
|---|---|
| glm::mat4 | o_InvTransform = { 1.0f }Cached inverse world transform matrix. |
| glm::mat4 | o_Transform = { 1.0f }Cached world transform matrix. |
| glm::vec3 | o_dir_right = { 1.0f, 0.0f, 0.0f }Right direction vector (X+) |
| glm::vec3 | o_dir_up = { 0.0f, 1.0f, 0.0f }Up direction vector (Y+) |
| glm::vec3 | o_position = { 0.0f }World position. |
| glm::vec3 | o_rot = { 0.0f }Euler rotation angles (radians): pitch, yaw, roll. |
| glm::vec3 | o_scale = { 1.0f }Local scale (non-uniform allowed) |
Public Attributes inherited from Transform
See Transform
| Type | Name |
|---|---|
| bool | is_TransF_changed = trueTransform matrix needs recomputation. |
| bool | is_Uniform_changed = trueUniform (non-scaled) transform needs recomputation. |
| bool | is_invTransF_changed = trueInverse transform needs recomputation. |
| bool | is_invUniform_changed = trueInverse uniform transform needs recomputation. |
| bool | use_position = { true }Enable position component in transform computation. |
| bool | use_rotation = { true }Enable rotation component in transform computation. |
| bool | use_scale = { true }Enable scale component in transform computation. |
Public Functions
| Type | Name |
|---|---|
| DebugPoints () |
|
| DebugPoints (const std::vector< glm::vec3 > & pos_list) |
|
| virtual void * | GetShader () override Returns pointer to object's shader, if applicable. |
| virtual void * | GetTransform () override Returns pointer to object's transform, if applicable. |
| void | PushDebugPoint (const glm::vec3 & point) |
| void | PushDebugPoint (float x, float y, float z) |
| void | PushDebugPoints (const std::vector< glm::vec3 > & points) |
| void | RenderDebugPoint (const Context & ctx) |
| void | SetDebugPointsShader (PointType type, bool proj) |
Public Functions inherited from ObjectID
See ObjectID
| Type | Name |
|---|---|
| virtual void * | GetMaterial () Returns pointer to object's material, if applicable. |
| virtual void * | GetShader () Returns pointer to object's shader, if applicable. |
| virtual void * | GetTransform () Returns pointer to object's transform, if applicable. |
| ObjectID () Constructs an ObjectID with default values. |
|
| void | SetVisible (bool v, bool r) Sets visibility flags for viewport and rendering. |
| ~ObjectID () Destroys the ObjectID . |
Public Functions inherited from UID
See UID
| Type | Name |
|---|---|
| int | GetObjectID () const Returns the unique ID of this object. |
| UID () Constructs a UID and assigns a unique ID. |
|
| virtual | ~UID () = default Virtual destructor for polymorphic use. |
Public Functions inherited from Transform3D
See Transform3D
| Type | Name |
|---|---|
| virtual bool | ApplyAllTransform () override Recomputes transform and all parent transforms. |
| virtual bool | ApplyTransform (bool _forced=false) override Recomputes transform matrix if dirty. |
| Transform3D * | GetChildTransPtr () Returns pointer to first child transform. |
| virtual bool | GetInvTransform () override const Computes inverse transform matrix. |
| Transform3D * | GetParentTransPtr () Returns pointer to parent transform. |
| Transform3D * | GetTransformPtr () Returns pointer to this transform. |
| void | LookAt (const glm::vec3 & tar, const glm::vec3 & up={0, 0, 1}) Orients transform to look at target position. |
| void | Move (const glm::vec3 & d_pos) Translates position by offset. |
| void | SetParent (Transform3D * _p_trans, bool _keep_offset=true) Sets parent transform for hierarchy. |
| bool | SetPos (const glm::vec3 & pos) Sets world position. |
| bool | SetPos1D (float _1d, GLuint _dim) Sets single axis of position. |
| bool | SetRot (const glm::vec3 & rot) Sets rotation via Euler angles. |
| bool | SetRot1D (float _1d, GLuint _dim) Sets single axis of rotation. |
| bool | SetScale (const glm::vec3 & scale) Sets local scale. |
| bool | SetScale1D (float _1d, GLuint _dim) Sets single axis of scale. |
| bool | SetTrans (const glm::mat4 & _trans, bool pos=true, bool rot=true, bool scl=true) Sets transform from 4x4 matrix. |
| void | Spin (const glm::vec3 & anch, const glm::vec3 & axis, const float & angle) Rotates around arbitrary axis through anchor point. |
| void | Spin (const glm::vec3 & anch, const glm::vec2 & angle, bool global_up=true) Rotates around anchor with pitch/yaw. |
| void | Trans (const glm::mat4 & _trans) Applies transformation matrix to current transform. |
| Transform3D () Constructs a Transform3D with identity values. |
|
| virtual void | UnsetParent (bool _keep_offset=true) override Removes parent transform relationship. |
| virtual int | _debug () override const Debug utility for transform state inspection. |
| ~Transform3D () Destroys the Transform3D . |
Public Functions inherited from Transform
See Transform
| Type | Name |
|---|---|
| virtual bool | ApplyAllTransform () = 0 Recomputes transform and all parent transforms. |
| virtual bool | ApplyTransform (bool _forced=false) = 0 Recomputes transform matrix if dirty. |
| virtual bool | GetInvTransform () const = 0 Computes inverse transform matrix. |
| virtual void | UnsetParent (bool _keep_offset=true) = 0 Removes parent transform relationship. |
| void | UseTranformComp (bool _enable, TransType _type) Enables or disables specific transform components. |
| virtual int | _debug () const = 0 Debug utility for transform state inspection. |
Public Static Functions inherited from UID
See UID
| Type | Name |
|---|---|
| int | GetTotalAllocated () Returns total number of UIDs allocated. |
Public Attributes Documentation
variable dp_color
glm::vec3 DebugPoints::dp_color;
variable dp_opacity
float DebugPoints::dp_opacity;
variable dp_pos_list
std::vector<glm::vec3> DebugPoints::dp_pos_list;
variable dp_scale
float DebugPoints::dp_scale;
variable dp_shader
std::array<RenderShader, 2> DebugPoints::dp_shader;
variable dp_type
PointType DebugPoints::dp_type;
variable is_list_changed
bool DebugPoints::is_list_changed;
variable is_proj
bool DebugPoints::is_proj;
variable is_scaled
bool DebugPoints::is_scaled;
Public Functions Documentation
function DebugPoints [1/2]
DebugPoints::DebugPoints ()
function DebugPoints [2/2]
DebugPoints::DebugPoints (
const std::vector< glm::vec3 > & pos_list
)
function GetShader
Returns pointer to object's shader, if applicable.
inline virtual void * DebugPoints::GetShader () override
Returns:
Void pointer cast to Shader*, or nullptr if no shader
Note:
Override in derived classes that own shaders (Mesh, Material, etc.)
Implements ObjectID::GetShader
function GetTransform
Returns pointer to object's transform, if applicable.
inline virtual void * DebugPoints::GetTransform () override
Returns:
Void pointer cast to Transform*, or nullptr if no transform
Note:
Override in derived classes with Transform component (Camera, Light, Mesh)
Implements ObjectID::GetTransform
function PushDebugPoint [1/2]
void DebugPoints::PushDebugPoint (
const glm::vec3 & point
)
function PushDebugPoint [2/2]
void DebugPoints::PushDebugPoint (
float x,
float y,
float z
)
function PushDebugPoints
void DebugPoints::PushDebugPoints (
const std::vector< glm::vec3 > & points
)
function RenderDebugPoint
void DebugPoints::RenderDebugPoint (
const Context & ctx
)
function SetDebugPointsShader
void DebugPoints::SetDebugPointsShader (
PointType type,
bool proj
)
The documentation for this class was generated from the following file src/scene/DebugPoints.h