Stellarium  0.17.0
Public Slots | Signals | Public Member Functions | Properties
StelMainScriptAPI Class Reference

Provide script API for Stellarium global functions. More...

#include <StelMainScriptAPI.hpp>

Public Slots

void setJDay (double JD)
 Set the current date as Julian Day number. More...
 
double getJDay () const
 Get the current date as Julian Day number. More...
 
void setMJDay (double MJD)
 Set the current date as Modified Julian Day. More...
 
double getMJDay () const
 Get the current date as Modified Julian Day. More...
 
void setDate (const QString &dateStr, const QString &spec="utc", const bool &dateIsDT=false)
 set the date in ISO format, e.g. More...
 
QString getDate (const QString &spec="utc")
 get the simulation date and time as a string in ISO format, e.g. More...
 
QString getDeltaT () const
 get the DeltaT for the simulation date and time as a string in HMS format, e.g. More...
 
QString getDeltaTAlgorithm () const
 get the DeltaT equation name for the simulation date and time as a string More...
 
void setDeltaTAlgorithm (QString algorithmName)
 set equation of the DeltaT for the simulation date and time More...
 
void setTimeRate (double ts)
 Set time speed in JDay/sec. More...
 
double getTimeRate () const
 Get simulation time rate. More...
 
bool isRealTime ()
 Get the simulation time and rate state - is it "real time". More...
 
void setRealTime ()
 Set the simulation time to the current system time, and the time rate to 1.
 
void selectObjectByName (const QString &name, bool pointer=false)
 Select an object by name. More...
 
QVariantMap getObjectPosition (const QString &name)
 Fetch a map with data about an object's position, magnitude and so on. More...
 
QVariantMap getObjectInfo (const QString &name)
 Fetch a map with data about an object's position, magnitude and so on. More...
 
QVariantMap getSelectedObjectInfo ()
 Fetch a map with data about the latest selected object's position, magnitude and so on. More...
 
void clear (const QString &state="natural")
 Clear the display options, setting a "standard" view. More...
 
double getViewAltitudeAngle ()
 Get the current viewing direction altitude angle at center of view. More...
 
double getViewAzimuthAngle ()
 Get the current viewing direction azimuth angle at center of view. More...
 
double getViewRaAngle ()
 Get the current viewing direction Right Ascension at center of view. More...
 
double getViewDecAngle ()
 Get the current viewing direction Declination angle at center of view. More...
 
double getViewRaJ2000Angle ()
 Get the current viewing direction Right Ascension in J2000 frame at center of view. More...
 
double getViewDecJ2000Angle ()
 Get the current viewing direction Declination angle in J2000 frame at center of view. More...
 
void moveToAltAzi (const QString &alt, const QString &azi, float duration=1.)
 move the current viewing direction to some specified altitude and azimuth. More...
 
void moveToRaDec (const QString &ra, const QString &dec, float duration=1.)
 move the current viewing direction to some specified right ascension and declination. More...
 
void moveToRaDecJ2000 (const QString &ra, const QString &dec, float duration=1.)
 move the current viewing direction to some specified right ascension and declination in the J2000 frame angles may be specified in a format recognised by StelUtils::getDecAngle() More...
 
void setObserverLocation (double longitude, double latitude, double altitude, double duration=1., const QString &name="", const QString &planet="")
 Set the observer location. More...
 
void setObserverLocation (const QString id, float duration=1.)
 Set the location by the name of the location. More...
 
QString getObserverLocation ()
 Get the ID of the current observer location.
 
QVariantMap getObserverLocationInfo ()
 Get the info of the current observer location. More...
 
void screenshot (const QString &prefix, bool invert=false, const QString &dir="", const bool overwrite=false)
 Save a screenshot. More...
 
void setGuiVisible (bool b)
 Show or hide the GUI (toolbars). More...
 
void setMinFps (float m)
 Set the minimum frames per second. More...
 
float getMinFps ()
 Get the current minimum frames per second. More...
 
void setMaxFps (float m)
 Set the maximum frames per second. More...
 
float getMaxFps ()
 Get the current maximum frames per second. More...
 
QString getMountMode ()
 Get the mount mode as a string. More...
 
void setMountMode (const QString &mode)
 Set the mount mode. More...
 
bool getNightMode ()
 Get the current status of Night Mode. More...
 
void setNightMode (bool b)
 Set the status of Night Mode. More...
 
QString getProjectionMode ()
 Get the current projection mode ID string. More...
 
void setProjectionMode (const QString &id)
 Set the current projection mode. More...
 
bool getDiskViewport ()
 Get the status of the disk viewport. More...
 
void setDiskViewport (bool b)
 Set the disk viewport. More...
 
void setSphericMirror (bool b)
 Set the viewport distortion effect. More...
 
void setViewportOffset (const float x, const float y)
 Set viewport offset This can be used e.g. More...
 
void setViewportStretch (const float stretch)
 Set a lateral width distortion. More...
 
QStringList getAllSkyCultureIDs ()
 Get a list of Sky Culture IDs. More...
 
QString getSkyCulture ()
 Find out the current sky culture. More...
 
void setSkyCulture (const QString &id)
 Set the current sky culture. More...
 
QString getSkyCultureName ()
 Find out the current sky culture and get it English name. More...
 
QString getSkyCultureNameI18n ()
 Find out the current sky culture and get it localized name. More...
 
bool getFlagGravityLabels ()
 Get the current status of the gravity labels option. More...
 
void setFlagGravityLabels (bool b)
 Turn on/off gravity labels. More...
 
void loadSkyImage (const QString &id, const QString &filename, double lon0, double lat0, double lon1, double lat1, double lon2, double lat2, double lon3, double lat3, double minRes=2.5, double maxBright=14, bool visible=true, const QString &frame="EqJ2000")
 Load an image into the sky background at the given sky coordinates and be warped with the sky. More...
 
