NAP
Public Member Functions | Public Attributes | List of all members
Circle Class Reference

#include <polyline.h>

Public Member Functions

 Circle (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

float mRadius = 1.0f
 Property: 'Radius' circle radius. More...
 
int mSegments = 100
 Property: 'Segments' number of vertices. 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
 

Description

Simple circle as a polygon line. The uv's are normalized 0-1, the normals point outwards from the center.

Inheritance diagram for Circle:
[legend]
Collaboration diagram for Circle:
[legend]

Constructor & Destructor Documentation

◆ Circle()

Circle ( nap::Core &  core)

Member Function Documentation

◆ init()

virtual bool init ( utility::ErrorState &  errorState)
overridevirtual

Creates the rectangle

Returns
if the rectangle was successfully created

Reimplemented from PolyLine.

◆ isClosed()

virtual bool isClosed ( ) const
overridevirtual
Returns
closed

Implements PolyLine.

Member Data Documentation

◆ mRadius

float mRadius = 1.0f

Property: 'Radius' circle radius.

◆ mSegments

int mSegments = 100

Property: 'Segments' number of vertices.