Radium Engine  1.5.20
Loading...
Searching...
No Matches
Ra::Engine::Data::DrawPrimitives Namespace Reference

Typedefs

using MeshPtr = std::shared_ptr<Mesh>
 
using LineMeshPtr = std::shared_ptr<LineMesh>
 
using AttribArrayDisplayablePtr = std::shared_ptr<AttribArrayDisplayable>
 

Functions

LineMeshPtr Point (const Core::Vector3 &point, const Core::Utils::Color &color, Scalar scale=0.1f)
 Displays given point shown as the crossing of 3 lines of length 'scale'.
 
LineMeshPtr Line (const Core::Vector3 &a, const Core::Vector3 &b, const Core::Utils::Color &color)
 Displays given line.
 
LineMeshPtr Vector (const Core::Vector3 &start, const Core::Vector3 &v, const Core::Utils::Color &color)
 Displays given vector shown as an arrow originating from 'start'.
 
LineMeshPtr Ray (const Core::Ray &ray, const Core::Utils::Color &color, Scalar len=1000_ra)
 Displays given ray as a straight line.
 
AttribArrayDisplayablePtr Triangle (const Core::Vector3 &a, const Core::Vector3 &b, const Core::Vector3 &c, const Core::Utils::Color &color, bool fill)
 
MeshPtr QuadStrip (const Core::Vector3 &a, const Core::Vector3 &x, const Core::Vector3 &y, uint quads, const Core::Utils::Color &color)
 Displays a strip of n quads, starting at A and with directions X and Y.
 
LineMeshPtr Circle (const Core::Vector3 &center, const Core::Vector3 &normal, Scalar radius, uint segments, const Core::Utils::Color &color)
 
LineMeshPtr CircleArc (const Core::Vector3 &center, const Core::Vector3 &normal, Scalar radius, Scalar angle, uint segments, const Core::Utils::Color &color)
 
MeshPtr Sphere (const Core::Vector3 &center, Scalar radius, const Core::Utils::Color &color)
 Displays geodesic sphere computed with given center and radius.
 
MeshPtr ParametricSphere (const Core::Vector3 &center, Scalar radius, const Core::Utils::Color &color, bool generateTexCoord)
 
MeshPtr Capsule (const Core::Vector3 &p1, const Core::Vector3 &p2, Scalar radius, const Core::Utils::Color &color)
 Displays a capsule computed with given endpoints and radius.
 
MeshPtr Disk (const Core::Vector3 &center, const Core::Vector3 &normal, Scalar radius, uint segments, const Core::Utils::Color &color)
 
LineMeshPtr Normal (const Core::Vector3 &point, const Core::Vector3 &normal, const Core::Utils::Color &color, Scalar scale)
 
MeshPtr Frame (const Core::Transform &frameFromEntity, Scalar scale)
 
MeshPtr Grid (const Core::Vector3 &center, const Core::Vector3 &x, const Core::Vector3 &y, const Core::Utils::Color &color, Scalar cellSize, uint res)
 
MeshPtr AABB (const Core::Aabb &aabb, const Core::Utils::Color &color)
 Display a wireframe AABB.
 
MeshPtr OBB (const Core::Geometry::Obb &obb, const Core::Utils::Color &color)
 Display a wireframe OBB.
 
MeshPtr Spline (const Core::Geometry::Spline< 3, 3 > &spline, uint pointCount, const Core::Utils::Color &color, Scalar)
 
MeshPtr LineStrip (const Core::Vector3Array &vertices, const Core::Vector4Array &colors)
 Display a line strip.
 
Rendering::RenderObjectPrimitive (Scene::Component *component, const MeshPtr &mesh)
 
Rendering::RenderObjectPrimitive (Scene::Component *component, const LineMeshPtr &mesh)
 
Rendering::RenderObjectPrimitive (Scene::Component *component, const AttribArrayDisplayablePtr &mesh)
 

Detailed Description

