#include <polyline.h>
Public Member Functions | |
Line (nap::Core &core) | |
virtual bool | init (utility::ErrorState &errorState) override |
virtual bool | isClosed () const override |
Public Member Functions inherited from PolyLine | |
PolyLine (nap::Core &core) | |
virtual MeshInstance & | getMeshInstance () override |
virtual const MeshInstance & | getMeshInstance () const override |
Vec3VertexAttribute & | getPositionAttr () |
const Vec3VertexAttribute & | getPositionAttr () const |
Vec4VertexAttribute & | getColorAttr () |
const Vec4VertexAttribute & | getColorAttr () const |
Vec3VertexAttribute & | getNormalAttr () |
const Vec3VertexAttribute & | getNormalAttr () const |
Vec3VertexAttribute & | getUvAttr () |
const Vec3VertexAttribute & | getUvAttr () const |
template<typename T > | |
void | getValue (const VertexAttribute< T > &attr, float location, T &outValue) const |
template<typename T > | |
void | getValue (const std::map< float, int > &distanceMap, const VertexAttribute< T > &attr, float location, T &outValue) const |
void | getNormal (const std::map< float, int > &distanceMap, const Vec3VertexAttribute &attr, float location, glm::vec3 &outValue) const |
float | getDistances (std::map< float, int > &outDistances) const |
Public Member Functions inherited from Resource | |
Resource () | |
Public Member Functions inherited from Object | |
Object () | |
virtual | ~Object () |
virtual void | onDestroy () |
Object (Object &)=delete | |
Object & | operator= (const Object &)=delete |
Object (Object &&)=delete | |
Object & | operator= (Object &&)=delete |
Public Attributes | |
glm::vec3 | mStart = { -0.5f, 0.0f, 0.0f } |
Property: 'Start' location of the line. More... | |
glm::vec3 | mEnd = { 0.5f, 0.0f, 0.0f } |
Property: 'End' location of the line. More... | |
bool | mClosed = false |
Property: 'Closed' if the line is considered closed. More... | |
int | mVertexCount = 2 |
Property: 'Vertices' number of line vertices, defaults to two. More... | |
Public Attributes inherited from PolyLine | |
PolyLineProperties | mLineProperties |
Public Attributes inherited from Object | |
std::string | mID |
Property: 'mID' unique name of the object. Used as an identifier by the system. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from Object | |
static bool | isIDProperty (rtti::Instance &object, const rtti::Property &property) |
Static Protected Member Functions inherited from PolyLine | |
static void | createVertexAttributes (MeshInstance &instance) |
Protected Attributes inherited from PolyLine | |
std::unique_ptr< MeshInstance > | mMeshInstance |
RenderService * | mRenderService = nullptr |
Simple line from a to b. The uv coordinates are derived from start and end position of the line (x, y coordinates). The normals are perpendicular to the direction of the line, ie: cross({0,0,1}, normalize(End-Start)))
|
overridevirtual |
|
overridevirtual |
Implements PolyLine.
bool mClosed = false |
Property: 'Closed' if the line is considered closed.
glm::vec3 mEnd = { 0.5f, 0.0f, 0.0f } |
Property: 'End' location of the line.
glm::vec3 mStart = { -0.5f, 0.0f, 0.0f } |
Property: 'Start' location of the line.
int mVertexCount = 2 |
Property: 'Vertices' number of line vertices, defaults to two.