Stellarium
HEAD
|
Data Structures | |
class | Scenery3d |
Main class of the module, inherits from StelModule. More... | |
3D foreground renderer. Walk around, find and avoid obstructions in your garden, find and demonstrate possible astronomical alignments in temples, see shadows on sundials etc.
To move around, press Ctrl+cursor keys. To lift eye height, use Ctrl+PgUp/PgDn. Movement speed is linked to field of view (i.e. zoom in for fine adjustments). You can even keep moving by releasing Ctrl before cursor key.
Development of this plugin was in parts supported by the Austrian Science Fund (FWF) project ASTROSIM (P 21208-G19). More: http://astrosim.univie.ac.at/
class Scenery3d |
Main class of the module, inherits from StelModule.
Main class of the 3D Sceneries plug-in.
Manages initialization, provides an interface to change Scenery3d properties and handles user input
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. | |
void | showMessage (const QString &message) |
Display text message on screen, fade out automatically. | |
void | showStoredViewDialog () |
Shows the stored view dialog. | |
void | setEnableScene (const bool val) |
Enables/Disables the plugin. | |
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. | |
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. | |
void | setShadowFilterQuality (const S3DEnum::ShadowFilterQuality val) |
Sets the shadow filter quality. | |
void | setEnablePCSS (const bool val) |
bool | getEnablePCSS () const |
S3DEnum::CubemappingMode | getCubemappingMode (void) const |
Returns the current cubemapping mode. | |
void | setCubemappingMode (const S3DEnum::CubemappingMode val) |
Sets the cubemapping mode. | |
bool | getUseFullCubemapShadows () const |
void | setUseFullCubemapShadows (const bool useFullCubemapShadows) |
void | setEnableDebugInfo (const bool debugEnabled) |
Set to true to show some rendering debug information. | |
bool | getEnableDebugInfo () const |
void | setEnableLocationInfo (const bool enableLocationInfo) |
Set to true to show the current standing position as text on screen. | |
bool | getEnableLocationInfo () const |
void | setLocationInfoStyle (const S3DRenderer::LocationInfoStyle style) |
Set location info style. | |
S3DRenderer::LocationInfoStyle | getLocationInfoStyle () const |
void | setForceHorizonPolyline (const bool forcePolyline) |
Set the overdrawing of a landscape (horizon) polygon after the 3D scenery. More... | |
bool | getForceHorizonPolyline () const |
void | setEnableTorchLight (const bool enableTorchLight) |
Set to true to add an additional light source centered at the current position, useful in night scenes. | |
bool | getEnableTorchLight () const |
void | setTorchStrength (const float torchStrength) |
Sets the strength of the additional illumination that can be toggled when pressing a button. | |
float | getTorchStrength () const |
void | setTorchRange (const float torchRange) |
Sets the range of the torchlight. | |
float | getTorchRange () const |
void | setDirectionalLightPush (const float push) |
Sets the exaggeration strength for directional light (default: 1). More... | |
float | getDirectionalLightPush () const |
void | setIgnoreInitialView (const bool ignore) |
Allow ignoring the configured start_az_alt_fov. More... | |
bool | getIgnoreInitialView () const |
void | setEnableLazyDrawing (const bool val) |
Sets the state of the cubemap lazy-drawing mode. | |
bool | getEnableLazyDrawing () const |
void | setOnlyDominantFaceWhenMoving (const bool val) |
When true, only the face which currently is most dominantly visible is updated while moving. | |
bool | getOnlyDominantFaceWhenMoving () const |
void | setSecondDominantFaceWhenMoving (const bool val) |
bool | getSecondDominantFaceWhenMoving () const |
void | forceCubemapRedraw () |
Forces a redraw of the cubemap. | |
void | setLazyDrawingInterval (const double val) |
Sets the interval for cubemap lazy-drawing mode. | |
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. | |
QString | getLoadingSceneID () const |
Returns the ID of the currently loading scene, or null if nothing is being loaded. | |
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. | |
StoredView | getCurrentView () const |
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 | locationInfoStyleChanged (S3DRenderer::LocationInfoStyle style) |
void | forceHorizonPolylineChanged (const bool val) |
void | enableTorchLightChanged (const bool val) |
void | torchStrengthChanged (const float val) |
void | torchRangeChanged (const float val) |
void | directionalLightPushChanged (const float val) |
void | ignoreInitialViewChanged (const bool ignore) |
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. | |
Public Member Functions | |
void | init () override |
Initialize itself. More... | |
void | deinit () override |
Called before the module will be deleted, and before the OpenGL context is suppressed. More... | |
void | draw (StelCore *core) override |
Execute all the drawing functions for this module. More... | |
void | update (double deltaTime) override |
Update the module with respect to the time. More... | |
double | getCallOrder (StelModuleActionName actionName) const override |
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... | |
bool | configureGui (bool show) override |
Detect or show the configuration GUI elements for the module. More... | |
void | handleKeys (QKeyEvent *e) override |
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. | |
Public Member Functions inherited from StelModule | |
StelModule () | |
Constructor. Every derived class MUST call setObjectName(className) in its constructor. | |
virtual QSettings * | getSettings () |
Return module-specific settings. More... | |
virtual QString | getModuleVersion () const |
Get the version of the module, default is stellarium main version. | |
virtual QString | getAuthorName () const |
Get the name of the module author. | |
virtual QString | getAuthorEmail () const |
Get the email address of the module author. | |
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 |
S3DRenderer::LocationInfoStyle | locationInfoStyle |
bool | forceHorizonPolyline |
bool | enableTorchLight |
float | torchStrength |
float | torchRange |
float | directionalLightPush |
bool | ignoreInitialView |
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 StelAction * | addAction (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 StelAction * | addAction (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... | |
StelAction * | addAction (const QString &id, const QString &groupId, const QString &text, QObject *contextObject, std::function< void()> lambda, const QString &shortcut="", const QString &altShortcut="") |
convenience methods to add an action (call to Lambda functor) to the StelActionMgr object. More... | |
|
overridevirtual |
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.
show | if true, make the configuration GUI visible. If false, hide the config GUI if there is one. |
Reimplemented from StelModule.
|
overridevirtual |
Called before the module will be deleted, and before the OpenGL context is suppressed.
Deinitialize all OpenGL texture in this method.
Reimplemented from StelModule.
|
overridevirtual |
Execute all the drawing functions for this module.
core | the core to use for the drawing |
Reimplemented from StelModule.
|
overridevirtual |
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.
actionName | the name of the action for which we want the call order |
Reimplemented from StelModule.
|
slot |
Gets the SceneInfo of the scene that is currently being displayed.
Check SceneInfo::isValid to determine if a scene is displayed.
|
slot |
Returns a StoredView that represents the current observer position + view direction.
Label and description are empty.
|
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.
|
overridevirtual |
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.
|
overridevirtual |
Initialize itself.
If the initialization takes significant time, the progress should be displayed on the loading bar.
Implements StelModule.
|
slot |
This starts the scene loading process.
This is asynchronous, this method returns after metadata loading.
id | a valid scene id/folder path |
|
slot |
This starts the scene loading process.
This is asynchronous, this method returns after metadata loading.
name | a valid scene name |
|
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" direction, and the last value is used to adjust the height offset of the viewer (he is still positioned according to the heightmap).
|
slot |
Sets the size used for cubemap rendering.
For best compatibility and performance, this should be a power of 2.
|
slot |
Sets the exaggeration strength for directional light (default: 1).
Going over 1 can be useful for very tiny holes casting important specks of light into dark interiors. Example: meridiana "sundials" in Italian churches.
|
slot |
Use this to set/get the enableBumps flag.
If set to true, bump mapping is enabled for the 3D scene.
|
slot |
Use this to set/get the enableShadows flag.
If set to true, shadow mapping is enabled for the 3D scene.
|
slot |
Set the overdrawing of a landscape (horizon) polygon after the 3D scenery.
This shows the difference (error) between our planar (tangential plane) modelling and effects of earth curvature. The landscape has to include such a polygon, of course.
|
slot |
Allow ignoring the configured start_az_alt_fov.
This may be helpful in a digital planetarium where fov should stay at ~180...200° and view direction is usually close to zenith.
|
slot |
Sets the size used for shadowmap rendering.
For best compatibility and performance, this should be a power of 2.
|
overridevirtual |
Update the module with respect to the time.
deltaTime | the time increment in second since last call. |
Reimplemented from StelModule.