A set of convenient functions to instantiate simple displays such as points, lines, etc. note that objects will be drawn in their entity's local frame. For "instant" debug drawing,

See also
DebugDisplay.

Typedef Documentation

◆ AttribArrayDisplayablePtr

◆ LineMeshPtr

◆ MeshPtr

Function Documentation

◆ AABB()

RA_ENGINE_API MeshPtr Ra::Engine::Data::DrawPrimitives::AABB ( const Core::Aabb & aabb,
const Core::Utils::Color & color )

Display a wireframe AABB.

Definition at line 477 of file DrawPrimitives.cpp.

◆ Capsule()

RA_ENGINE_API MeshPtr Ra::Engine::Data::DrawPrimitives::Capsule ( const Core::Vector3 & p1,
const Core::Vector3 & p2,
Scalar radius,
const Core::Utils::Color & color )

Displays a capsule computed with given endpoints and radius.

Definition at line 275 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ Circle()

RA_ENGINE_API LineMeshPtr Ra::Engine::Data::DrawPrimitives::Circle ( const Core::Vector3 & center,
const Core::Vector3 & normal,
Scalar radius,
uint segments,
const Core::Utils::Color & color )

Displays circle computed with given center and radius, in plane normal to given vector in wireframe

Note
normal must be a normalized vector.
Todo
refer to class typedef instaed of core types/

Definition at line 170 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ CircleArc()

RA_ENGINE_API LineMeshPtr Ra::Engine::Data::DrawPrimitives::CircleArc ( const Core::Vector3 & center,
const Core::Vector3 & normal,
Scalar radius,
Scalar angle,
uint segments,
const Core::Utils::Color & color )

Displays arc of a circle computed with given center, radius and angle in plane normal to given vector in wireframe

Note
normal must be a normalized vector.

Definition at line 208 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ Disk()

RA_ENGINE_API MeshPtr Ra::Engine::Data::DrawPrimitives::Disk ( const Core::Vector3 & center,
const Core::Vector3 & normal,
Scalar radius,
uint segments,
const Core::Utils::Color & color )

Displays disk (filled circle) computed with given center and radius, in plane normal to given vector in wireframe

Note
normal must be a normalized vector.

Definition at line 314 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ Frame()

RA_ENGINE_API MeshPtr Ra::Engine::Data::DrawPrimitives::Frame ( const Core::Transform & frameFromEntity,
Scalar scale = 0.1f )

Displays a 3D frame representing the given transform. Each axis has length 'scale' and are in usual colors (X,Y,Z = red, green blue) Remainder : the transform will be drawn relative to the component's entity transform.

Definition at line 401 of file DrawPrimitives.cpp.

◆ Grid()

RA_ENGINE_API MeshPtr Ra::Engine::Data::DrawPrimitives::Grid ( const Core::Vector3 & center,
const Core::Vector3 & x,
const Core::Vector3 & y,
const Core::Utils::Color & color,
Scalar cellSize = 1.f,
uint res = 10 )

Create a res*res square grid centered on center, in plane defined by the vectors x and y.

Definition at line 431 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ Line()

RA_ENGINE_API LineMeshPtr Ra::Engine::Data::DrawPrimitives::Line ( const Core::Vector3 & a,
const Core::Vector3 & b,
const Core::Utils::Color & color )

Displays given line.

Definition at line 69 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ LineStrip()

RA_ENGINE_API MeshPtr Ra::Engine::Data::DrawPrimitives::LineStrip ( const Core::Vector3Array & vertices,
const Core::Vector4Array & colors )

Display a line strip.

Definition at line 554 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ Normal()

RA_ENGINE_API LineMeshPtr Ra::Engine::Data::DrawPrimitives::Normal ( const Core::Vector3 & point,
const Core::Vector3 & normal,
const Core::Utils::Color & color,
Scalar scale = 0.1f )

Displays a normal vector emanating from the given point as a vector arrow and a normal plane of size 'scale'.

Definition at line 353 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ OBB()

