Ocean
Ocean::Rendering::Lines Class Reference

This class is the base for all lines objects. More...

Inheritance diagram for Ocean::Rendering::Lines:

Public Member Functions

ObjectType type () const override
 Returns the type of this object. More...
 
virtual VertexIndices indices () const
 Returns the indices of the used vertex lines. More...
 
virtual unsigned int numberIndices () const
 Returns the number of point indices defined in this primitive. More...
 
virtual Scalar lineWidth () const
 Returns the width (thickness ) in pixels at which all lines will be rendered. More...
 
virtual void setIndices (const VertexIndices &indices)
 Sets the indices of the used vertex lines. More...
 
virtual void setIndices (const unsigned int numberImplicitLines)
 Sets the indices of the used vertex lines. More...
 
virtual void setLineWidth (const Scalar width)
 Sets the width (thickness) in pixels at which all lines will be rendered. More...
 
- Public Member Functions inherited from Ocean::Rendering::Primitive
const VertexSetRefvertexSet () const
 Returns the vertex set of this primitive object. More...
 
virtual void setVertexSet (const VertexSetRef &vertexSet)
 Sets the vertex set of this primitive object. More...
 
ObjectType type () const override
 Returns the type of this object. More...
 
- Public Member Functions inherited from Ocean::Rendering::Renderable
ObjectType type () const override
 Returns the type of this object. More...
 
- Public Member Functions inherited from Ocean::Rendering::Object
ObjectId id () const
 Returns the unique object id of this object. More...
 
const std::string & name () const
 Returns the name of this object. More...
 
virtual void setName (const std::string &name)
 Sets or changes the name of this object. More...
 
virtual const std::string & engineName () const =0
 Returns the name of the owner engine. More...
 
ObjectRefs parentObjects () const
 Returns all parent objects. More...
 
ObjectRefSet parentNodes () const
 Returns all parent nodes. More...
 
virtual std::string descriptiveInformation () const
 Returns descriptive information about the object as string. More...
 

Protected Member Functions

 Lines ()
 Creates a new lines object. More...
 
 ~Lines () override
 Destructs a lines object. More...
 
- Protected Member Functions inherited from Ocean::Rendering::IndependentPrimitive
 IndependentPrimitive ()
 Creates a new independent primitive object. More...
 
 ~IndependentPrimitive () override
 Destructs an independent primitive object. More...
 
- Protected Member Functions inherited from Ocean::Rendering::Primitive
 Primitive ()
 Creates a new primitive object. More...
 
 ~Primitive () override
 Destructs a primitive object. More...
 
- Protected Member Functions inherited from Ocean::Rendering::Renderable
 Renderable ()
 Creates a new renderable object. More...
 
 ~Renderable () override
 Destructs a renderable object. More...
 
- Protected Member Functions inherited from Ocean::Rendering::Object
 Object ()
 Creates a new object. More...
 
 Object (const Object &object)=delete
 Disabled copy constructor. More...
 
virtual ~Object ()
 Destructs an object. More...
 
Engineengine () const
 Returns the render engine which is owner of this object. More...
 
void registerParent (const ObjectId parentId)
 Registers a parent node for this (child) node. More...
 
void unregisterParent (const ObjectId parentId)
 Unregisters a parent node for this (child) node. More...
 
void registerThisObjectAsParent (const ObjectRef &child)
 Registers this object at a child as parent object. More...
 
void unregisterThisObjectAsParent (const ObjectRef &child)
 Unregisters this object from a child as parent. More...
 
Objectoperator= (const Object &object)=delete
 Disabled copy operator. More...
 

Additional Inherited Members

- Public Types inherited from Ocean::Rendering::Object
enum  ObjectType {
  TYPE_UNKNOWN , TYPE_ABSOLUTE_TRANSFORM , TYPE_ATTRIBUTE , TYPE_ATTRIBUTE_SET ,
  TYPE_BACKGROUND , TYPE_BILLBOARD , TYPE_BITMAP_FRAMEBUFFER , TYPE_BLEND_ATTRIBUTE ,
  TYPE_BOX , TYPE_CONE , TYPE_CYLINDER , TYPE_DEPTH_ATTRIBUTE ,
  TYPE_DIRECTIONAL_LIGHT , TYPE_FRAMEBUFFER , TYPE_FRAME_TEXTURE_2D , TYPE_GEOMETRY ,
  TYPE_GROUP , TYPE_INDEPENDENT_PRIMITIVE , TYPE_LIGHT_SOURCE , TYPE_LINES ,
  TYPE_LINE_STRIPS , TYPE_LOD , TYPE_MATERIAL , TYPE_NODE ,
  TYPE_OBJECT , TYPE_PARALLEL_VIEW , TYPE_PERSPECTIVE_VIEW , TYPE_PHANTOM_ATTRIBUTE ,
  TYPE_POINT_LIGHT , TYPE_POINTS , TYPE_PRIMITIVE , TYPE_PRIMITIVE_ATTRIBUTE ,
  TYPE_QUAD_STRIPS , TYPE_QUADS , TYPE_RENDERABLE , TYPE_SCENE ,
  TYPE_SHADER_PROGRAM , TYPE_SHAPE , TYPE_SKY_BACKGROUND , TYPE_SPHERE ,
  TYPE_SPOT_LIGHT , TYPE_STEREO_ATTRIBUTE , TYPE_STEREO_VIEW , TYPE_STRIP_PRIMITIVE ,
  TYPE_SWITCH , TYPE_TEXT , TYPE_TEXTURE , TYPE_TEXTURE_2D ,
  TYPE_MEDIA_TEXTURE_2D , TYPE_TEXTURE_FRAMEBUFFER , TYPE_TEXTURES , TYPE_TRANSFORM ,
  TYPE_TRIANGLE_FANS , TYPE_TRIANGLES , TYPE_TRIANGLE_STRIPS , TYPE_UNDISTORTED_BACKGROUND ,
  TYPE_VERTEX_SET , TYPE_VIEW , TYPE_WINDOW_FRAMEBUFFER
}
 Definition of different object type. More...
 