void loadSkyImage (const QString &id, const QString &filename, const QString &lon0, const QString &lat0, const QString &lon1, const QString &lat1, const QString &lon2, const QString &lat2, const QString &lon3, const QString &lat3, double minRes=2.5, double maxBright=14, bool visible=true, const QString &frame="EqJ2000")
 Convenience function which allows the user to provide longitudinal and latitudinal angles (RA/Dec or Long/Lat or Az/Alt) as strings (e.g. More...
 
void loadSkyImage (const QString &id, const QString &filename, double lon, double lat, double angSize, double rotation, double minRes=2.5, double maxBright=14, bool visible=true, const QString &frame="EqJ2000")
 Convenience function which allows loading of a (square) sky image based on a central coordinate, angular size and rotation. More...
 
void loadSkyImage (const QString &id, const QString &filename, const QString &lon, const QString &lat, double angSize, double rotation, double minRes=2.5, double maxBright=14, bool visible=true, const QString &frame="EqJ2000")
 Convenience function which allows loading of a (square) sky image based on a central coordinate, angular size and rotation. More...
 
void loadSkyImageAltAz (const QString &id, const QString &filename, double azi0, double alt0, double azi1, double alt1, double azi2, double alt2, double azi3, double alt3, double minRes=2.5, double maxBright=14, bool visible=true)
 Load an image which will have a sky location given in alt-azimuthal coordinates. More...
 
void loadSkyImageAltAz (const QString &id, const QString &filename, double alt, double azi, double angSize, double rotation, double minRes=2.5, double maxBright=14, bool visible=true)
 Convenience function which allows loading of a sky image based on a central alt-azimuthal coordinate, angular size and rotation. More...
 
void removeSkyImage (const QString &id)
 Remove a SkyImage. More...
 
QVariantMap getScreenXYFromAltAzi (const QString &alt, const QString &azi)
 Get screen coordinates from some specified altitude and azimuth angles may be specified in a format recognised by StelUtils::getDecAngle() More...
 
void loadSound (const QString &filename, const QString &id)
 Load a sound from a file. More...
 
void playSound (const QString &id)
 Play a sound which has previously been loaded with loadSound. More...
 
void pauseSound (const QString &id)
 Pause a sound which is playing. More...
 
void stopSound (const QString &id)
 Stop a sound from playing. More...
 
void dropSound (const QString &id)
 Drop a sound from memory. More...
 
qint64 getSoundPosition (const QString &id)
 Get position in a playing sound. More...
 
qint64 getSoundDuration (const QString &id)
 Get duration of a sound object (if possible). More...
 
void loadVideo (const QString &filename, const QString &id, float x, float y, bool show=true, float alpha=1.0f)
 Load a video from a file. More...
 
void playVideo (const QString &id, bool keepVisibleAtEnd=false)
 Play a video which has previously been loaded with loadVideo. More...
 
void playVideoPopout (const QString &id, float fromX, float fromY, float atCenterX, float atCenterY, float finalSizeX, float finalSizeY, float popupDuration, bool frozenInTransition)
 Play a video which has previously been loaded with loadVideo with a complex effect. More...
 
void pauseVideo (const QString &id)
 Pause a video which is playing. More...
 
void stopVideo (const QString &id)
 Stop a video from playing. More...
 
void dropVideo (const QString &id)
 Drop a video from memory. More...
 
void seekVideo (const QString &id, qint64 ms, bool pause=false)
 Seeks a video to the requested time and either start playing or freeze there. More...
 
void setVideoXY (const QString &id, float x, float y, bool relative=false)
 Sets the position of the video widget. More...
 
void setVideoAlpha (const QString &id, float alpha)
 Set the alpha value of a video when visible. More...
 
void resizeVideo (const QString &id, float w, float h)
 Resize the video widget to the specified width, height. More...
 
void showVideo (const QString &id, bool show=true)
 Set the visibility state of a video. More...
 
qint64 getVideoDuration (const QString &id)
 Get the duration of a loaded video, or -1. More...
 
qint64 getVideoPosition (const QString &id)
 Get the current position of a loaded video, or -1. More...
 
int getScreenWidth ()
 Get the screen width in pixels. More...
 
int getScreenHeight ()
 Get the screen height (actually, height of Stellarium main view) in pixels. More...
 
double getScriptRate ()
 Get the script execution rate as a multiple of normal execution speed. More...
 
void setScriptRate (double r)
 Set the script execution rate as a multiple of normal execution speed. More...
 
void pauseScript ()
 Pause the currently running script. More...
 
void setSelectedObjectInfo (const QString &level)
 Set the amount of selected object information to display. More...
 
void exit ()
 Stop the script.
 
void quitStellarium ()
 Close Stellarium.
 
QStringList getPropertyList () const
 Return a QStringlist of all available properties. Useful for script development...
 
static void debug (const QString &s)
 print a debugging message to the console More...
 
void output (const QString &s) const
 print an output message from script More...
 
QString mapToString (const QVariantMap &map) const
 print contents of a QVariantMap as []-delimited list of [ "key" = ] lists. More...
 
void resetOutput (void) const
 Reset (clear) output file.
 
void saveOutputAs (const QString &filename)
 Save output file to new file (in same directory as output.txt). More...
 
QString getAppLanguage () const
 Get the current application language. More...
 
void setAppLanguage (QString langCode)
 Set the current application language. More...
 
QString getSkyLanguage () const
 Get the current sky language. More...
 
void setSkyLanguage (QString langCode)
 Set the current sky language. More...
 
void goHome ()
 Go to defaults position and direction of view.
 
void setMilkyWayVisible (bool b)
 Show or hide the Milky Way. More...
 
void setMilkyWayIntensity (double i)
 Set Milky Way intensity. More...
 
double getMilkyWayIntensity () const
 Get Milky Way intensity. More...
 
void setZodiacalLightVisible (bool b)
 Show or hide the Zodiacal Light. More...
 
void setZodiacalLightIntensity (double i)
 Set Zodiacal Light intensity. More...
 
double getZodiacalLightIntensity () const
 Get Zodiacal Light intensity. More...
 
int getBortleScaleIndex () const
 Returns the currently set Bortle scale index, which is used to simulate light pollution. More...
 
void setBortleScaleIndex (int index)
 Changes the Bortle scale index, which is used to simulate light pollution. More...
 
void setDSSMode (bool b)
 Show or hide the DSS (photorealistic sky). More...
 
bool isDSSModeEnabled () const
 Get the current status of DSS mode. More...
 
double jdFromDateString (const QString &dt, const QString &spec)
 For use in setDate and waitFor For parameter descriptions see setDate(). More...
 
void wait (double t)
 Pauses the script for t seconds. More...
 
void waitFor (const QString &dt, const QString &spec="utc")
 Waits until a specified simulation date/time. More...
 

Signals

void requestLoadSkyImage (const QString &id, const QString &filename, double c1, double c2, double c3, double c4, double c5, double c6, double c7, double c8, double minRes, double maxBright, bool visible, const StelCore::FrameType frameType)
 
void requestLoadSkyImageAltAz (const QString &id, const QString &filename, double c1, double c2, double c3, double c4, double c5, double c6, double c7, double c8, double minRes, double maxBright, bool visible)
 
void requestRemoveSkyImage (const QString &id)
 
void requestLoadSound (const QString &filename, const QString &id)
 
void requestPlaySound (const QString &id)
 
void requestPauseSound (const QString &id)
 
void requestStopSound (const QString &id)
 
void requestDropSound (const QString &id)
 
void requestLoadVideo (const QString &filename, const QString &id, float x, float y, bool show, float alpha)
 
void requestPlayVideo (const QString &id, const bool keepVisibleAtEnd)
 
void requestPlayVideoPopout (const QString &id, float fromX, float fromY, float atCenterX, float atCenterY, float finalSizeX, float finalSizeY, float popupDuration, bool frozenInTransition)
 
void requestPauseVideo (const QString &id)
 
void requestStopVideo (const QString &id)
 
void requestDropVideo (const QString &id)
 
void requestSeekVideo (const QString &id, qint64 ms, bool pause=false)
 
void requestSetVideoXY (const QString &id, float x, float y, bool relative=false)
 
void requestSetVideoAlpha (const QString &id, float alpha)
 
void requestResizeVideo (const QString &id, float w, float h)
 
void requestShowVideo (const QString &id, bool show)
 
void requestSetNightMode (bool b)
 
void requestSetProjectionMode (QString id)
 
void requestSetSkyCulture (QString id)
 
void requestSetDiskViewport (bool b)
 
void requestExit ()
 
void requestSetHomePosition ()
 

Public Member Functions

 StelMainScriptAPI (QObject *parent=Q_NULLPTR)
 

Properties

double JDay
 
double timeSpeed
 

Detailed Description

Public slots in this class may be used in Stellarium scripts, and are accessed as member function to the "core" scripting object. Module-specific functions, such as setting and clearing of display flags (e.g. LandscapeMgr::setFlagAtmosphere) can be accessed directly via the scripting object with the class name, e.g. by using the scripting command: LandscapeMgr.setFlagAtmosphere(true);

Member Function Documentation

void StelMainScriptAPI::clear ( const QString &  state = "natural")
slot

Preset states:

  • natural : azimuthal mount, atmosphere, landscape, no lines, labels or markers
  • starchart : equatorial mount, constellation lines, no landscape, atmosphere etc. labels & markers on.
  • deepspace : like starchart, but no planets, no eq.grid, no markers, no lines.
  • galactic : like deepspace, but in galactic coordinate system.
    Parameters
    statethe name of a preset state.
static void StelMainScriptAPI::debug ( const QString &  s)
staticslot
Parameters
sthe message to be displayed on the console.
void StelMainScriptAPI::dropSound ( const QString &  id)
slot

You should do this before the end of your script.

Parameters
idthe identifier used when loadSound was called
void StelMainScriptAPI::dropVideo ( const QString &  id)
slot

You should do this before the end of your script.

Parameters
idthe identifier used when loadVideo() was called
QStringList StelMainScriptAPI::getAllSkyCultureIDs ( )
slot
Returns
a list of valid sky culture IDs
QString StelMainScriptAPI::getAppLanguage ( ) const
slot
Returns
two letter language code, e.g. "en", or "de" and so on.
int StelMainScriptAPI::getBortleScaleIndex ( ) const
slot

Wrapper for StelSkyDrawer::getBortleScaleIndex

See also
https://en.wikipedia.org/wiki/Bortle_scale
Returns
the Bortle scale index in range [1,9]
QString StelMainScriptAPI::getDate ( const QString &  spec = "utc")
slot

"2008-03-24T13:21:01"

Parameters
specif "utc", the returned string's timezone is UTC, else it is local time.
Returns
the current simulation time.
QString StelMainScriptAPI::getDeltaT ( ) const
slot

"0h1m68.2s"

Returns
the DeltaT for current simulation time.
QString StelMainScriptAPI::getDeltaTAlgorithm ( ) const
slot
Returns
name of the DeltaT equation
bool StelMainScriptAPI::getDiskViewport ( )
slot
Returns
true if the disk view port is currently enabled
bool StelMainScriptAPI::getFlagGravityLabels ( )
slot
Returns
true if gravity labels are enabled, else false
double StelMainScriptAPI::getJDay ( ) const
slot
Returns
the Julian Day number
float StelMainScriptAPI::getMaxFps ( )
slot
Returns
The current maximum frames per second setting.
double StelMainScriptAPI::getMilkyWayIntensity ( ) const
slot
Returns
value of Milky Way intensity, e.g. "1.2"
float StelMainScriptAPI::getMinFps ( )
slot
Returns
The current minimum frames per second setting.
double StelMainScriptAPI::getMJDay ( ) const
slot
Returns
the Modified Julian Day
QString StelMainScriptAPI::getMountMode ( )
slot
Returns
"equatorial" or "azimuthal"
bool StelMainScriptAPI::getNightMode ( )
slot
Returns
true if night mode is currently set
QVariantMap StelMainScriptAPI::getObjectInfo ( const QString &  name)
slot
Parameters
nameis the English name of the object for which data will be returned.
Returns
a map of object data. Keys:
  • above-horizon : true, if celestial body is above horizon
  • altitude : apparent altitude angle in decimal degrees
  • azimuth : apparent azimuth angle in decimal degrees
  • altitude-geometric : geometric altitude angle in decimal degrees
  • azimuth-geometric : geometric azimuth angle in decimal degrees
  • ra : right ascension angle (current date frame) in decimal degrees
  • dec : declination angle (current date frame) in decimal degrees
  • raJ2000 : right ascension angle (J2000 frame) in decimal degrees
  • decJ2000 : declination angle (J2000 frame) in decimal degrees
  • glong : galactic longitude in decimal degrees
  • glat : galactic latitude in decimal degrees
  • sglong : supergalactic longitude in decimal degrees
  • sglat : supergalactic latitude in decimal degrees
  • elong : ecliptic longitude in decimal degrees (on Earth only!)
  • elat : ecliptic latitude in decimal degrees (on Earth only!)
  • elongJ2000 : ecliptic longitude (Earth's J2000 frame) in decimal degrees
  • elatJ2000 : ecliptic latitude (Earth's J2000 frame) in decimal degrees
  • vmag : visual magnitude
  • vmage : visual magnitude (extincted)
  • size: angular size in radians
  • size-dd : angular size in decimal degrees
  • size-deg : angular size in decimal degrees (formatted string)
  • size-dms : angular size in DMS format
  • localized-name : localized name The returned map can contain other information. For example, Solar System objects add:
  • distance : distance to object in AU (for Solar system objects only!)
  • phase : phase (illuminated fraction, 0..1) of object (for Solar system objects only!)
  • illumination : phase of object in percent (0..100) (for Solar system objects only!)
  • phase-angle : phase angle of object in radians (for Solar system objects only!)
  • phase-angle-dms : phase angle of object in DMS (for Solar system objects only!)
  • phase-angle-deg : phase angle of object in decimal degrees (for Solar system objects only!)
  • elongation : elongation of object in radians (for Solar system objects only!)
  • elongation-dms : elongation of object in DMS (for Solar system objects only!)
  • elongation-deg : elongation of object in decimal degrees (for Solar system objects only!) Other StelObject derivates, also those defined in plugins, may add more, these fields are documented in the respective classes, or simply try what you get: You can print a complete set of entries into output with the following commands:
    map=core.getSelectedObjectInfo();
    core.output(core.mapToString(map));
QVariantMap StelMainScriptAPI::getObjectPosition ( const QString &  name)
slot
Parameters
nameis the English name of the object for which data will be returned.
Returns
a map of object data, exactly like getObjectInfo().
Deprecated:
Use getObjectInfo()
QVariantMap StelMainScriptAPI::getObserverLocationInfo ( )
slot
Returns
a map of object data. Keys:
  • altitude : altitude in meters
  • longitude : longitude in decimal degrees
  • latitude : latitude in decimal degrees
  • planet : name of planet
  • location : city and country
  • sidereal-year : duration of the sidereal year on the planet in Earth's days (since 0.12.0)
  • sidereal-day : duration of the sidereal day on the planet in Earth's hours (since 0.12.0)
  • solar-day : duration of the mean solar day on the planet in Earth's hours (since 0.12.0)
  • local-sidereal-time : local sidereal time on the planet in hours (since 0.13.3)
  • local-sidereal-time-hms : local sidereal time on the planet in hours in HMS format (since 0.13.3)
QString StelMainScriptAPI::getProjectionMode ( )
slot
Returns
the string which identifies the current projection mode. For a list of possibl results, see setProjectionMode();
int StelMainScriptAPI::getScreenHeight ( )
slot
Returns
The screen height in pixels
int StelMainScriptAPI::getScreenWidth ( )
slot
Returns
The screen width (actually, width of Stellarium main view) in pixels
QVariantMap StelMainScriptAPI::getScreenXYFromAltAzi ( const QString &  alt,
const QString &  azi 
)
slot
Parameters
altthe altitude angle [degrees]
azithe azimuth angle [degrees]
Returns
a map of object data. Keys:
  • x : x coordinate on the screen
  • y : y coordinate on the screen
double StelMainScriptAPI::getScriptRate ( )
slot
Returns
the current script execution rate.
QVariantMap StelMainScriptAPI::getSelectedObjectInfo ( )
slot
Returns
a map of object data. See description for getObjectInfo(const QString& name);
QString StelMainScriptAPI::getSkyCulture ( )
slot
Returns
the ID of the current sky culture (i.e. the name of the directory in which the curret sky cultures files are found, e.g. "western")
QString StelMainScriptAPI::getSkyCultureName ( )
slot
Returns
the English name of the current sky culture
QString StelMainScriptAPI::getSkyCultureNameI18n ( )
slot
Returns
the translated name of the current sky culture
QString StelMainScriptAPI::getSkyLanguage ( ) const
slot
Returns
two letter language code, e.g. "en", or "de" and so on.
qint64 StelMainScriptAPI::getSoundDuration ( const QString &  id)
slot
Parameters
idthe identifier used when loadSound was called
Returns
duration[ms] if known, 0 if unknown (e.g. during load/before playing), -1 in case of error.
qint64 StelMainScriptAPI::getSoundPosition ( const QString &  id)
slot
Parameters
idthe identifier used when loadSound was called
Returns
position [ms] during play or pause, 0 when stopped, -1 in case of error.
double StelMainScriptAPI::getTimeRate ( ) const
slot
Returns
time speed as a multiple of real time.
qint64 StelMainScriptAPI::getVideoDuration ( const QString &  id)
slot
Parameters
idthe identifier used when loadVideo() was called
qint64 StelMainScriptAPI::getVideoPosition ( const QString &  id)
slot
Parameters
idthe identifier used when loadVideo() was called
double StelMainScriptAPI::getViewAltitudeAngle ( )
slot
Returns
the altitude angle in decimal degrees. 0 is horizon, zenith is 180, nadir = -180.
double StelMainScriptAPI::getViewAzimuthAngle ( )
slot
Returns
the azimuth angle in decimal degrees as a compass bearing i.e. 0 is North, 90 is East, 180 is South, 270 is West.
double StelMainScriptAPI::getViewDecAngle ( )
slot
Returns
the Declination angle in decimal degrees. The value returned falls in the range -180 .. 180
double StelMainScriptAPI::getViewDecJ2000Angle ( )
slot
Returns
the Declination angle in J2000 frame in decimal degrees.
double StelMainScriptAPI::getViewRaAngle ( )
slot
Returns
the Right Ascension angle in decimal degrees. The value returned falls in the range 0 .. 360
double StelMainScriptAPI::getViewRaJ2000Angle ( )
slot
Returns
the Right Ascension angle in J2000 frame in decimal degrees.
double StelMainScriptAPI::getZodiacalLightIntensity ( ) const
slot
Returns
value of Zodiacal Light intensity, e.g. "1.2"
bool StelMainScriptAPI::isDSSModeEnabled ( ) const
slot
Returns
The current status of DSS mode.
bool StelMainScriptAPI::isRealTime ( )
slot
Returns
true if the time rate is normal, and the simulation time is real time, else return false
double StelMainScriptAPI::jdFromDateString ( const QString &  dt,
const QString &  spec 
)
slot
Returns
Julian day.
void StelMainScriptAPI::loadSkyImage ( const QString &  id,
const QString &  filename,
double  lon0,
double  lat0,
double  lon1,
double  lat1,
double  lon2,
double  lat2,
double  lon3,
double  lat3,
double  minRes = 2.5,
double  maxBright = 14,
bool  visible = true,
const QString &  frame = "EqJ2000" 
)
slot

The image is projected like a deep-sky object, with a notion for surface magnitude of the brightest parts. Transparent sections in the image are possibly rendered white, so make your image just RGB with black background. The black background covers the milky way, but is brightened by the Zodiacal light.

Parameters
ida string ID to be used when referring to this image (e.g. when changing the displayed status or deleting it.
filenamethe file name of the image. If a relative path is specified, "scripts/" will be prefixed before the image is searched for using StelFileMgr.
lon0The right ascension/longitude/azimuth of the first corner of the image in degrees (bottom left)
lat0The declination/latitude/altitude of the first corner of the image in degrees (bottom left)
lon1The right ascension/longitude/azimuth of the second corner of the image in degrees (bottom right)
lat1The declination/latitude/altitude of the second corner of the image in degrees (bottom right)
lon2The right ascension/longitude/azimuth of the third corner of the image in degrees (top right)
lat2The declination/latitude/altitude of the third corner of the image in degrees (top right)
lon3The right ascension/longitude/azimuth of the fourth corner of the image in degrees (top left)
lat3The declination/latitude/altitude of the fourth corner of the image in degrees (top left)
minResThe minimum resolution setting for the image
maxBrightThe maximum brightness setting for the image
visibleThe initial visibility of the image
frameone of EqJ2000|EqDate|EclJ2000|EclDate|Gal(actic)|SuperG(alactic)|AzAlt.
Note
since 2017-03, you can select Frame now.
Images in AzAlt frame are not affected by atmosphere effects like refraction or extinction.
void StelMainScriptAPI::loadSkyImage ( const QString &  id,
const QString &  filename,
const QString &  lon0,
const QString &  lat0,
const QString &  lon1,
const QString &  lat1,
const QString &  lon2,
const QString &  lat2,
const QString &  lon3,
const QString &  lat3,
double  minRes = 2.5,
double  maxBright = 14,
bool  visible = true,
const QString &  frame = "EqJ2000" 
)
slot

"12d 14m 8s" or "5h 26m 8s" - formats accepted by StelUtils::getDecAngle()).

void StelMainScriptAPI::loadSkyImage ( const QString &  id,
const QString &  filename,
double  lon,
double  lat,
double  angSize,
double  rotation,
double  minRes = 2.5,
double  maxBright = 14,
bool  visible = true,
const QString &  frame = "EqJ2000" 
)
slot

Note that the edges will not be aligned with edges at center plus/minus size!

Parameters
ida string ID to be used when referring to this image (e.g. when changing the displayed status or deleting it.
filenamethe file name of the image. If a relative path is specified, "scripts/" will be prefixed before the image is searched for using StelFileMgr.
lonThe right ascension/longitude/azimuth of the center of the image in frame degrees
latThe declination/latitude/altitude of the center of the image in frame degrees
angSizeThe angular size of the image in arc minutes
rotationThe clockwise rotation angle of the image in degrees. Use 0 for an image with top=north. (New from 2017 – This used to be 90!)
minResThe minimum resolution setting for the image. UNCLEAR, using 2.5 seems to work well.
maxBrightThe maximum brightness setting for the image, Vmag/arcmin^2. Use this to blend the brightest possible pixels with DSO. mag 15 or brighter seems ok.
visibleThe initial visibility of the image
frameone of EqJ2000|EqDate|EclJ2000|EclDate|Gal(actic)|SuperG(alactic)|AzAlt.
Note
since 2017-03, you can select Frame now.
Images in AzAlt frame are not affected by atmosphere effects like refraction or extinction.
void StelMainScriptAPI::loadSkyImage ( const QString &  id,
const QString &  filename,
const QString &  lon,
const QString &  lat,
double  angSize,
double  rotation,
double  minRes = 2.5,
double  maxBright = 14,
bool  visible = true,
const QString &  frame = "EqJ2000" 
)
slot

Parameters are the same as the version of this function which takes double values for the lon and lat, except here text expressions of angles may be used.

void StelMainScriptAPI::loadSkyImageAltAz ( const QString &  id,
const QString &  filename,
double  azi0,
double  alt0,
double  azi1,
double  alt1,
double  azi2,
double  alt2,
double  azi3,
double  alt3,
double  minRes = 2.5,
double  maxBright = 14,
bool  visible = true 
)
slot
Parameters
ida string ID to be used when referring to this image (e.g. when changing the displayed status or deleting it.
filenamethe file name of the image. If a relative path is specified, "scripts/" will be prefixed before the image is searched for using StelFileMgr.
alt0The altitude angle of the first corner of the image in degrees
azi0The azimuth angle of the first corner of the image in degrees
alt1The altitude angle of the second corner of the image in degrees
azi1The azimuth angle of the second corner of the image in degrees
alt2The altitude angle of the third corner of the image in degrees
azi2The azimuth angle of the third corner of the image in degrees
alt3The altitude angle of the fourth corner of the image in degrees
azi3The azimuth angle of the fourth corner of the image in degrees
minResThe minimum resolution setting for the image
maxBrightThe maximum brightness setting for the image
visibleThe initial visibility of the image
Deprecated:
since 2017-02 because of inconsistent name. Use loadSkyImage(,,,, "AzAlt") instead!
void StelMainScriptAPI::loadSkyImageAltAz ( const QString &  id,
const QString &  filename,
double  alt,
double  azi,
double  angSize,
double  rotation,
double  minRes = 2.5,
double  maxBright = 14,
bool  visible = true 
)
slot
Parameters
ida string ID to be used when referring to this image (e.g. when changing the displayed status or deleting it.
filenamethe file name of the image. If a relative path is specified, "scripts/" will be prefixed before the image is searched for using StelFileMgr.
altThe altitude angle of the center of the image in degrees
aziThe azimuth angle of the center of the image in degrees
angSizeThe angular size of the image in arc minutes
rotationThe clockwise rotation angle of the image in degrees
minResThe minimum resolution setting for the image
maxBrightThe maximum brightness setting for the image
visibleThe initial visibility of the image
Deprecated:
since 2017-03. Use loadSkyImage(,,,, "AzAlt") instead!
void StelMainScriptAPI::loadSound ( const QString &  filename,
const QString &  id 
)
slot
Parameters
filenamethe name of the file to load.
idthe identifier which will be used to refer to the sound when calling playSound, pauseSound, stopSound and dropSound.
void StelMainScriptAPI::loadVideo ( const QString &  filename,
const QString &  id,
float  x,
float  y,
bool  show = true,
float  alpha = 1.0f 
)
slot
Parameters
filenamethe name of the file to load, relative to the scripts directory.
idthe identifier which will be used to refer to the video when calling playVideo(), pauseVideo(), stopVideo(), dropVideo() etc.
xthe x-coordinate (pixels from left) for the video frame.
ythe y-coordinate (pixels from top) for the video frame.
showthe visibility state for the video. (Optional since V0.15) You should load a video with show=true (or leave default), to start it immediately in native size. Else set show=false, and then call resizeVideo(), playVideo() or use playVideoPopout().
alphathe initial alpha value of the video, defaults to 1.
QString StelMainScriptAPI::mapToString ( const QVariantMap &  map) const
slot
Parameters
mapQVariantMap e.g. from getObjectInfo() or getLocationInfo()
Note
string values are surrounded with ", simple numeric types are printed as themselves.
More complicated value types like lists are only indicated by their type name. You must extract those (and their contents) yourself.
void StelMainScriptAPI::moveToAltAzi ( const QString &  alt,
const QString &  azi,
float  duration = 1. 
)
slot

The move will run in AltAz coordinates. This will look different from moveToRaDec() when timelapse is fast. angles may be specified in a format recognised by StelUtils::getDecAngle()

Parameters
altthe altitude angle
azithe azimuth angle
durationthe duration of the movement in seconds
void StelMainScriptAPI::moveToRaDec ( const QString &  ra,
const QString &  dec,
float  duration = 1. 
)
slot

The move will run in equatorial coordinates. This will look different from moveToAltAzi() when timelapse is fast. angles may be specified in a format recognised by StelUtils::getDecAngle()

Parameters
rathe right ascension angle
decthe declination angle
durationthe duration of the movement in seconds
void StelMainScriptAPI::moveToRaDecJ2000 ( const QString &  ra,
const QString &  dec,
float  duration = 1. 
)
slot
Parameters
rathe right ascension angle
decthe declination angle
durationthe duration of the movement in seconds
void StelMainScriptAPI::output ( const QString &  s) const
slot
Parameters
sthe message to be displayed on the output file.
void StelMainScriptAPI::pauseScript ( )
slot

Note that you may need to use a key sequence like 'Ctrl-D,R' or the GUI to resume script execution.

void StelMainScriptAPI::pauseSound ( const QString &  id)
slot

Subsequent playSound calls will resume playing from the position in the file when it was paused.

Parameters
idthe identifier used when loadSound was called
void StelMainScriptAPI::pauseVideo ( const QString &  id)
slot

Subsequent playVideo() calls will resume playing from the position in the file when it was paused.

Parameters
idthe identifier used when loadVideo() was called
void StelMainScriptAPI::playSound ( const QString &  id)
slot
Parameters
idthe identifier used when loadSound was called
void StelMainScriptAPI::playVideo ( const QString &  id,
bool  keepVisibleAtEnd = false 
)
slot
Parameters
idthe identifier used when loadVideo was called
void StelMainScriptAPI::playVideoPopout ( const QString &  id,
float  fromX,
float  fromY,
float  atCenterX,
float  atCenterY,
float  finalSizeX,
float  finalSizeY,
float  popupDuration,
bool  frozenInTransition 
)
slot

The video appears out of fromX/fromY, grows within popupDuration to size finalSizeX/finalSizeY, and shrinks back towards fromX/fromY at the end during popdownDuration.

Parameters
idthe identifier used when loadVideo was called
fromXX position of starting point, counted from left of window. May be absolute (if >1) or relative (0<X<1)
fromYY position of starting point, counted from top of window. May be absolute (if >1) or relative (0<Y<1)
atCenterXX position of center of final video frame, counted from left of window. May be absolute (if >1) or relative (0<X<1)
atCenterYY position of center of final video frame, counted from top of window. May be absolute (if >1) or relative (0<Y<1)
finalSizeXX size of final video frame. May be absolute (if >1) or relative to window size (0<X<1). If -1, scale proportional from finalSizeY.
finalSizeYY size of final video frame. May be absolute (if >1) or relative to window size (0<Y<1). If -1, scale proportional from finalSizeX.
popupDurationduration of growing start transition (seconds)
frozenInTransitiontrue if video should be paused during growing/shrinking transition.
void StelMainScriptAPI::removeSkyImage ( const QString &  id)
slot
Parameters
idthe ID of the image to remove.
void StelMainScriptAPI::requestLoadSkyImageAltAz ( const QString &  id,
const QString &  filename,
double  c1,
double  c2,
double  c3,
double  c4,
double  c5,
double  c6,
double  c7,
double  c8,
double  minRes,
double  maxBright,
bool  visible 
)
signal
Deprecated:
! USE requestLoadSkyImage() with frameType=AzAlt!
void StelMainScriptAPI::resizeVideo ( const QString &  id,
float  w,
float  h 
)
slot
Parameters
idthe identifier used when loadVideo() was called
wthe new width for the widget. (if <1, relative to main view size)
hthe new height for the widget. (if <1, relative to main view size)
void StelMainScriptAPI::saveOutputAs ( const QString &  filename)
slot

This is required to allow reading with other program on Windows while output.txt is still open.

void StelMainScriptAPI::screenshot ( const QString &  prefix,
bool  invert = false,
const QString &  dir = "",
const bool  overwrite = false 
)
slot
Parameters
prefixthe prefix for the file name to use
dirthe path of the directory to save the screenshot in. If none is specified, the default screenshot directory will be used.
invertwhether colors have to be inverted in the output image
overwritetrue to use exactly the prefix as filename (plus .png), and overwrite any existing file.
void StelMainScriptAPI::seekVideo ( const QString &  id,
qint64  ms,
bool  pause = false 
)
slot
Parameters
idthe identifier used when loadVideo() was called
msthe time in milliseconds from the start of the media.
pausetrue if you want to pause at the requested position, keep it false to play from here.
void StelMainScriptAPI::selectObjectByName ( const QString &  name,
bool  pointer = false 
)
slot
Parameters
namethe name of the object to select (english) If the name is "", any currently selected objects will be de-selected.
pointerwhether or not to have the selection pointer enabled
void StelMainScriptAPI::setAppLanguage ( QString  langCode)
slot
Parameters
langCodetwo letter language code, e.g. "en", or "de".
void StelMainScriptAPI::setBortleScaleIndex ( int  index)
slot

Wrapper for StelSkyDrawer::setBortleScaleIndex Valid values are in the range [1,9]

See also
https://en.wikipedia.org/wiki/Bortle_scale
Parameters
indexthe new Bortle scale index, must be in range [1,9]
void StelMainScriptAPI::setDate ( const QString &  dateStr,
const QString &  spec = "utc",
const bool &  dateIsDT = false 
)
slot

"2008-03-24T13:21:01"

Parameters
dateStrthe date string to use. Formats:
  • ISO, e.g. "2008-03-24T13:21:01"
  • "now" (set sim time to real time)
  • relative, e.g. "+ 4 days", "-2 weeks". can use these units: seconds, minutes, hours, days, weeks, months, years. You may also append " sidereal" to use sidereal days and so on. You can also use "now" at the start. For example: "now + 3 hours sidereal"
Note
you must use the plural all the time, even when the number of the unit is 1. i.e. use "+ 1 days" not "+1 day".
when sidereal time is used, the length of time for each unit is dependent on the current planet. By contrast when sidereal time is not specified (i.e. solar time is used) the value is conventional - i.e. 1 day means 1 Earth Solar day.
Parameters
spec"local" or "utc" - only has an effect when the ISO date type is used. Defaults to "utc".
enableDeltaTis true or false - enable Delta-T correction or not. Defaults to "true".
Note
for fully compatibles behavior of this function with the version 0.11.4 or earlier, you should call core.setDeltaTAlgorithm("WithoutCorrection"); before running core.setDate(); for disabling DeltaT correction.
starting with version 0.13.2 all relative dates are set without DeltaT correction.
starting with version 0.14.0 the final optional Boolean argument has a different meaning and default!
Parameters
dateIsTTtrue if the given date is formulated in Dynamical Time, i.e. with DeltaT added.
void StelMainScriptAPI::setDeltaTAlgorithm ( QString  algorithmName)
slot
Parameters
algorithmNameis name of equation, e.g. "WithoutCorrection" or "EspenakMeeus"
Note
list of possible names of equation for DeltaT: WithoutCorrection, Schoch, Clemence, IAU, AstronomicalEphemeris, TuckermanGoldstine, MullerStephenson, Stephenson1978, SchmadelZech1979, MorrisonStephenson1982, StephensonMorrison1984, StephensonHoulden, Espenak, Borkowski, SchmadelZech1988, ChaprontTouze, StephensonMorrison1995, Stephenson1997, ChaprontMeeus, JPLHorizons, MeeusSimons, MontenbruckPfleger, ReingoldDershowitz, MorrisonStephenson2004, EspenakMeeus, Reijs, Banjevic, IslamSadiqQureshi, Custom.
void StelMainScriptAPI::setDiskViewport ( bool  b)
slot
Parameters
bif true, sets the disk viewport on, else sets it off
void StelMainScriptAPI::setDSSMode ( bool  b)
slot
Parameters
bif true, show the DSS, if false, hide the DSS layer.
void StelMainScriptAPI::setFlagGravityLabels ( bool  b)
slot
Parameters
bif true, turn on gravity labels, else turn them off
void StelMainScriptAPI::setGuiVisible ( bool  b)
slot

Note this only applies to GUI plugins which provide the public slot "setGuiVisible(bool)".

Parameters
bif true, show the GUI, if false, hide the GUI.
void StelMainScriptAPI::setJDay ( double  JD)
slot
Parameters
JDthe Julian Day number
void StelMainScriptAPI::setMaxFps ( float  m)
slot
Parameters
mthe new maximum fps setting.
void StelMainScriptAPI::setMilkyWayIntensity ( double  i)
slot
Parameters
ivalue of intensity for the Milky Way
void StelMainScriptAPI::setMilkyWayVisible ( bool  b)
slot
Parameters
bif true, show the Milky Way, if false, hide the Milky Way.
void StelMainScriptAPI::setMinFps ( float  m)
slot

Usually this minimum will be switched to after there are no user events for some seconds to save power. However, if can be useful to set this to a high value to improve playing smoothness in scripts.

Parameters
mthe new minimum fps setting.
void StelMainScriptAPI::setMJDay ( double  MJD)
slot
Parameters
MJDthe Modified Julian Day
void StelMainScriptAPI::setMountMode ( const QString &  mode)
slot
Parameters
modeshould be "equatorial" or "azimuthal"
void StelMainScriptAPI::setNightMode ( bool  b)
slot
Parameters
bif true, set Night Mode, else set Normal Mode
void StelMainScriptAPI::setObserverLocation ( double  longitude,
double  latitude,
double  altitude,
double  duration = 1.,
const QString &  name = "",
const QString &  planet = "" 
)
slot
Parameters
longitudethe longitude in degrees. E is +ve. values out of the range -180..180 mean that the longitude will not be set
latitudethe latitude in degrees. N is +ve. values out of the range -90..90 mean that the latitude will not be set
altitudethe new altitude in meters. values less than -1000 mean the altitude will not be set.
durationthe time for the transition from the old to the new location.
nameA name for the location (which will appear in the status bar.
planetthe English name of the new planet. If the planet name is not known (e.g. ""), the planet will not be set.
void StelMainScriptAPI::setObserverLocation ( const QString  id,
float  duration = 1. 
)
slot
Parameters
idthe location ID as it would be found in the database of locations - do a search in the Location window to see what where is. e.g. "York, UnitedKingdom".
durationthe number of seconds to take to move location.
void StelMainScriptAPI::setProjectionMode ( const QString &  id)
slot
Parameters
idthe name of the projection mode to use, e.g. "ProjectionPerspective" and so on. valid values of id are:
  • ProjectionPerspective
  • ProjectionEqualArea
  • ProjectionStereographic
  • ProjectionFisheye
  • ProjectionHammer
  • ProjectionCylinder
  • ProjectionMercator
  • ProjectionOrthographic
  • ProjectionSinusoidal
  • ProjectionMiller
void StelMainScriptAPI::setScriptRate ( double  r)
slot
Parameters
rthe multiple of the normal script execution speed, i.e. if 5 is passed the script will execute 5 times faster than it would if the script rate was 1.
void StelMainScriptAPI::setSelectedObjectInfo ( const QString &  level)
slot
Parameters
levelcan be "AllInfo", "ShortInfo", "None"
void StelMainScriptAPI::setSkyCulture ( const QString &  id)
slot
Parameters
idthe ID of the sky culture to set, e.g. western or inuit etc.
void StelMainScriptAPI::setSkyLanguage ( QString  langCode)
slot
Parameters
langCodetwo letter language code, e.g. "en", or "de".
void StelMainScriptAPI::setSphericMirror ( bool  b)
slot
Parameters
bif true, sets the spherical mirror distortion effect for viewport on, else sets it off
void StelMainScriptAPI::setTimeRate ( double  ts)
slot
Parameters
tsthe new rate of passage of time as a multiple of real time. For example if ts is 1, time will pass at the normal rate. If ts == 10 then simulation time will pass at 10 times the normal rate. If ts is negative, simulation time will go backwards.
void StelMainScriptAPI::setVideoAlpha ( const QString &  id,
float  alpha 
)
slot
Parameters
idthe identifier used when loadVideo() was called
alphathe new alpha value to set.
alphadoes not work properly, only
alpha=0makes it invisible.
void StelMainScriptAPI::setVideoXY ( const QString &  id,
float  x,
float  y,
bool  relative = false 
)
slot
Parameters
idthe identifier used when loadVideo() was called
xthe new x-coordinate for the video. (if <1, relative to main view size)
ythe new y-coordinate for the video. (if <1, relative to main view size)
relativetrue if you want to move in relative coordinates, not set absolutely
void StelMainScriptAPI::setViewportOffset ( const float  x,
const float  y 
)
slot

in wide cylindrical panorama screens to push the horizon down and see more of the sky.

Parameters
x-0.5...0.5 horizontal offset. This is not available in the GUI, and it is recommended to keep it at 0.
y-0.5...0.5 vertical offset. This is available in the GUI.
Deprecated:
Use StelMovementMgr::moveViewport instead
void StelMainScriptAPI::setViewportStretch ( const float  stretch)
slot

Use this e.g. in startup.ssc. Implemented for 0.15 for a setup with 5 projectors with edge blending. The 9600x1200 get squeezed somewhat which looks a bit odd. Use this stretch to compensate. Experimental! To avoid overuse, there is currently no config.ini setting available.

Note
Currently only the projected content is affected. ScreenImage, ScreenLabel is not stretched.
void StelMainScriptAPI::setZodiacalLightIntensity ( double  i)
slot
Parameters
ivalue of intensity for the Zodiacal Light
void StelMainScriptAPI::setZodiacalLightVisible ( bool  b)
slot
Parameters
bif true, show the Zodiacal Light, if false, hide the Zodiacal Light.
void StelMainScriptAPI::showVideo ( const QString &  id,
bool  show = true 
)
slot
Parameters
idthe identifier used when loadVideo() was called
showthe new visible state of the video.
Note
You must call this if you called loadVideo() with its
Parameters
show=false,elsevideo will be played hidden.
void StelMainScriptAPI::stopSound ( const QString &  id)
slot

This resets the position in the sound to the start so that subsequent playSound calls will start from the beginning.

Parameters
idthe identifier used when loadSound was called
void StelMainScriptAPI::stopVideo ( const QString &  id)
slot

This resets the position in the video to the start so that subsequent playVideo() calls will start from the beginning.

Parameters
idthe identifier used when loadVideo() was called
void StelMainScriptAPI::wait ( double  t)
slot
Parameters
tthe number of seconds to wait
void StelMainScriptAPI::waitFor ( const QString &  dt,
const QString &  spec = "utc" 
)
slot

This function will take into account the rate (and direction) in which simulation time is passing. e.g. if a future date is specified and the time is moving backwards, the function will return immediately. If the time rate is 0, the function will not wait. This is to prevent infinite wait time.

Parameters
dtthe date string to use
spec"local" or "utc"