RA_ENGINE_API MeshPtr Ra::Engine::Data::DrawPrimitives::OBB ( const Obb & obb,
const Core::Utils::Color & color )

Display a wireframe OBB.

Definition at line 500 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ ParametricSphere()

RA_ENGINE_API MeshPtr Ra::Engine::Data::DrawPrimitives::ParametricSphere ( const Core::Vector3 & center,
Scalar radius,
const Core::Utils::Color & color,
bool generateTexCoord = false )

Displays uv sphere computed with given center and radius

Parameters
generateTexCoordask texture coordinate generation

Definition at line 259 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ Point()

RA_ENGINE_API LineMeshPtr Ra::Engine::Data::DrawPrimitives::Point ( const Core::Vector3 & point,
const Core::Utils::Color & color,
Scalar scale )

Displays given point shown as the crossing of 3 lines of length 'scale'.

Definition at line 51 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ Primitive() [1/3]

RA_ENGINE_API Rendering::RenderObject * Ra::Engine::Data::DrawPrimitives::Primitive ( Scene::Component * component,
const AttribArrayDisplayablePtr & mesh )

Definition at line 35 of file DrawPrimitives.cpp.

◆ Primitive() [2/3]

RA_ENGINE_API Rendering::RenderObject * Ra::Engine::Data::DrawPrimitives::Primitive ( Scene::Component * component,
const LineMeshPtr & mesh )

Definition at line 31 of file DrawPrimitives.cpp.

◆ Primitive() [3/3]

RA_ENGINE_API Rendering::RenderObject * Ra::Engine::Data::DrawPrimitives::Primitive ( Scene::Component * comp,
const MeshPtr & mesh )

Renturn a render object to display the given geometry

Definition at line 27 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ QuadStrip()

RA_ENGINE_API MeshPtr Ra::Engine::Data::DrawPrimitives::QuadStrip ( const Core::Vector3 & a,
const Core::Vector3 & x,
const Core::Vector3 & y,
uint quads,
const Core::Utils::Color & color )

Displays a strip of n quads, starting at A and with directions X and Y.

Todo
continue to convert mesh creation and remove call to deprecated Mesh::loadGeometry

Definition at line 140 of file DrawPrimitives.cpp.

◆ Ray()

RA_ENGINE_API LineMeshPtr Ra::Engine::Data::DrawPrimitives::Ray ( const Core::Ray & ray,
const Core::Utils::Color & color,
Scalar len )

Displays given ray as a straight line.

Definition at line 103 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ Sphere()

RA_ENGINE_API MeshPtr Ra::Engine::Data::DrawPrimitives::Sphere ( const Core::Vector3 & center,
Scalar radius,
const Core::Utils::Color & color )

Displays geodesic sphere computed with given center and radius.

Definition at line 246 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ Spline()

RA_ENGINE_API MeshPtr Ra::Engine::Data::DrawPrimitives::Spline ( const Core::Geometry::Spline< 3, 3 > & spline,
uint pointCount,
const Core::Utils::Color & color,
Scalar  )

Definition at line 523 of file DrawPrimitives.cpp.

◆ Triangle()

RA_ENGINE_API AttribArrayDisplayablePtr Ra::Engine::Data::DrawPrimitives::Triangle ( const Core::Vector3 & a,
const Core::Vector3 & b,
const Core::Vector3 & c,
const Core::Utils::Color & color,
bool fill = false )

Displays given triangle ABC, either in wireframe (fill = false) or filled with the color(fill = true).

Definition at line 114 of file DrawPrimitives.cpp.

+ Here is the call graph for this function:

◆ Vector()

RA_ENGINE_API LineMeshPtr Ra::Engine::Data::DrawPrimitives::Vector ( const Core::Vector3 & start,
const Core::Vector3 & v,
const Core::Utils::Color & color )

Displays given vector shown as an arrow originating from 'start'.

Definition at line 81 of file DrawPrimitives.cpp.

+ Here is the call graph for this function: