Stellarium  0.16.1
List of all members | Public Slots | Signals | Public Member Functions | Properties
Scenery3d Class Reference

Main class of the module, inherits from StelModule. More...

#include <Scenery3d.hpp>

+ Inheritance diagram for Scenery3d:
+ Collaboration diagram for Scenery3d:

Public Slots

void relativeMove (const Vec3d &move)
 Performs a relative translation of the viewer's position. More...
 
void reloadShaders ()
 Clears the shader cache, forcing a reload of shaders on use. More...
 
void showMessage (const QString &message)
 Display text message on screen, fade out automatically. More...
 
void showStoredViewDialog ()
 Shows the stored view dialog. More...
 
void setEnableScene (const bool val)
 Enables/Disables the plugin. More...
 
bool getEnableScene () const
 
void setEnablePixelLighting (const bool val)
 
bool getEnablePixelLighting (void) const
 
void setEnableShadows (const bool enableShadows)
 Use this to set/get the enableShadows flag. More...
 
bool getEnableShadows (void) const
 
void setUseSimpleShadows (const bool simpleShadows)
 If true, only 1 shadow cascade is used, giving a speedup. More...
 
bool getUseSimpleShadows () const
 
void setEnableBumps (const bool enableBumps)
 Use this to set/get the enableBumps flag. More...
 
bool getEnableBumps (void) const
 
S3DEnum::ShadowFilterQuality getShadowFilterQuality (void) const
 Returns the current shadow filter quality. More...
 
void setShadowFilterQuality (const S3DEnum::ShadowFilterQuality val)
 Sets the shadow filter quality. More...
 
void setEnablePCSS (const bool val)
 
bool getEnablePCSS () const
 
S3DEnum::CubemappingMode getCubemappingMode (void) const
 Returns the current cubemapping mode. More...
 
void setCubemappingMode (const S3DEnum::CubemappingMode val)
 Sets the cubemapping mode. More...
 
bool getUseFullCubemapShadows () const
 
void setUseFullCubemapShadows (const bool useFullCubemapShadows)
 
void setEnableDebugInfo (const bool debugEnabled)
 Set to true to show some rendering debug information. More...
 
bool getEnableDebugInfo () const
 
void setEnableLocationInfo (const bool enableLocationInfo)
 Set to true to show the current standing positin as text on screen. More...
 
bool getEnableLocationInfo () const
 
void setEnableTorchLight (const bool enableTorchLight)
 Set to true to add an additional light source centered at the current position, useful in night scenes. More...
 
bool getEnableTorchLight () const
 
void setTorchStrength (const float torchStrength)
 Sets the strength of the additional illumination that can be toggled when pressing a button. More...
 
float getTorchStrength () const
 
void setTorchRange (const float torchRange)
 Sets the range of the torchlight. More...
 
float getTorchRange () const
 
void setEnableLazyDrawing (const bool val)
 Sets the state of the cubemap lazy-drawing mode. More...
 
bool getEnableLazyDrawing () const
 
void setOnlyDominantFaceWhenMoving (const bool val)
 When true, only the face which currently is most dominantly visible is updated while moving. More...
 
bool getOnlyDominantFaceWhenMoving () const
 
void setSecondDominantFaceWhenMoving (const bool val)
 
bool getSecondDominantFaceWhenMoving () const
 
void forceCubemapRedraw ()
 Forces a redraw of the cubemap. More...
 
void setLazyDrawingInterval (const double val)
 Sets the interval for cubemap lazy-drawing mode. More...
 
double getLazyDrawingInterval () const
 
void setCubemapSize (const uint val)
 Sets the size used for cubemap rendering. More...
 
uint getCubemapSize () const
 
void setShadowmapSize (const uint val)
 Sets the size used for shadowmap rendering. More...
 
uint getShadowmapSize () const
 
bool getIsGeometryShaderSupported () const
 
bool getAreShadowsSupported () const
 
bool getIsShadowFilteringSupported () const
 
bool getIsANGLE () const
 
uint getMaximumFramebufferSize () const
 
SceneInfo getCurrentScene () const
 Gets the SceneInfo of the scene that is currently being displayed. More...
 
QString getCurrentSceneID () const
 Returns the ID of the currently loaded scene, or an null string if nothing is displayed. More...
 
QString getLoadingSceneID () const
 Returns the ID of the currently loading scene, or null if nothing is being loaded. More...
 
SceneInfo getLoadingScene () const
 Gets the SceneInfo of the scene that is currently in the process of being loaded. More...
 
SceneInfo loadScenery3dByName (const QString &name)
 This starts the scene loading process. More...
 
SceneInfo loadScenery3dByID (const QString &id)
 This starts the scene loading process. More...
 
QString getDefaultScenery3dID () const
 
void setDefaultScenery3dID (const QString &id)
 
void setView (const StoredView &view, const bool setDate)
 Changes the current view to the given view. JD is updated only if view contains valid data and setDate is true. More...
 
StoredView getCurrentView ()
 Returns a StoredView that represents the current observer position + view direction. More...
 

Signals

void enableSceneChanged (const bool val)
 
void enablePixelLightingChanged (const bool val)
 
void enableShadowsChanged (const bool val)
 
void useSimpleShadowsChanged (const bool val)
 
void enableBumpsChanged (const bool val)
 
void shadowFilterQualityChanged (const S3DEnum::ShadowFilterQuality val)
 
void enablePCSSChanged (const bool val)
 
void cubemappingModeChanged (const S3DEnum::CubemappingMode val)
 
void useFullCubemapShadowsChanged (const bool val)
 
void enableDebugInfoChanged (const bool val)
 
void enableLocationInfoChanged (const bool val)
 
void enableTorchLightChanged (const bool val)
 
void torchStrengthChanged (const float val)
 
void torchRangeChanged (const float val)
 
void enableLazyDrawingChanged (const bool val)
 
void lazyDrawingIntervalChanged (const double val)
 
void onlyDominantFaceWhenMovingChanged (const bool val)
 
void secondDominantFaceWhenMovingChanged (const bool val)
 
void cubemapSizeChanged (const uint val)
 
void shadowmapSizeChanged (const uint val)
 
void currentSceneChanged (const SceneInfo &sceneInfo)
 
void currentSceneIDChanged (const QString &sceneID)
 
void loadingSceneIDChanged (const QString &sceneID)
 
void progressReport (const QString &str, int val, int min, int max) const
 This signal is emitted from another thread than this QObject belongs to, so use QueuedConnection. More...
 

Public Member Functions

virtual void init ()
 Initialize itself. More...
 
virtual void deinit ()
 Called before the module will be delete, and before the openGL context is suppressed. More...
 
virtual void draw (StelCore *core)
 Execute all the drawing functions for this module. More...
 
virtual void update (double deltaTime)
 Update the module with respect to the time. More...
 
virtual double getCallOrder (StelModuleActionName actionName) const
 Return the value defining the order of call for the given action For example if stars.callOrder[ActionDraw] == 10 and constellation.callOrder[ActionDraw] == 11, the stars module will be drawn before the constellations. More...
 
virtual bool configureGui (bool show)
 Detect or show the configuration GUI elements for the module. More...
 
virtual void handleKeys (QKeyEvent *e)
 Walk/Fly Navigation with Ctrl+Cursor and Ctrl+PgUp/Dn keys. More...
 
void updateProgress (const QString &str, int val, int min, int max) const
 Sends the progressReport() signal, which eventually updates the progress bar. Can be called from another thread. More...
 
- Public Member Functions inherited from StelModule
virtual QString getModuleVersion () const
 Get the version of the module, default is stellarium main version. More...
 
virtual QString getAuthorName () const
 Get the name of the module author. More...
 
virtual QString getAuthorEmail () const
 Get the email adress of the module author. More...
 
virtual void handleMouseClicks (class QMouseEvent *)
 Handle mouse clicks. More...
 
virtual void handleMouseWheel (class QWheelEvent *)
 Handle mouse wheel. More...
 
virtual bool handleMouseMoves (int x, int y, Qt::MouseButtons b)
 Handle mouse moves. More...
 
virtual bool handlePinch (qreal scale, bool started)
 Handle pinch gesture events. More...
 

Properties

bool enableScene
 
bool enablePixelLighting
 
bool enableShadows
 
bool useSimpleShadows
 
bool enableBumps
 
S3DEnum::ShadowFilterQuality shadowFilterQuality
 
bool enablePCSS
 
S3DEnum::CubemappingMode cubemappingMode
 
bool useFullCubemapShadows
 
bool enableDebugInfo
 
bool enableLocationInfo
 
bool enableTorchLight
 
float torchStrength
 
float torchRange
 
bool enableLazyDrawing
 
double lazyDrawingInterval
 
bool onlyDominantFaceWhenMoving
 
bool secondDominantFaceWhenMoving
 
uint cubemapSize
 
uint shadowmapSize
 
QString currentSceneID
 
QString loadingSceneID
 
bool isGeometryShaderSupported
 
bool areShadowsSupported
 
bool isShadowFilteringSupported
 
bool isANGLE
 
uint maximumFramebufferSize
 

Additional Inherited Members

- Public Types inherited from StelModule
enum  StelModuleSelectAction { AddToSelection, ReplaceSelection, RemoveFromSelection }
 Enum used when selecting objects to define whether to add to, replace, or remove from the existing selection list. More...
 
enum  StelModuleActionName {
  ActionDraw, ActionUpdate, ActionHandleMouseClicks, ActionHandleMouseMoves,
  ActionHandleKeys
}
 Define the possible action for which an order is defined. More...
 
- Protected Member Functions inherited from StelModule
class StelActionaddAction (const QString &id, const QString &groupId, const QString &text, QObject *target, const char *slot, const QString &shortcut="", const QString &altShortcut="")
 convenience methods to add an action (call to slot) to the StelActionMgr object. More...
 
class StelActionaddAction (const QString &id, const QString &groupId, const QString &text, const char *slot, const QString &shortcut="", const QString &altShortcut="")
 convenience methods to add an action (call to own slot) to the StelActionMgr object. More...
 

Detailed Description

Main class of the module, inherits from StelModule.

Manages initialization, provides an interface to change Scenery3d properties and handles user input

Definition at line 51 of file Scenery3d.hpp.

Member Function Documentation

virtual bool Scenery3d::configureGui ( bool  show)
virtual

Detect or show the configuration GUI elements for the module.

This is to be used with plugins to display a configuration dialog from the plugin list window.

Parameters
showif true, make the configuration GUI visible. If false, hide the config GUI if there is one.
Returns
true if the module has a configuration GUI, else false.

Reimplemented from StelModule.

virtual void Scenery3d::deinit ( )
virtual

Called before the module will be delete, and before the openGL context is suppressed.

Deinitialize all openGL texture in this method.

Reimplemented from StelModule.

virtual void Scenery3d::draw ( StelCore core)
virtual

Execute all the drawing functions for this module.

Parameters
corethe core to use for the drawing

Reimplemented from StelModule.

void Scenery3d::forceCubemapRedraw ( )
slot

Forces a redraw of the cubemap.

virtual double Scenery3d::getCallOrder ( StelModuleActionName  actionName) const
virtual

Return the value defining the order of call for the given action For example if stars.callOrder[ActionDraw] == 10 and constellation.callOrder[ActionDraw] == 11, the stars module will be drawn before the constellations.

Parameters
actionNamethe name of the action for which we want the call order
Returns
the value defining the order. The closer to 0 the earlier the module's action will be called

Reimplemented from StelModule.

S3DEnum::CubemappingMode Scenery3d::getCubemappingMode ( void  ) const
slot

Returns the current cubemapping mode.

SceneInfo Scenery3d::getCurrentScene ( ) const
slot

Gets the SceneInfo of the scene that is currently being displayed.

Check SceneInfo::isValid to determine if a scene is displayed.

QString Scenery3d::getCurrentSceneID ( ) const
slot

Returns the ID of the currently loaded scene, or an null string if nothing is displayed.

StoredView Scenery3d::getCurrentView ( )
slot

Returns a StoredView that represents the current observer position + view direction.

Label and description are empty.

SceneInfo Scenery3d::getLoadingScene ( ) const
inlineslot

Gets the SceneInfo of the scene that is currently in the process of being loaded.

Check SceneInfo::isValid to determine if a scene is loaded.

Definition at line 258 of file Scenery3d.hpp.

QString Scenery3d::getLoadingSceneID ( ) const
slot

Returns the ID of the currently loading scene, or null if nothing is being loaded.

S3DEnum::ShadowFilterQuality Scenery3d::getShadowFilterQuality ( void  ) const
slot

Returns the current shadow filter quality.

virtual void Scenery3d::handleKeys ( QKeyEvent *  e)
virtual

Walk/Fly Navigation with Ctrl+Cursor and Ctrl+PgUp/Dn keys.

Pressing Ctrl-Alt: 5x, Ctrl-Shift: 10x speedup; Ctrl-Shift-Alt: 50x! To allow fine control, zoom in. If you release Ctrl key while pressing cursor key, movement will continue.

Reimplemented from StelModule.

virtual void Scenery3d::init ( )
virtual

Initialize itself.

If the initialization takes significant time, the progress should be displayed on the loading bar.

Implements StelModule.

SceneInfo Scenery3d::loadScenery3dByID ( const QString &  id)
slot

This starts the scene loading process.

This is asynchronous, this method returns after metadata loading.

Parameters
ida valid scene id/folder path
Returns
The loaded SceneInfo. Check SceneInfo::isValid to make sure loading was successful.
SceneInfo Scenery3d::loadScenery3dByName ( const QString &  name)
slot

This starts the scene loading process.

This is asynchronous, this method returns after metadata loading.

Parameters
namea valid scene name
Returns
The loaded SceneInfo. Check SceneInfo::isValid to make sure loading was successful.
void Scenery3d::progressReport ( const QString &  str,
int  val,
int  min,
int  max 
) const
signal

This signal is emitted from another thread than this QObject belongs to, so use QueuedConnection.

void Scenery3d::relativeMove ( const Vec3d move)
slot

Performs a relative translation of the viewer's position.

The values should usually be given pre-adjusted with the delta time. Does nothing if no scene is currently loaded.

The first component specifies movement in the "right" direction, the second component in the "forward" directon, and the last value is used to adjust the height offset of the viewer (he is still positioned according to the heightmap).

void Scenery3d::reloadShaders ( )
slot

Clears the shader cache, forcing a reload of shaders on use.

void Scenery3d::setCubemappingMode ( const S3DEnum::CubemappingMode  val)
slot

Sets the cubemapping mode.

void Scenery3d::setCubemapSize ( const uint  val)
slot

Sets the size used for cubemap rendering.

For best compatibility and performance, this should be a power of 2.

void Scenery3d::setEnableBumps ( const bool  enableBumps)
slot

Use this to set/get the enableBumps flag.

If set to true, bump mapping is enabled for the 3D scene.

void Scenery3d::setEnableDebugInfo ( const bool  debugEnabled)
slot

Set to true to show some rendering debug information.

void Scenery3d::setEnableLazyDrawing ( const bool  val)
slot

Sets the state of the cubemap lazy-drawing mode.

void Scenery3d::setEnableLocationInfo ( const bool  enableLocationInfo)
slot

Set to true to show the current standing positin as text on screen.

void Scenery3d::setEnableScene ( const bool  val)
slot

Enables/Disables the plugin.

void Scenery3d::setEnableShadows ( const bool  enableShadows)
slot

Use this to set/get the enableShadows flag.

If set to true, shadow mapping is enabled for the 3D scene.

void Scenery3d::setEnableTorchLight ( const bool  enableTorchLight)
slot

Set to true to add an additional light source centered at the current position, useful in night scenes.

void Scenery3d::setLazyDrawingInterval ( const double  val)
slot

Sets the interval for cubemap lazy-drawing mode.

void Scenery3d::setOnlyDominantFaceWhenMoving ( const bool  val)
slot

When true, only the face which currently is most dominantly visible is updated while moving.

void Scenery3d::setShadowFilterQuality ( const S3DEnum::ShadowFilterQuality  val)
slot

Sets the shadow filter quality.

void Scenery3d::setShadowmapSize ( const uint  val)
slot

Sets the size used for shadowmap rendering.

For best compatibility and performance, this should be a power of 2.

void Scenery3d::setTorchRange ( const float  torchRange)
slot

Sets the range of the torchlight.

void Scenery3d::setTorchStrength ( const float  torchStrength)
slot

Sets the strength of the additional illumination that can be toggled when pressing a button.

void Scenery3d::setUseSimpleShadows ( const bool  simpleShadows)
slot

If true, only 1 shadow cascade is used, giving a speedup.

void Scenery3d::setView ( const StoredView view,
const bool  setDate 
)
slot

Changes the current view to the given view. JD is updated only if view contains valid data and setDate is true.

void Scenery3d::showMessage ( const QString &  message)
slot

Display text message on screen, fade out automatically.

void Scenery3d::showStoredViewDialog ( )
slot

Shows the stored view dialog.

virtual void Scenery3d::update ( double  deltaTime)
virtual

Update the module with respect to the time.

Parameters
deltaTimethe time increment in second since last call.

Implements StelModule.

void Scenery3d::updateProgress ( const QString &  str,
int  val,
int  min,
int  max 
) const

Sends the progressReport() signal, which eventually updates the progress bar. Can be called from another thread.


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