typedef std::unordered_map< ObjectId, unsigned int > ObjectIdMap
 Definition of a map holding object ids to reference counters. More...
 
- Static Public Member Functions inherited from Ocean::Rendering::Object
static std::string translateObjectType (const ObjectType objectType)
 Translates an object type to a readable string. More...
 
- Protected Attributes inherited from Ocean::Rendering::Primitive
VertexSetRef primitiveVertexSet
 Vertex set object. More...
 
- Protected Attributes inherited from Ocean::Rendering::Object
Lock objectLock
 Lock for the object. More...
 

Detailed Description

This class is the base for all lines objects.

A lines object define individual lines using a vertex set.
Different lines objects can use the same vertex set to share common vertices and to reduce memory usage.

See also
VertexSet

Constructor & Destructor Documentation

◆ Lines()

Ocean::Rendering::Lines::Lines ( )
protected

Creates a new lines object.

◆ ~Lines()

Ocean::Rendering::Lines::~Lines ( )
overrideprotected

Destructs a lines object.

Member Function Documentation

◆ indices()

virtual VertexIndices Ocean::Rendering::Lines::indices ( ) const
virtual

Returns the indices of the used vertex lines.

Returns
Vertex indices
See also
setIndices(), VertexSet
Exceptions
NotSupportedExceptionIs thrown if this function is not supported

Reimplemented in Ocean::Rendering::GLESceneGraph::GLESLines.

◆ lineWidth()

virtual Scalar Ocean::Rendering::Lines::lineWidth ( ) const
virtual

Returns the width (thickness ) in pixels at which all lines will be rendered.

Returns
The width of all lines, in pixels, with range [1, infinity)
Exceptions
NotSupportedExceptionIs thrown if this function is not supported

Reimplemented in Ocean::Rendering::GLESceneGraph::GLESLines.

◆ numberIndices()

virtual unsigned int Ocean::Rendering::Lines::numberIndices ( ) const
virtual

Returns the number of point indices defined in this primitive.

Returns
Number of point indices
Exceptions
NotSupportedExceptionIs thrown if this function is not supported

Reimplemented in Ocean::Rendering::GLESceneGraph::GLESLines.

◆ setIndices() [1/2]

virtual void Ocean::Rendering::Lines::setIndices ( const unsigned int  numberImplicitLines)
virtual

Sets the indices of the used vertex lines.

Parameters
numberImplicitLinesThe number of lines on points with consecutive indices, with range [0, infinity)
Exceptions
NotSupportedExceptionIs thrown if this function is not supported

Reimplemented in Ocean::Rendering::GLESceneGraph::GLESLines.

◆ setIndices() [2/2]

virtual void Ocean::Rendering::Lines::setIndices ( const VertexIndices indices)
virtual

Sets the indices of the used vertex lines.

The indices must not extend the number of defined vertices inside the used vertex set

Parameters
indicesVertex indices to be set
See also
indices(), VertexSet
Exceptions
NotSupportedExceptionIs thrown if this function is not supported

Reimplemented in Ocean::Rendering::GLESceneGraph::GLESLines.

◆ setLineWidth()

virtual void Ocean::Rendering::Lines::setLineWidth ( const Scalar  width)
virtual

Sets the width (thickness) in pixels at which all lines will be rendered.

Parameters
widthThe width of all lines, in pixels, with range [1, infinity)
Exceptions
NotSupportedExceptionIs thrown if this function is not supported

Reimplemented in Ocean::Rendering::GLESceneGraph::GLESLines.

◆ type()

ObjectType Ocean::Rendering::Lines::type ( ) const
overridevirtual

Returns the type of this object.

See also
Object::type().

Reimplemented from Ocean::Rendering::IndependentPrimitive.


The documentation for this class was generated from the following file: