Ocean
Ocean::Rendering::Sphere Class Reference

This class is the base class for all spheres. More...

Inheritance diagram for Ocean::Rendering::Sphere:

Public Member Functions

virtual Scalar radius () const
 Returns the radius of this sphere. More...
 
virtual bool setRadius (const Scalar radius)
 Sets the radius of this sphere. More...
 
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

 Sphere ()
 Creates a new sphere object. More...
 
 ~Sphere () override
 Destructs a sphere object. More...
 
- Protected Member Functions inherited from Ocean::Rendering::Shape
 Shape ()
 Creates a new shape node. More...
 
 ~Shape () override
 Destructs a shape node. 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...
 

Static Protected Member Functions

static Vertex vertex (const Scalar latitude, const Scalar longitude)
 Calculates the coordinate for given latitude and longitude values. 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::Object
Lock objectLock
 Lock for the object. More...
 

Detailed Description

This class is the base class for all spheres.


A default sphere has a radius of 1

Constructor & Destructor Documentation

◆ Sphere()

Ocean::Rendering::Sphere::Sphere ( )
protected

Creates a new sphere object.

◆ ~Sphere()

Ocean::Rendering::Sphere::~Sphere ( )
overrideprotected

Destructs a sphere object.

Member Function Documentation

◆ radius()

virtual Scalar Ocean::Rendering::Sphere::radius ( ) const
virtual

Returns the radius of this sphere.

Returns
Radius of the sphere
Exceptions
NotSupportedExceptionIs thrown if this function is not supported

Reimplemented in Ocean::Rendering::GlobalIllumination::GISphere, and Ocean::Rendering::GLESceneGraph::GLESSphere.

◆ setRadius()

virtual bool Ocean::Rendering::Sphere::setRadius ( const Scalar  radius)
virtual

Sets the radius of this sphere.

Parameters
radiusRadius to set
Returns
True, if the specified radius was valid and could be set
Exceptions
NotSupportedExceptionIs thrown if this function is not supported

Reimplemented in Ocean::Rendering::GlobalIllumination::GISphere, and Ocean::Rendering::GLESceneGraph::GLESSphere.

◆ type()

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

Returns the type of this object.

See also
Object::type().

Reimplemented from Ocean::Rendering::Shape.

◆ vertex()

static Vertex Ocean::Rendering::Sphere::vertex ( const Scalar  latitude,
const Scalar  longitude 
)
staticprotected

Calculates the coordinate for given latitude and longitude values.

The resulting position is for a sphere with radius 1.

Parameters
latitudeThe latitude value, in radian
longitudeThe longitude value, in radian
Returns
Resulting position on the sphere surface

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