Class EventScriptingInterface
- All Implemented Interfaces:
IObserver
,IScriptingInterface
IScriptingInterface
. This implementation uses
mainly the event manager to communicate with the rest of Gaia Sky.-
Constructor Summary
ConstructorDescriptionEventScriptingInterface
(com.badlogic.gdx.assets.AssetManager manager, CatalogManager catalogManager) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Sets the current time frame to real time.void
Sets the current time frame to simulation time.com.badlogic.ashley.core.Entity
addLineObject
(String name, double[] points, double[] color, double lineWidth, int primitive, boolean arrowCaps, double trailMap, String archetypeName) com.badlogic.ashley.core.Entity
addLineObject
(String name, List<?> points, List<?> color, double lineWidth, int primitive, boolean arrowCaps, double trailMap, String archetypeName) void
addPolyline
(String name, double[] points, double[] color) Adds a new polyline with the given name, points and color.void
addPolyline
(String name, double[] points, double[] color, double lineWidth) Adds a new polyline with the given name, points, color and line width.void
addPolyline
(String name, double[] points, double[] color, double lineWidth, boolean arrowCaps) Adds a new polyline with the given name, points, color and line width.void
addPolyline
(String name, double[] points, double[] color, double lineWidth, int primitive) Adds a new polyline with the given name, points, color, line width and primitive.void
addPolyline
(String name, double[] points, double[] color, double lineWidth, int primitive, boolean arrowCaps) Adds a new polyline with the given name, points, color, line width, primitive and arrow caps.void
addPolyline
(String name, double[] points, double[] color, int lineWidth) void
addPolyline
(String name, double[] points, double[] color, int lineWidth, int primitive) void
addPolyline
(String name, List<?> points, List<?> color) void
addPolyline
(String name, List<?> points, List<?> color, float lineWidth) void
addPolyline
(String name, List<?> points, List<?> color, float lineWidth, boolean arrowCaps) void
addPolyline
(String name, List<?> points, List<?> color, float lineWidth, int primitive) void
addPolyline
(String name, List<?> points, List<?> color, float lineWidth, int primitive, boolean arrowCaps) void
addPolyline
(String name, List<?> points, List<?> color, int lineWidth) void
addPolyline
(String name, List<?> points, List<?> color, int lineWidth, boolean arrowCaps) void
addPolyline
(String name, List<?> points, List<?> color, int lineWidth, int primitive) void
addPolyline
(String name, List<?> points, List<?> color, int lineWidth, int primitive, boolean arrowCaps) void
addShapeAroundObject
(String shapeName, String shapeType, String primitive, double size, String objectName, float r, float g, float b, float a, boolean showLabel, boolean trackObject) Creates a shape object of the given type with the given size around the object with the given name and primitive.void
addShapeAroundObject
(String shapeName, String shapeType, String primitive, String orientation, double size, String objectName, float r, float g, float b, float a, boolean showLabel, boolean trackObject) Creates a shape object of the given type with the given size around the object with the given name, primitive and orientation.void
addTrajectoryLine
(String name, double[] points, double[] color) Adds a new trajectory object with the given name, points and color.void
addTrajectoryLine
(String name, double[] points, double[] color, double trailMap) Adds a new trajectory object with the given name, points and color.void
addTrajectoryLine
(String name, List<?> points, List<?> color) void
addTrajectoryLine
(String name, List<?> points, List<?> color, double trailMap) void
Creates a backup of the current settings state that can be restored later on.void
Centers the camera to the focus, removing any deviation of the line of sight.void
cameraForward
(double cameraForward) Adds a forward movement to the camera with the given value.void
cameraForward
(long value) void
cameraOrientationTransition
(double[] camDir, double[] camUp, double durationSeconds, String smoothType, double smoothFactor, boolean sync) Creates a smooth transition from the current camera orientation to the given camera orientation {camDir, camUp} in the given number of seconds.void
cameraOrientationTransition
(List<?> camDir, List<?> camUp, double durationSeconds, String smoothType, double smoothFactor, boolean sync) void
cameraPitch
(double amount) Adds a pitch to the camera.void
cameraPitch
(long amount) void
cameraPositionTransition
(double[] camPos, String units, double durationSeconds, String smoothType, double smoothFactor, boolean sync) Creates a smooth transition from the current camera position to the given camera position in the given number of seconds.void
cameraPositionTransition
(List<?> camPos, String units, double durationSeconds, String smoothType, double smoothFactor, boolean sync) void
cameraRoll
(double roll) Adds a roll force to the camera.void
cameraRoll
(long roll) void
cameraRotate
(double deltaX, double deltaY) Adds a rotation movement to the camera around the current focus, or a pitch/yaw if in free mode.void
cameraRotate
(double deltaX, long deltaY) void
cameraRotate
(long deltaX, double deltaY) void
Stops all camera motion.void
cameraTransition
(double[] camPos, double[] camDir, double[] camUp, double seconds) Creates a smooth transition from the current camera state to the given camera state {camPos, camDir, camUp} in the given number of seconds.void
cameraTransition
(double[] camPos, double[] camDir, double[] camUp, double seconds, boolean sync) Creates a smooth transition from the current camera state to the given camera state {camPos, camDir, camUp} in the given number of seconds.void
cameraTransition
(double[] camPos, double[] camDir, double[] camUp, double positionDurationSeconds, String positionSmoothType, double positionSmoothFactor, double orientationDurationSeconds, String orientationSmoothType, double orientationSmoothFactor) Creates a smooth transition from the current camera state to the given camera state {camPos, camDir, camUp} in the given number of seconds.void
cameraTransition
(double[] camPos, double[] camDir, double[] camUp, long seconds) void
cameraTransition
(double[] camPos, String units, double[] camDir, double[] camUp, double seconds) Creates a smooth transition from the current camera state to the given camera state {camPos, camDir, camUp} in the given number of seconds.void
cameraTransition
(double[] camPos, String units, double[] camDir, double[] camUp, double seconds, boolean sync) Creates a smooth transition from the current camera state to the given camera state {camPos, camDir, camUp} in the given number of seconds.void
cameraTransition
(double[] camPos, String units, double[] camDir, double[] camUp, double positionDurationSeconds, String positionSmoothType, double positionSmoothFactor, double orientationDurationSeconds, String orientationSmoothType, double orientationSmoothFactor, boolean sync) Creates a smooth transition from the current camera state to the given camera state {camPos, camDir, camUp} in the given number of seconds.void
cameraTransition
(double[] camPos, String units, double[] camDir, double[] camUp, long seconds) void
cameraTransition
(List<?> camPos, String units, List<?> camDir, List<?> camUp, double seconds) void
cameraTransition
(List<?> camPos, String units, List<?> camDir, List<?> camUp, double seconds, boolean sync) void
cameraTransition
(List<?> camPos, String units, List<?> camDir, List<?> camUp, double positionDurationSeconds, String positionSmoothType, double positionSmoothFactor, double orientationDurationSeconds, String orientationSmoothType, double orientationSmoothFactor, boolean sync) void
cameraTransition
(List<?> camPos, String units, List<?> camDir, List<?> camUp, long seconds) void
cameraTransition
(List<?> camPos, String units, List<?> camDir, List<?> camUp, long seconds, boolean sync) void
cameraTransition
(List<?> camPos, List<?> camDir, List<?> camUp, double seconds) void
cameraTransition
(List<?> camPos, List<?> camDir, List<?> camUp, double seconds, boolean sync) void
cameraTransition
(List<?> camPos, List<?> camDir, List<?> camUp, double seconds, String positionSmoothType, double positionSmoothFactor, String orientationSmoothType, double orientationSmoothFactor) void
cameraTransition
(List<?> camPos, List<?> camDir, List<?> camUp, long seconds) void
cameraTransition
(List<?> camPos, List<?> camDir, List<?> camUp, long seconds, boolean sync) void
cameraTransitionKm
(double[] camPos, double[] camDir, double[] camUp, double seconds) Same asIScriptingInterface.cameraTransition(double[], double[], double[], double)
but the camera position is given in Km.void
cameraTransitionKm
(List<?> camPos, List<?> camDir, List<?> camUp, double seconds) void
cameraTransitionKm
(List<?> camPos, List<?> camDir, List<?> camUp, long seconds) void
cameraTurn
(double deltaX, double deltaY) Adds a turn force to the camera (yaw and/or pitch).void
cameraTurn
(double deltaX, long deltaY) void
cameraTurn
(long deltaX, double deltaY) void
cameraTurn
(long deltaX, long deltaY) void
cameraYaw
(double amount) Adds a yaw to the camera.void
cameraYaw
(long amount) void
Clears both the subhead and the headline messages.boolean
Clears the transformation matrix (if any) in the dataset identified by the given name.void
Clears the headline message.void
Clears the stack of settings objects.void
Clears the subhead message.void
collapseGuiComponent
(String name) void
collapseUIPane
(String panelName) Collapses the UI pane with the given name.void
configureFrameOutput
(int width, int height, double fps, String directory, String namePrefix) Configures the frame output system, setting the resolution of the images, the target frames per second, the output directory and the image name prefix.void
configureFrameOutput
(int width, int height, int fps, String directory, String namePrefix) Configures the frame output system, setting the resolution of the images, the target frames per second, the output directory and the image name prefix.void
configureRenderOutput
(int width, int height, int fps, String directory, String namePrefix) Configures the frame output system, setting the resolution of the images, the target frames per second, the output directory and the image name prefix.void
configureScreenshots
(int width, int height, String directory, String namePrefix) Configures the screenshot system, setting the resolution of the images, the output directory and the image name prefix.double[]
cross3
(double[] vec1, double[] vec2) Computes the cross product between the two 3D vectors.double[]
void
Disables the GUI rendering.void
Disables all input events from mouse, keyboard, touchscreen, etc.void
displayImageObject
(int id, String path, double x, double y, double[] color) Same asIScriptingInterface.displayImageObject(int, String, float, float, float, float, float, float)
but using a double array for the color instead of each component separately.void
displayImageObject
(int id, String path, double x, double y, List<?> color) void
displayImageObject
(int id, String path, float x, float y) Adds a new image object at the given coordinates.void
displayImageObject
(int id, String path, float x, float y, float r, float g, float b, float a) Adds a new image object at the given coordinates.void
displayMessageObject
(int id, String message, double x, double y, double[] color, double fontSize) Same asIScriptingInterface.displayImageObject(int, String, float, float, float, float, float, float)
but using an array for the color instead of giving each component separately.void
displayMessageObject
(int id, String message, double x, double y, List<?> color, double fontSize) void
displayMessageObject
(int id, String message, float x, float y, float r, float g, float b, float a, float fontSize) Adds a new one-line message in the screen with the given id and the given coordinates.void
displayMessageObject
(int id, String message, float x, float y, float r, float g, float b, float a, int fontSize) void
displayPopupNotification
(String message) Displays a popup notification on the screen for the default duration.void
displayPopupNotification
(String message, float duration) Displays a popup notification on the screen for the given duration.void
displayPopupNotification
(String message, Double duration) void
displayTextObject
(int id, String text, float x, float y, float maxWidth, float maxHeight, float r, float g, float b, float a, float fontSize) Adds a new multi-line text in the screen with the given id, coordinates and size.void
displayTextObject
(int id, String text, float x, float y, float maxWidth, float maxHeight, float r, float g, float b, float a, int fontSize) double
dot3
(double[] vec1, double[] vec2) Computes the dot product between the two 3D vectors.double
double[]
eclipticToEquatorial
(double[] ecl) Converts ecliptic cartesian coordinates (in the internal reference system) to equatorial cartesian coordinates.double[]
eclipticToEquatorial
(List<?> ecl) double[]
eclipticToInternalCartesian
(double l, double b, double r) Converts ecliptic coordinates to the internal cartesian coordinate system.double[]
eclipticToInternalCartesian
(int l, int b, int r) void
Enables the GUI rendering.void
Enables all input events.double[]
equatorialCartesianToInternalCartesian
(double[] eq, double kmFactor) Converts regular cartesian coordinates, where XY is the equatorial plane, with X pointing to the vernal equinox (ra=0) and Y points to ra=90, and Z pointing to the celestial north pole (dec=90) to internal cartesian coordinates with internal units.double[]
equatorialCartesianToInternalCartesian
(List<?> eq, double kmFactor) double[]
equatorialToEcliptic
(double[] eq) Converts equatorial cartesian coordinates (in the internal reference system) to ecliptic cartesian coordinates.double[]
equatorialToEcliptic
(List<?> eq) double[]
equatorialToGalactic
(double[] eq) Converts equatorial cartesian coordinates (in the internal reference system) to galactic cartesian coordinates.double[]
equatorialToGalactic
(List<?> eq) double[]
equatorialToInternalCartesian
(double ra, double dec, double r) Converts equatorial coordinates to the internal cartesian coordinate system.double[]
equatorialToInternalCartesian
(int ra, int dec, int r) void
Log an error using the internal logging system.void
expandGuiComponent
(String name) void
expandUIPane
(String panelName) Expands the UI pane with the given name.void
Forcefully triggers an update of the scene and the positions of all the objects.double[]
galacticToEquatorial
(double[] gal) Converts galactic cartesian coordinates (in the internal reference system) to equatorial cartesian coordinates.double[]
galacticToEquatorial
(List<?> gal) double[]
galacticToInternalCartesian
(double l, double b, double r) Converts galactic coordinates to the internal cartesian coordinate system.double[]
galacticToInternalCartesian
(int l, int b, int r) Gets the location of the assets folder.Returns the build string.double
Gets the current frame rate setting of the camcorder.double[]
Gets the current camera direction vector.double[]
Gets the current camera orientation quaternion.double[]
Gets the current camera position, in km.double[]
getCameraPosition
(String units) Gets the current camera position, in the requested units.double
Gets the current physical speed of the camera in km/h.double[]
Gets the current camera up vector.Returns the closest object to the camera in this instant as aIFocus
.boolean
Gets the visibility of the component type described by the key.Gets the absolute path to the location of the configuration directorylong
Gets the current frame number.Gets the absolute path of the local data directory, configured in yourconfig.yaml
file.Gets the absolute path of the default directory where the camera files are saved.Gets the absolute path of the default directory where the still frames are saved.Gets the absolute path to the location of the inputListener mappings.Gets the absolute path to the location of the music filesGets the absolute path of the default directory where the screenshots are saved.double
getDistanceTo
(String name) Returns the distance to the surface of the object identified with the givenname
.com.badlogic.ashley.core.Entity
com.badlogic.ashley.core.Entity
boolean
getForceDisplayLabel
(String name) Gets the value of the force display label flag for the object identified with the given name.long
Gets the current frame number.double
Gets the current FPS setting in the frame output system.float
Gets the current scale factor applied to the UI.double
Returns the internal unit to meter conversion factor.getLineObject
(String name) Gets aVerts
object from the scene byname
.getLineObject
(String name, double timeOutSeconds) Gets aVerts
object from the scene byname
.Returns the default data directory.double
Returns the meter to internal unit conversion factor.float
Gets an object from the scene graph byname
or id (HIP, TYC, Gaia SourceId).Gets an object byname
or id (HIP, TYC, Gaia SourceID), optionally waiting until the object is available, with a timeout.double[]
getObjectPosition
(String name) Gets the current position of the object identified byname
in the internal coordinate system and internal units.double[]
getObjectPosition
(String name, String units) Gets the current position of the object identified byname
in the internal coordinate system and the requested distance units.double[]
Gets the predicted position of the object identified byname
in the internal coordinate system and internal units.double[]
getObjectPredictedPosition
(String name, String units) Gets the predicted position of the object identified byname
in the internal coordinate system and the requested distance units.double
getObjectRadius
(String name) Gets the size of the object identified byname
, in Km, by name or id (HIP, TYC, sourceId).double[]
Projects the world space position of the given object to screen coordinates.boolean
getObjectVisibility
(String name) Gets the visibility of a particular object.float
Gets the current point size value in pixels.float[]
getPositionAndSizeGui
(String name) Returns the size and position of the GUI element that goes by the given name or null if such element does not exist.long
Returns the current maximum number of velocity vectors per star group.double[]
getRefSysTransform
(String name) Returns the column-major matrix representing the given reference system transformation.double
Gets the current FPS setting in the frame output system.int
Returns the screen height in pixels.int
Returns the screen width in pixels.long
Returns the current simulation time as the number of milliseconds since 1970-01-01T00:00:00Z (UTC).int[]
Returns the current UTC simulation time in an array.float
Gets the base star opacity.float
Gets the star brightness value.float
Gets the minimum star opacity.double[]
Returns the star parameters given its identifier or name, if the star exists and it is loaded.float
Gets the current star size value in pixels.Returns a string with the version number, build string, system, builder and build time.Returns the version number string.void
goToObject
(com.badlogic.ashley.core.Entity object, double solidAngle, int waitTimeSeconds, AtomicBoolean stop) void
goToObject
(String name) Runs a seamless trip to the object with the namefocusName
until the object view angle is20 degrees
.void
goToObject
(String name, double angle) Runs a seamless trip to the object with the namefocusName
until the object view angleviewAngle
is met.void
goToObject
(String name, double solidAngle, float waitTimeSeconds) Runs a seamless trip to the object with the namefocusName
until the object view angleviewAngle
is met.void
goToObject
(String name, double solidAngle, int waitTimeSeconds) void
goToObject
(String name, double solidAngle, int waitTimeSeconds, AtomicBoolean stop) void
goToObject
(String name, long solidAngle, float waitTimeSeconds) void
goToObject
(String name, long solidAngle, int waitTimeSeconds) void
goToObjectInstant
(String name) Sets the camera in focus mode with the given focus object and instantly moves the camera next to the focus object.boolean
hasDataset
(String dsName) Checks whether the dataset identified by the given name is loadedboolean
hideDataset
(String dsName) Hides the dataset identified by the given name, if it exists and is not hidden.boolean
highlightDataset
(String dsName, boolean highlight) Enables or disables the dataset highlight using a plain color chosen by the system.boolean
highlightDataset
(String dsName, float r, float g, float b, float a, boolean highlight) Enables or disables the dataset highlight, using a given plain color.boolean
highlightDataset
(String dsName, int colorIndex, boolean highlight) Enables or disables the dataset highlight, using a plain color given by the color index: 0 - blue 1 - red 2 - yellow 3 - green 4 - pink 5 - orange 6 - purple 7 - brown 8 - magentaboolean
highlightDataset
(String dsName, String attributeName, String colorMap, double minMap, double maxMap, boolean highlight) Enables or disables the dataset highlight, using the given color map on the given attribute with the given maximum and minimum mapping values.double[]
internalCartesianToEquatorial
(double x, double y, double z) Converts internal cartesian coordinates to equatorial[ra, dec, distance]
coordinates.double[]
internalCartesianToEquatorial
(int x, int y, int z) double
internalUnitsToKilometres
(double internalUnits) Converts the value in internal units to Kilometers.double[]
internalUnitsToKilometres
(double[] internalUnits) Converts the array in internal units to Kilometers.double[]
internalUnitsToKilometres
(List<?> internalUnits) double
internalUnitsToMetres
(double internalUnits) Converts the value in internal units to metres.double
internalUnitsToParsecs
(double internalUnits) Converts the value in internal units to parsecs.double[]
internalUnitsToParsecs
(double[] internalUnits) Converts the array in internal units to parsecs.boolean
Is the frame output system on?boolean
Is the frame output system on?boolean
Queries whether the time is on or not.double
kilometersToInternalUnits
(double kilometres) double
kilometresToInternalUnits
(double kilometres) Converts the kilometres to internal units.void
landAtObjectLocation
(com.badlogic.ashley.core.Entity object, String locationName, AtomicBoolean stop) void
landAtObjectLocation
(String name, double longitude, double latitude) Lands on the object with the givenname
, if it is a planet or moon, at the location specified in by [latitude, longitude], in degrees.void
landAtObjectLocation
(String name, String locationName) Lands on the object with the givenname
, if it is a planet or moon, at the location with the given name, if it exists.void
landAtObjectLocation
(String name, String locationName, AtomicBoolean stop) void
landOnObject
(String name) Lands on the object with the given name, if it is a planet or moon.Returns the names of all datasets currently loaded.boolean
loadDataset
(String dsName, String absolutePath) Loads a VOTable, FITS, CSV or JSON dataset file with the given name.boolean
loadDataset
(String dsName, String path, boolean sync) Loads a VOTable, FITS, CSV or JSON dataset file with the given name.boolean
loadDataset
(String dsName, String path, CatalogInfo.CatalogInfoSource type, boolean sync) boolean
loadDataset
(String dsName, String path, CatalogInfo.CatalogInfoSource type, DatasetOptions datasetOptions, boolean sync) Loads a VOTable, FITS, CSV or JSON dataset file with the given name.boolean
loadDataset
(String dsName, uk.ac.starlink.util.DataSource ds, CatalogInfo.CatalogInfoSource type, DatasetOptions datasetOptions, boolean sync) boolean
loadJsonCatalog
(String dsName, String path) Loads a Gaia Sky JSON dataset file asynchronously.boolean
loadJsonDataset
(String dsName, String path) Loads a JSON Gaia Sky dataset file asynchronously.boolean
loadJsonDataset
(String dsName, String pathString, boolean sync) Loads a Gaia Sky JSON dataset file in a synchronous or asynchronous manner.boolean
loadJsonDataset
(String dsName, String pathString, boolean select, boolean sync) Loads a Gaia Sky JSON dataset file in a synchronous or asynchronous manner.boolean
loadParticleDataset
(String dsName, String path, double profileDecay, double[] particleColor, double colorNoise, double[] labelColor, double particleSize, double[] sizeLimits, ComponentTypes.ComponentType ct, double[] fadeIn, double[] fadeOut, boolean sync) boolean
loadParticleDataset
(String dsName, String path, double profileDecay, double[] particleColor, double colorNoise, double[] labelColor, double particleSize, double[] sizeLimits, String ct, double[] fadeIn, double[] fadeOut, boolean sync) Loads a particle dataset (point cloud) from a VOTable, a CSV or a FITS file.boolean
loadParticleDataset
(String dsName, String path, double profileDecay, double[] particleColor, double colorNoise, double[] labelColor, double particleSize, String ct, boolean sync) Loads a particle dataset (point cloud) from a VOTable, a CSV or a FITS file.boolean
loadParticleDataset
(String dsName, String path, double profileDecay, double[] particleColor, double colorNoise, double[] labelColor, double particleSize, String ct, double[] fadeIn, double[] fadeOut, boolean sync) Loads a particle dataset (point cloud) from a VOTable, a CSV or a FITS file.boolean
loadParticleDataset
(String dsName, String path, double profileDecay, List<?> particleColor, double colorNoise, List<?> labelColor, double particleSize, String ct, boolean sync) boolean
loadParticleDataset
(String dsName, String path, double profileDecay, List<?> particleColor, double colorNoise, List<?> labelColor, double particleSize, String ct, List<?> fadeIn, List<?> fadeOut, boolean sync) boolean
loadParticleDataset
(String dsName, String path, double profileDecay, List<?> particleColor, double colorNoise, List<?> labelColor, double particleSize, List<?> sizeLimits, String ct, List<?> fadeIn, List<?> fadeOut, boolean sync) boolean
loadParticleDataset
(String dsName, String path, CatalogInfo.CatalogInfoSource type, double profileDecay, double[] particleColor, double colorNoise, double[] labelColor, double particleSize, double[] sizeLimits, ComponentTypes.ComponentType ct, double[] fadeIn, double[] fadeOut, boolean sync) boolean
loadStarClusterDataset
(String dsName, String path, double[] particleColor, double[] fadeIn, double[] fadeOut, boolean sync) Loads a star cluster dataset from a CSV, VOTable or FITS file.boolean
loadStarClusterDataset
(String dsName, String path, double[] particleColor, double[] labelColor, double[] fadeIn, double[] fadeOut, boolean sync) Loads a star cluster dataset from a CSV, VOTable or FITS file.boolean
loadStarClusterDataset
(String dsName, String path, double[] particleColor, double[] labelColor, String ct, double[] fadeIn, double[] fadeOut, boolean sync) Loads a star cluster dataset from a CSV, VOTable or FITS file.boolean
loadStarClusterDataset
(String dsName, String path, double[] particleColor, String ct, double[] fadeIn, double[] fadeOut, boolean sync) Loads a star cluster dataset from a CSV, VOTable or FITS file.boolean
loadStarClusterDataset
(String dsName, String path, List<?> particleColor, String ct, List<?> fadeIn, List<?> fadeOut, boolean sync) boolean
loadStarClusterDataset
(String dsName, String path, List<?> particleColor, List<?> labelColor, String ct, List<?> fadeIn, List<?> fadeOut, boolean sync) boolean
loadStarClusterDataset
(String dsName, String path, List<?> particleColor, List<?> fadeIn, List<?> fadeOut, boolean sync) boolean
loadStarClusterDataset
(String dsName, String path, List<?> particleColor, List<?> labelColor, List<?> fadeIn, List<?> fadeOut, boolean sync) boolean
loadStarDataset
(String dsName, String path, boolean sync) Loads a star dataset from a VOTable, a CSV or a FITS file.boolean
loadStarDataset
(String dsName, String path, double magnitudeScale, boolean sync) Loads a star dataset from a VOTable, a CSV or a FITS file.boolean
loadStarDataset
(String dsName, String path, double magnitudeScale, double[] labelColor, boolean sync) Loads a star dataset from a VOTable, a CSV or a FITS file.boolean
loadStarDataset
(String dsName, String path, double magnitudeScale, double[] labelColor, double[] fadeIn, double[] fadeOut, boolean sync) Loads a star dataset from a VOTable, a CSV or a FITS file.boolean
loadStarDataset
(String dsName, String path, double magnitudeScale, List<?> labelColor, boolean sync) boolean
loadStarDataset
(String dsName, String path, double magnitudeScale, List<?> labelColor, List<?> fadeIn, List<?> fadeOut, boolean sync) boolean
loadStarDataset
(String dsName, String path, CatalogInfo.CatalogInfoSource type, double magnitudeScale, double[] labelColor, double[] fadeIn, double[] fadeOut, boolean sync) boolean
loadVariableStarDataset
(String dsName, String path, double magnitudeScale, double[] labelColor, double[] fadeIn, double[] fadeOut, boolean sync) Loads a variable star dataset from a VOTable, CSV or FITS file.boolean
loadVariableStarDataset
(String dsName, String path, CatalogInfo.CatalogInfoSource type, double magnitudeScale, double[] labelColor, double[] fadeIn, double[] fadeOut, boolean sync) void
Print text using the internal logging system.void
Maximizes the interface window.double
metresToInternalUnits
(double metres) Converts the metres to internal units.void
Minimizes the interface window.void
Event notification call.void
parkCameraRunnable
(String id, Runnable runnable) Parks a camera updateRunnable
to the main loop thread, and keeps it running every frame until it finishes or it is unparked byIScriptingInterface.unparkRunnable(String)
.void
parkRunnable
(String id, Runnable runnable) void
parkSceneRunnable
(String id, Runnable runnable) Parks an updateRunnable
to the main loop thread, and keeps it running every frame until it finishes or it is unparked byIScriptingInterface.unparkRunnable(String)
.double
parsecsToInternalUnits
(double parsecs) Converts the parsecs to internal units.void
playCameraPath
(String file) void
playCameraPath
(String file, boolean sync) void
pointAtSkyCoordinate
(double ra, double dec) Sets the camera in free mode and points it to the given coordinates in equatorial system.void
pointAtSkyCoordinate
(long ra, long dec) void
postRunnable
(Runnable runnable) Posts aRunnable
to the main loop thread that runs once after the update-scene stage, and before the render stage.void
preloadTexture
(String path) Pre-loads the given image as a texture for later use.void
preloadTextures
(String[] paths) Pre-loads the given images as textures for later use.void
Print text using the internal logging system.void
quit()
Initiates the quit action to terminate the program.void
Forces all orbits to refresh immediately.void
refreshObjectOrbit
(String name) Forces the refresh of the orbit of the object identified byname
.void
Removes all objects.void
Removes the tracking object from the camera, if any.boolean
removeDataset
(String dsName) Removes the dataset identified by the given name, if it exists.void
removeModelObject
(String name) Removes the model object identified by the given name from the internal scene graph model of Gaia Sky, if it exists.void
removeObject
(int id) Removes the item with the given id.void
Removes the current coordinates provider from the object with the given name.void
removeObjects
(int[] ids) Removes the items with the given ids.void
removeObjects
(List<?> ids) void
removeRunnable
(String id) Removes the runnable with the given id, if any.void
Resets to zero the image sequence number used to generate the file names of the frame output images.void
Forces a re-initialization of the entire user interface of Gaia Sky on the fly.boolean
Takes the settings object at the top of the settings stack and makes it effective.double[]
rotate2
(double[] vector, double angle) Rotates a 2D vector by the specified angle in degrees, counter-clockwise assuming that the y axis points up.double[]
rotate2
(double[] vector, long angle) double[]
double[]
double[]
rotate3
(double[] vector, double[] axis, double angle) Rotates a 3D vector around the given axis by the specified angle in degrees.double[]
rotate3
(double[] vector, double[] axis, long angle) double[]
double[]
void
runCameraPath
(String file) Runs a .gsc camera path file and returns immediately.void
runCameraPath
(String file, boolean sync) Runs a .gsc camera path file and returns immediately.void
runCameraRecording
(String file) Runs the camera recording file with the given path.void
Takes a screenshot of the current frame and saves it to the configured location (seeIScriptingInterface.configureScreenshots(int, int, String, String)
).void
setAmbientLight
(float ambientLight) Sets the ambient light to a certain value.void
setAmbientLight
(int value) void
setBackBufferScale
(float scale) Sets the scaling factor for the back-buffer.void
setBloom
(float value) Sets the strength value for the bloom effect.void
setBloom
(int level) void
setBrightnessLevel
(double level) Sets the brightness level of the render system.void
setBrightnessLevel
(long level) void
setCamcorderFps
(double targetFps) Sets the target frame rate of the camcorder.void
setCameraCenterFocus
(boolean centerFocus) Whether to look for the focus constantly when in focus mode and center it in the view or whether the view must be free.void
setCameraDirection
(double[] direction) Sets the camera direction vector to the given vector, in the internal reference system.void
setCameraDirection
(double[] direction, boolean immediate) Sets the camera direction vector to the given vector, in the internal reference system.void
setCameraDirection
(List<?> dir) void
setCameraDirection
(List<?> dir, boolean immediate) void
setCameraFocus
(String focusName) Sets the camera in focus mode with the focus object that bears the givenfocusName
.void
setCameraFocus
(String focusName, float waitTimeSeconds) Sets the camera in focus mode with the focus object that bears the givenfocusName
.void
setCameraFocus
(String focusName, int waitTimeSeconds) void
setCameraFocusInstant
(String focusName) Sets the camera in focus mode with the given focus object.void
setCameraFocusInstantAndGo
(String focusName) Sets the camera in focus mode with the given focus object and instantly moves the camera next to the focus object.void
setCameraFocusInstantAndGo
(String focusName, boolean sleep) void
Sets the camera in free mode.void
setCameraLock
(boolean lock) Activates or deactivates the camera lock to the focus reference system when in focus mode.void
setCameraOrientationLock
(boolean lock) Locks or unlocks the orientation of the camera to the focus object's rotation.void
setCameraOrientationQuaternion
(double[] quaternion) Sets the camera orientation to the given quaternion, given as an array of [x, y, z, w].void
setCameraOrientationQuaternion
(List<?> quaternion) void
setCameraPosition
(double[] position) Sets the camera position to the given coordinates, in the internal reference system and kilometres.void
setCameraPosition
(double[] position, boolean immediate) Sets the camera position to the given coordinates, in the internal reference system and kilometres.void
setCameraPosition
(double[] position, String units) Sets the camera position to the given coordinates, in the internal reference system and the given units.void
setCameraPosition
(double[] position, String units, boolean immediate) Sets the camera position to the given coordinates, in the internal reference system and in the requested units.void
setCameraPosition
(double x, double y, double z) Component-wise version ofIScriptingInterface.setCameraPosition(double[])
.void
setCameraPosition
(double x, double y, double z, boolean immediate) Component-wise version ofIScriptingInterface.setCameraPosition(double[], boolean)
.void
setCameraPosition
(double x, double y, double z, String units) Component-wise version ofIScriptingInterface.setCameraPosition(double[], String)
.void
setCameraPosition
(double x, double y, double z, String units, boolean immediate) Component-wise version ofIScriptingInterface.setCameraPosition(double[], String, boolean)
.void
setCameraPosition
(List<?> vec) void
setCameraPosition
(List<?> vec, boolean immediate) void
setCameraPosition
(List<?> vec, String units) void
setCameraPosition
(List<Double> position, String units, boolean immediate) void
setCameraPositionAndFocus
(String focus, String other, double rotation, double solidAngle) Sets the focus and instantly moves the camera to a point in the line defined byfocus
-other
and rotatedrotation
degrees aroundfocus
using the camera up vector as a rotation axis.void
setCameraPositionAndFocus
(String focus, String other, long rotation, long solidAngle) void
setCameraPostion
(double[] vec) Sets the camera position to the given coordinates, in Km, equatorial system.void
setCameraRecorderFps
(double targetFps) void
setCameraRotationSpeed
(float speed) Changes the speed of the camera when it rotates around a focus.void
setCameraRotationSpeed
(int speed) void
setCameraSpeed
(float speed) Changes the speed multiplier of the camera and its acceleration.void
setCameraSpeed
(int speed) void
setCameraSpeedLimit
(int index) Sets the speed limit of the camera given an index.void
setCameraState
(double[] pos, double[] dir, double[] up) Sets the camera state (position, direction and up vector).void
setCameraState
(List<?> pos, List<?> dir, List<?> up) void
setCameraStateAndTime
(double[] pos, double[] dir, double[] up, long time) Sets the camera state (position, direction and up vector) plus the current time.void
setCameraStateAndTime
(List<?> pos, List<?> dir, List<?> up, long time) void
setCameraTrackingObject
(String objectName) Sets the camera to track the object with the given name.void
setCameraTurningSpeed
(float speed) Changes the turning speed of the camera.void
setCameraTurningSpeed
(int speed) void
setCameraUp
(double[] up) Sets the camera up vector to the given vector, in the internal reference system.void
setCameraUp
(double[] up, boolean immediate) Sets the camera up vector to the given vector, in the internal reference system.void
setCameraUp
(List<?> up) void
setCameraUp
(List<?> up, boolean immediate) void
setChromaticAberration
(float value) Sets the amount of chromatic aberration.void
setCinematicCamera
(boolean cinematic) Enables or disables the cinematic camera mode.void
setClosestCrosshairVisibility
(boolean visible) Sets the visibility of the closest object crosshair.void
setComponentTypeVisibility
(String key, boolean visible) Sets the component described by the given name visible or invisible.void
setContrastLevel
(double level) Sets the contrast level of the render system.void
setContrastLevel
(long level) void
setCrosshairVisibility
(boolean visible) Sets the visibility of all cross-hairs.void
setCubemapMode
(boolean state, String projection) Enables and disables the cubemap mode.void
setCubemapProjection
(String projection) Sets the cubemap projection to use.void
setCubemapResolution
(int resolution) Sets the resolution (width and height are the same) of each side of the frame buffers used to capture each of the 6 directions that go into the cubemap to construct the equirectangular image for the 360 mode.boolean
setDatasetHighlightAllVisible
(String dsName, boolean allVisible) Sets the 'all visible' property of datasets when highlighted.boolean
setDatasetHighlightSizeFactor
(String dsName, float sizeFactor) Sets the size increase factor of this dataset when highlighted.void
setDatasetPointSizeMultiplier
(String dsName, double multiplier) Sets the dataset point size multiplier.boolean
setDatasetTransformationMatrix
(String dsName, double[] matrix) Sets the given 4x4 matrix (in column-major order) as the transformation matrix to apply to all the data points in the dataset identified by the given name.void
setExposureToneMappingLevel
(double level) Sets the exposure level.void
setExposureToneMappingLevel
(long level) void
setFocusCrosshairVisibility
(boolean visible) Sets the visibility of the focus object crosshair.void
setForceDisplayLabel
(String name, boolean forceLabel) Forces the label to display for the given object, bypassing the solid angle requirements that are usually in place and determine label visibility.void
setFov
(float newFov) Changes the field of view of the camera.void
setFov
(int newFov) void
setFrameOutput
(boolean active) Activates or deactivates the image output system.void
setFrameOutputMode
(String screenshotMode) Sets the frame output mode.void
setGammaCorrectionLevel
(double level) Sets the gamma correction level.void
setGammaCorrectionLevel
(long level) void
setGuiPosition
(float x, float y) Moves the interface window to a new position.void
setGuiPosition
(float x, int y) void
setGuiPosition
(int x, float y) void
setGuiPosition
(int x, int y) void
setGuiScrollPosition
(float pixelY) Sets the vertical scroll position in the GUI.void
setGuiScrollPosition
(int pixelY) void
setHDRToneMappingType
(String type) Sets the high dynamic range tone mapping algorithm type.void
setHeadlineMessage
(String headline) Sets a headline message that will appear in a big font in the screen.void
setHomeCrosshairVisibility
(boolean visible) Sets the visibility of the home object crosshair.void
setHueLevel
(double level) Sets the hue level of the render system.void
setHueLevel
(long level) void
setIndexOfRefraction
(float ior) Sets index of refraction of celestial sphere in orthosphere view mode.void
setLabelColor
(String name, double[] color) Sets the label color of the object identified by the given name.void
setLabelColor
(String name, List<?> color) void
setLabelSizeFactor
(float factor) Sets the label size factor.void
setLabelSizeFactor
(int factor) void
setLensFlare
(boolean state) Enables or disables the lens flare effect.void
setLensFlare
(double strength) Sets the strength of the lens flare effect, in [0,1].void
setLimitFps
(double limitFps) Limits the frame rate of Gaia Sky.void
setLimitFps
(int limitFps) Limits the frame rate of Gaia Sky.void
setLineWidthFactor
(float factor) Sets the line width factor.void
setLineWidthFactor
(int factor) void
setMaximumSimulationTime
(double years) void
setMaximumSimulationTime
(long years) Sets the maximum simulation time allowed, in years.void
setMaximumSimulationTime
(Double years) void
setMaximumSimulationTime
(Integer years) void
setMaximumSimulationTime
(Long years) void
setMinimapVisibility
(boolean visible) Shows or hides the minimap.void
setMinStarOpacity
(float minOpacity) void
setMinStarOpacity
(int opacity) void
setMotionBlur
(boolean active) Enables or disables the camera motion blur effect.void
setMotionBlur
(double strength) Enables or disables the camera motion blur effect.void
setObjectCoordinatesProvider
(String name, IPythonCoordinatesProvider provider) Sets the coordinates provider for the object identified with the given name, if possible.void
setObjectPosition
(com.badlogic.ashley.core.Entity object, double[] position) Sets the internal position of the given entity object.void
setObjectPosition
(com.badlogic.ashley.core.Entity object, double[] position, String units) Sets the internal position of the given entity object.void
setObjectPosition
(com.badlogic.ashley.core.Entity object, List<?> position) void
setObjectPosition
(FocusView object, double[] position) Sets the internal position of the given entity object.void
setObjectPosition
(FocusView object, double[] position, String units) Sets the internal position of the given entity object.void
setObjectPosition
(FocusView object, List<?> position) void
setObjectPosition
(FocusView object, List<?> position, String units) void
setObjectPosition
(String name, double[] position) Sets the internal position of the object identified byname
.void
setObjectPosition
(String name, double[] position, String units) Sets the internal position of the object identified byname
.void
setObjectPosition
(String name, List<?> position) void
setObjectPosition
(String name, List<?> position, String units) boolean
setObjectQuaternionNlerpOrientation
(String name, String file) Sets the given quaternions file (CSV with times and quaternions) as the orientation provider for this object.boolean
setObjectQuaternionSlerpOrientation
(String name, String file) Sets the given quaternions file (CSV with times and quaternions) as the orientation provider for this object.void
setObjectSizeScaling
(com.badlogic.ashley.core.Entity object, double scalingFactor) void
setObjectSizeScaling
(String name, double scalingFactor) Sets the given size scaling factor to the object identified byname
.boolean
setObjectVisibility
(String name, boolean visible) Sets the visibility of a particular object.void
setOrbitCoordinatesScaling
(String name, double scalingFactor) Sets the given orbit coordinates scaling factor to the AbstractOrbitCoordinates identified byname
.void
setOrbitSolidAngleThreshold
(float angleDeg) Sets the solid angle below which orbits fade and disappear.void
setOrthosphereViewMode
(boolean state) Enables or disables the orthosphere view mode.void
setPanoramaMode
(boolean state) Enables or disables the panorama mode.void
setPlanetariumMode
(boolean state) Enables or disables the planetarium mode.void
setPointSize
(float size) Sets the base point size.void
setProjectionFov
(float newFov) Same asIScriptingInterface.setFov(float)
, but bypassing the restriction of an active projection in the slave (slaves that have an active projection do not accept fov modification events).void
setProjectionPitch
(float pitch) Sets the projection pitch angle (if this is a slave instance), in degrees.void
setProjectionRoll
(float roll) Sets the projection roll angle (if this is a slave instance), in degrees.void
setProjectionYaw
(float yaw) Sets the projection yaw angle (if this is a slave instance), in degrees.void
setProperMotionsArrowheads
(boolean arrowheadsEnabled) Sets whether to show arrowheads or not for the velocity vectors.void
setProperMotionsColorMode
(int mode) Sets the color mode of proper motion vectors.void
setProperMotionsLengthFactor
(float factor) Sets the length of the proper motion vectors, in [500,30000].void
setProperMotionsLengthFactor
(int factor) void
setProperMotionsMaxNumber
(long maxNumber) Sets the maximum number of proper motion vectors to add per star group.void
setProperMotionsNumberFactor
(float factor) Sets the number factor of proper motion vectors that are visible.void
setProperMotionsNumberFactor
(int factor) void
setReprojectionMode
(String mode) Sets the re-projection mode.void
setRotationCameraSpeed
(float speed) Changes the speed of the camera when it rotates around a focus.void
setRotationCameraSpeed
(int speed) void
setSaturationLevel
(double level) Sets the saturation level of the render system.void
setSaturationLevel
(long level) void
setScreenshotsMode
(String screenshotMode) Sets the screenshot mode.void
setSimulationPace
(double warp) Deprecated, useIScriptingInterface.setTimeWarp(double)
instead.void
setSimulationPace
(long warp) void
setSimulationTime
(int year, int month, int day, int hour, int min, int sec, int millisec) Sets the time of the application to the given time, in UTC.void
setSimulationTime
(long time) Sets the time of the application.void
setSmoothLodTransitions
(boolean value) Sets the value of smooth lod transitions, allowing or disallowing octant fade-ins of as they come into view.void
setStarBaseOpacity
(float opacity) Sets the base star opacity.void
setStarBrightness
(float brightness) Sets the star brightness value.void
setStarBrightness
(int brightness) void
setStarBrightnessPower
(float power) Sets the star brightness power profile value in [1.1, 0.9].void
setStarGlow
(boolean state) Enables or disables the stars glowing over objects.void
setStarGlowFactor
(float glowFactor) Sets the star glow factor level value.void
setStarGlowOverObjects
(boolean state) Enables or disables stars' light glowing and spilling over closer objects.void
setStarGroupBillboard
(boolean flag) Enable or disable the rendering of close stars as billboards.void
setStarGroupNearestNumber
(int n) Sets the number of nearest stars to be processed for each star group.void
setStarMinOpacity
(float minOpacity) Sets the minimum star opacity.void
setStarSize
(float size) Sets the size of the rasterized stars, in pixels.void
setStarSize
(int size) void
setStarTextureIndex
(int index) Sets the star texture index, in [1, 4]void
setStereoscopicMode
(boolean state) Enables and disables the stereoscopic mode.void
setStereoscopicProfile
(int index) Changes the stereoscopic profile.void
setSubheadMessage
(String subhead) Sets a subhead message that will appear in a small font below the headline.void
setTargetTime
(int year, int month, int day, int hour, int min, int sec, int millisec) Sets a time bookmark in the global clock that, when reached, the clock automatically stops.void
setTargetTime
(long ms) Sets a time bookmark in the global clock that, when reached, the clock automatically stops.void
setTimeWarp
(double warpFactor) Sets the simulation time warp factor.void
setTimeWarp
(long warp) void
setTurningCameraSpeed
(float speed) Changes the turning speed of the camera.void
setTurningCameraSpeed
(int speed) void
setUnfilteredProperMotionsNumberFactor
(float factor) void
setVisibility
(String key, boolean visible) boolean
showDataset
(String dsName) Shows (un-hides) the dataset identified by the given name, if it exists and is hiddenvoid
sleep
(float seconds) Sleeps for the given number of seconds in the application time (FPS), so if we are capturing frames and the frame rate is set to 30 FPS, the command sleep(1) will put the script to sleep for 30 frames.void
sleep
(int seconds) void
sleepFrames
(long frames) Sleeps for a number of frames.void
Starts recording the camera path to an auto-generated file in the default camera directory.void
startRecordingCameraPath
(String fileName) Starts recording a camera path with the given filename.void
Starts the simulation.void
Stops the current camera recording.void
Stops the simulation time.void
Alias toIScriptingInterface.saveScreenshot()
.void
timeTransition
(int year, int month, int day, int hour, int min, int sec, int milliseconds, double durationSeconds, String smoothType, double smoothFactor, boolean sync) Creates a time transition from the current time to the given time (year, month, day, hour, minute, second, millisecond).void
unparkRunnable
(String id) Removes the runnable with the given id, if any.void
Unsets the target time bookmark from the global clock, if any.boolean
Blocks the script until the focus is the object indicated by the name.void
Blocks the execution until the Enter key is pressed.void
Blocks the execution until any kind of input (keyboard, mouse, etc.) is received.void
waitForInput
(int keyCode) Blocks the execution until the given key or button is pressed.
-
Constructor Details
-
EventScriptingInterface
public EventScriptingInterface(com.badlogic.gdx.assets.AssetManager manager, CatalogManager catalogManager)
-
-
Method Details
-
activateRealTimeFrame
public void activateRealTimeFrame()Description copied from interface:IScriptingInterface
Sets the current time frame to real time. All the commands executed after this command becomes active will be in the real time frame (clock ticks).- Specified by:
activateRealTimeFrame
in interfaceIScriptingInterface
-
activateSimulationTimeFrame
public void activateSimulationTimeFrame()Description copied from interface:IScriptingInterface
Sets the current time frame to simulation time. All the commands executed after this command becomes active will be in the simulation time frame (simulation clock in the app).- Specified by:
activateSimulationTimeFrame
in interfaceIScriptingInterface
-
displayPopupNotification
Description copied from interface:IScriptingInterface
Displays a popup notification on the screen for the default duration.- Specified by:
displayPopupNotification
in interfaceIScriptingInterface
- Parameters:
message
- The message text.
-
displayPopupNotification
Description copied from interface:IScriptingInterface
Displays a popup notification on the screen for the given duration.- Specified by:
displayPopupNotification
in interfaceIScriptingInterface
- Parameters:
message
- The message text.duration
- The duration in seconds until the notification is removed.
-
displayPopupNotification
-
setHeadlineMessage
Description copied from interface:IScriptingInterface
Sets a headline message that will appear in a big font in the screen.- Specified by:
setHeadlineMessage
in interfaceIScriptingInterface
- Parameters:
headline
- The headline text.
-
setSubheadMessage
Description copied from interface:IScriptingInterface
Sets a subhead message that will appear in a small font below the headline.- Specified by:
setSubheadMessage
in interfaceIScriptingInterface
- Parameters:
subhead
- The subhead text.
-
clearHeadlineMessage
public void clearHeadlineMessage()Description copied from interface:IScriptingInterface
Clears the headline message.- Specified by:
clearHeadlineMessage
in interfaceIScriptingInterface
-
clearSubheadMessage
public void clearSubheadMessage()Description copied from interface:IScriptingInterface
Clears the subhead message.- Specified by:
clearSubheadMessage
in interfaceIScriptingInterface
-
clearAllMessages
public void clearAllMessages()Description copied from interface:IScriptingInterface
Clears both the subhead and the headline messages.- Specified by:
clearAllMessages
in interfaceIScriptingInterface
-
disableInput
public void disableInput()Description copied from interface:IScriptingInterface
Disables all input events from mouse, keyboard, touchscreen, etc.- Specified by:
disableInput
in interfaceIScriptingInterface
-
enableInput
public void enableInput()Description copied from interface:IScriptingInterface
Enables all input events.- Specified by:
enableInput
in interfaceIScriptingInterface
-
setCinematicCamera
public void setCinematicCamera(boolean cinematic) Description copied from interface:IScriptingInterface
Enables or disables the cinematic camera mode.- Specified by:
setCinematicCamera
in interfaceIScriptingInterface
- Parameters:
cinematic
- Whether to enable or disable the cinematic mode.
-
setCameraFocus
Description copied from interface:IScriptingInterface
Sets the camera in focus mode with the focus object that bears the givenfocusName
. It returns immediately, so it does not wait for the camera direction to point to the focus.- Specified by:
setCameraFocus
in interfaceIScriptingInterface
- Parameters:
focusName
- The name of the new focus object.
-
setCameraFocus
Description copied from interface:IScriptingInterface
Sets the camera in focus mode with the focus object that bears the givenfocusName
. The amount of time to block and wait for the camera to face the focus can also be specified inwaitTimeSeconds
.- Specified by:
setCameraFocus
in interfaceIScriptingInterface
- Parameters:
focusName
- The name of the new focus object.waitTimeSeconds
- Maximum time in seconds to wait for the camera to face the focus. If negative, we wait indefinitely.
-
setCameraFocus
-
setCameraFocusInstant
Description copied from interface:IScriptingInterface
Sets the camera in focus mode with the given focus object. It also instantly sets the camera direction vector to point towards the focus.- Specified by:
setCameraFocusInstant
in interfaceIScriptingInterface
- Parameters:
focusName
- The name of the new focus object.
-
setCameraFocusInstantAndGo
Description copied from interface:IScriptingInterface
Sets the camera in focus mode with the given focus object and instantly moves the camera next to the focus object.- Specified by:
setCameraFocusInstantAndGo
in interfaceIScriptingInterface
- Parameters:
focusName
- The name of the new focus object.
-
setCameraFocusInstantAndGo
-
setCameraLock
public void setCameraLock(boolean lock) Description copied from interface:IScriptingInterface
Activates or deactivates the camera lock to the focus reference system when in focus mode.- Specified by:
setCameraLock
in interfaceIScriptingInterface
- Parameters:
lock
- Activate or deactivate the lock.
-
setCameraCenterFocus
public void setCameraCenterFocus(boolean centerFocus) Description copied from interface:IScriptingInterface
Whether to look for the focus constantly when in focus mode and center it in the view or whether the view must be free. Use True to center the focus (default behaviour) and False to set it to a free view.- Specified by:
setCameraCenterFocus
in interfaceIScriptingInterface
- Parameters:
centerFocus
- Whether to center the focus or not.
-
setCameraFree
public void setCameraFree()Description copied from interface:IScriptingInterface
Sets the camera in free mode.- Specified by:
setCameraFree
in interfaceIScriptingInterface
-
setCameraPostion
public void setCameraPostion(double[] vec) Description copied from interface:IScriptingInterface
Sets the camera position to the given coordinates, in Km, equatorial system.- Specified by:
setCameraPostion
in interfaceIScriptingInterface
- Parameters:
vec
- Vector of three components in internal coordinates and Km.
-
setCameraPosition
public void setCameraPosition(double x, double y, double z) Description copied from interface:IScriptingInterface
Component-wise version ofIScriptingInterface.setCameraPosition(double[])
.- Specified by:
setCameraPosition
in interfaceIScriptingInterface
-
setCameraPosition
Description copied from interface:IScriptingInterface
Component-wise version ofIScriptingInterface.setCameraPosition(double[], String)
.- Specified by:
setCameraPosition
in interfaceIScriptingInterface
-
setCameraPosition
public void setCameraPosition(double x, double y, double z, boolean immediate) Description copied from interface:IScriptingInterface
Component-wise version ofIScriptingInterface.setCameraPosition(double[], boolean)
.- Specified by:
setCameraPosition
in interfaceIScriptingInterface
-
setCameraPosition
Description copied from interface:IScriptingInterface
Component-wise version ofIScriptingInterface.setCameraPosition(double[], String, boolean)
.- Specified by:
setCameraPosition
in interfaceIScriptingInterface
-
setCameraPosition
-
setCameraPosition
public void setCameraPosition(double[] position, boolean immediate) Description copied from interface:IScriptingInterface
Sets the camera position to the given coordinates, in the internal reference system and kilometres. Theimmediate
parameter enables setting the camera state immediately without waiting for the possible current update operation to finish. Set this to true if you run this function from within a parked runnable.- Specified by:
setCameraPosition
in interfaceIScriptingInterface
- Parameters:
position
- Vector of three components in internal coordinates and Km.immediate
- Whether to apply the changes immediately, or wait for the next frame.
-
setCameraPosition
Description copied from interface:IScriptingInterface
Sets the camera position to the given coordinates, in the internal reference system and in the requested units. Theimmediate
parameter enables setting the camera state immediately without waiting for the possible current update operation to finish. Set this to true if you run this function from within a parked runnable.- Specified by:
setCameraPosition
in interfaceIScriptingInterface
- Parameters:
position
- Vector of three components in internal coordinates and the requested units.units
- The distance units to use. One of "m", "km", "au", "ly", "pc", "internal".immediate
- Whether to apply the changes immediately, or wait for the next frame.
-
setCameraPosition
-
getCameraPosition
public double[] getCameraPosition()Description copied from interface:IScriptingInterface
Gets the current camera position, in km.- Specified by:
getCameraPosition
in interfaceIScriptingInterface
- Returns:
- The camera position coordinates in the internal reference system, in km.
-
getCameraPosition
Description copied from interface:IScriptingInterface
Gets the current camera position, in the requested units.- Specified by:
getCameraPosition
in interfaceIScriptingInterface
- Parameters:
units
- The distance units to use. One of "m", "km", "au", "ly", "pc", "internal".- Returns:
- The camera position coordinates in the internal reference system and in the requested units.
-
setCameraPosition
public void setCameraPosition(double[] position) Description copied from interface:IScriptingInterface
Sets the camera position to the given coordinates, in the internal reference system and kilometres. The default behavior of this method posts a runnable to update the camera after the current frame. If you need to call this method from within a parked runnable, useIScriptingInterface.setCameraPosition(double[], boolean)
, with the boolean set totrue
.- Specified by:
setCameraPosition
in interfaceIScriptingInterface
- Parameters:
position
- Vector of three components in internal coordinates and Km.
-
setCameraPosition
Description copied from interface:IScriptingInterface
Sets the camera position to the given coordinates, in the internal reference system and the given units. The default behavior of this method posts a runnable to update the camera after the current frame. If you need to call this method from within a parked runnable, useIScriptingInterface.setCameraPosition(double[], boolean)
, with the boolean set totrue
.- Specified by:
setCameraPosition
in interfaceIScriptingInterface
- Parameters:
position
- Vector of three components in internal coordinates and the given units.units
- The distance units to use. One of "m", "km", "au", "ly", "pc", "internal".
-
setCameraPosition
-
setCameraPosition
-
setCameraDirection
-
setCameraDirection
public void setCameraDirection(double[] direction, boolean immediate) Description copied from interface:IScriptingInterface
Sets the camera direction vector to the given vector, in the internal reference system. Theimmediate
parameter enables setting the camera state immediately without waiting for the possible current update operation to finish. Set this to true if you run this function from within a parked runnable.- Specified by:
setCameraDirection
in interfaceIScriptingInterface
- Parameters:
direction
- The direction vector in the internal reference system.immediate
- Whether to apply the changes immediately, or wait for the next frame.
-
getCameraDirection
public double[] getCameraDirection()Description copied from interface:IScriptingInterface
Gets the current camera direction vector.- Specified by:
getCameraDirection
in interfaceIScriptingInterface
- Returns:
- The camera direction vector in the internal reference system.
-
setCameraDirection
public void setCameraDirection(double[] direction) Description copied from interface:IScriptingInterface
Sets the camera direction vector to the given vector, in the internal reference system. You can convert from spherical coordinates usingIScriptingInterface.equatorialCartesianToInternalCartesian(double[], double)
,IScriptingInterface.galacticToInternalCartesian(double, double, double)
andIScriptingInterface.eclipticToInternalCartesian(double, double, double)
. The default behavior of this method posts a runnable to update the camera after the current frame. If you need to call this method from within a parked runnable, useIScriptingInterface.setCameraDirection(double[], boolean)
, with the boolean set totrue
.- Specified by:
setCameraDirection
in interfaceIScriptingInterface
- Parameters:
direction
- The direction vector in equatorial cartesian coordinates.
-
setCameraDirection
-
setCameraUp
-
setCameraUp
public void setCameraUp(double[] up, boolean immediate) Description copied from interface:IScriptingInterface
Sets the camera up vector to the given vector, in the internal reference system. Theimmediate
parameter enables setting the camera state immediately without waiting for the possible current update operation to finish. Set this to true if you run this function from within a parked runnable.- Specified by:
setCameraUp
in interfaceIScriptingInterface
- Parameters:
up
- The up vector in equatorial coordinates.immediate
- Whether to apply the changes immediately, or wait for the next frame.
-
getCameraUp
public double[] getCameraUp()Description copied from interface:IScriptingInterface
Gets the current camera up vector.- Specified by:
getCameraUp
in interfaceIScriptingInterface
- Returns:
- The camera up vector in the internal reference system.
-
setCameraUp
public void setCameraUp(double[] up) Description copied from interface:IScriptingInterface
Sets the camera up vector to the given vector, in the internal reference system. The default behavior of this method posts a runnable to update the camera after the current frame. If you need to call this method from within a parked runnable, useIScriptingInterface.setCameraUp(double[], boolean)
, with the boolean set totrue
.- Specified by:
setCameraUp
in interfaceIScriptingInterface
- Parameters:
up
- The up vector in equatorial coordinates.
-
setCameraOrientationQuaternion
public void setCameraOrientationQuaternion(double[] quaternion) Description copied from interface:IScriptingInterface
Sets the camera orientation to the given quaternion, given as an array of [x, y, z, w].- Specified by:
setCameraOrientationQuaternion
in interfaceIScriptingInterface
- Parameters:
quaternion
- The 4-component quaternion.
-
setCameraOrientationQuaternion
-
getCameraOrientationQuaternion
public double[] getCameraOrientationQuaternion()Description copied from interface:IScriptingInterface
Gets the current camera orientation quaternion.- Specified by:
getCameraOrientationQuaternion
in interfaceIScriptingInterface
- Returns:
- The current camera orientation quaternion, as an array of [x, y, z, w].
-
setCameraUp
-
setCameraPositionAndFocus
public void setCameraPositionAndFocus(String focus, String other, double rotation, double solidAngle) Description copied from interface:IScriptingInterface
Sets the focus and instantly moves the camera to a point in the line defined byfocus
-other
and rotatedrotation
degrees aroundfocus
using the camera up vector as a rotation axis.- Specified by:
setCameraPositionAndFocus
in interfaceIScriptingInterface
- Parameters:
focus
- The name of the focus object.other
- The name of the other object, to the fine a line from this to focus. Usually a light source.rotation
- The rotation angle, in degrees.solidAngle
- The target solid angle which determines the distance, in degrees.
-
setCameraPositionAndFocus
-
pointAtSkyCoordinate
public void pointAtSkyCoordinate(double ra, double dec) Description copied from interface:IScriptingInterface
Sets the camera in free mode and points it to the given coordinates in equatorial system.- Specified by:
pointAtSkyCoordinate
in interfaceIScriptingInterface
- Parameters:
ra
- Right ascension in degrees.dec
- Declination in degrees.
-
pointAtSkyCoordinate
public void pointAtSkyCoordinate(long ra, long dec) -
getCameraSpeed
public double getCameraSpeed()Description copied from interface:IScriptingInterface
Gets the current physical speed of the camera in km/h.- Specified by:
getCameraSpeed
in interfaceIScriptingInterface
- Returns:
- The current speed of the camera in km/h.
-
setCameraSpeed
public void setCameraSpeed(float speed) Description copied from interface:IScriptingInterface
Changes the speed multiplier of the camera and its acceleration.- Specified by:
setCameraSpeed
in interfaceIScriptingInterface
- Parameters:
speed
- The new speed, from 0 to 100.
-
setCameraSpeed
public void setCameraSpeed(int speed) -
setCameraRotationSpeed
public void setCameraRotationSpeed(float speed) Description copied from interface:IScriptingInterface
Changes the speed of the camera when it rotates around a focus.- Specified by:
setCameraRotationSpeed
in interfaceIScriptingInterface
- Parameters:
speed
- The new rotation speed in [0,100]
-
setCameraRotationSpeed
public void setCameraRotationSpeed(int speed) -
setRotationCameraSpeed
public void setRotationCameraSpeed(float speed) Description copied from interface:IScriptingInterface
Changes the speed of the camera when it rotates around a focus.- Specified by:
setRotationCameraSpeed
in interfaceIScriptingInterface
- Parameters:
speed
- The new rotation speed in [0,100]
-
setRotationCameraSpeed
public void setRotationCameraSpeed(int speed) -
setCameraTurningSpeed
public void setCameraTurningSpeed(float speed) Description copied from interface:IScriptingInterface
Changes the turning speed of the camera.- Specified by:
setCameraTurningSpeed
in interfaceIScriptingInterface
- Parameters:
speed
- The new turning speed, from 1 to 100.
-
setCameraTurningSpeed
public void setCameraTurningSpeed(int speed) -
setTurningCameraSpeed
public void setTurningCameraSpeed(float speed) Description copied from interface:IScriptingInterface
Changes the turning speed of the camera.- Specified by:
setTurningCameraSpeed
in interfaceIScriptingInterface
- Parameters:
speed
- The new turning speed, from 1 to 100.
-
setTurningCameraSpeed
public void setTurningCameraSpeed(int speed) -
setCameraSpeedLimit
public void setCameraSpeedLimit(int index) Description copied from interface:IScriptingInterface
Sets the speed limit of the camera given an index. The index corresponds to the following:- 0 - 1 Km/h
- 1 - 10 Km/h
- 2 - 100 Km/h
- 3 - 1000 Km/h
- 4 - 1 Km/s
- 5 - 10 Km/s
- 6 - 100 Km/s
- 7 - 1000 Km/s
- 8 - 0.01 c
- 9 - 0.1 c
- 10 - 0.5 c
- 11 - 0.8 c
- 12 - 0.9 c
- 13 - 0.99 c
- 14 - 0.99999 c
- 15 - 1 c
- 16 - 2 c
- 17 - 10 c
- 18 - 1e3 c
- 19 - 1 AU/s
- 20 - 10 AU/s
- 21 - 1000 AU/s
- 22 - 10000 AU/s
- 23 - 1 pc/s
- 24 - 2 pc/s
- 25 - 10 pc/s
- 26 - 1000 pc/s
- 27 - unlimited
- Specified by:
setCameraSpeedLimit
in interfaceIScriptingInterface
- Parameters:
index
- The index of the top speed.
-
setCameraTrackingObject
Description copied from interface:IScriptingInterface
Sets the camera to track the object with the given name. In this mode, the position of the camera is still dependent on the focus object (if any), but its direction points to the tracking object.- Specified by:
setCameraTrackingObject
in interfaceIScriptingInterface
- Parameters:
objectName
- The name of the new tracking object.
-
removeCameraTrackingObject
public void removeCameraTrackingObject()Description copied from interface:IScriptingInterface
Removes the tracking object from the camera, if any.- Specified by:
removeCameraTrackingObject
in interfaceIScriptingInterface
-
setCameraOrientationLock
public void setCameraOrientationLock(boolean lock) Description copied from interface:IScriptingInterface
Locks or unlocks the orientation of the camera to the focus object's rotation.- Specified by:
setCameraOrientationLock
in interfaceIScriptingInterface
- Parameters:
lock
- Whether to lock or unlock the camera orientation to the focus.
-
cameraForward
public void cameraForward(double cameraForward) Description copied from interface:IScriptingInterface
Adds a forward movement to the camera with the given value. If value is negative the movement is backwards.- Specified by:
cameraForward
in interfaceIScriptingInterface
- Parameters:
cameraForward
- The magnitude of the movement, between -1 and 1.
-
cameraForward
public void cameraForward(long value) -
cameraRotate
public void cameraRotate(double deltaX, double deltaY) Description copied from interface:IScriptingInterface
Adds a rotation movement to the camera around the current focus, or a pitch/yaw if in free mode.If the camera is not using the cinematic behaviour (
IScriptingInterface.setCinematicCamera(boolean)
, the rotation movement will not be permanent. Use the cinematic behaviour to have the camera continue to rotate around the focus.- Specified by:
cameraRotate
in interfaceIScriptingInterface
- Parameters:
deltaX
- The x component, between 0 and 1. Positive is right and negative is left.deltaY
- The y component, between 0 and 1. Positive is up and negative is down.
-
cameraRotate
public void cameraRotate(double deltaX, long deltaY) -
cameraRotate
public void cameraRotate(long deltaX, double deltaY) -
cameraRoll
public void cameraRoll(double roll) Description copied from interface:IScriptingInterface
Adds a roll force to the camera.- Specified by:
cameraRoll
in interfaceIScriptingInterface
- Parameters:
roll
- The intensity of the roll.
-
cameraRoll
public void cameraRoll(long roll) -
cameraTurn
public void cameraTurn(double deltaX, double deltaY) Description copied from interface:IScriptingInterface
Adds a turn force to the camera (yaw and/or pitch). If the camera is in focus mode, it permanently deviates the line of sight from the focus until centered again. If the camera is not using the cinematic behaviour (IScriptingInterface.setCinematicCamera(boolean)
, the turn will not be permanent. Use the cinematic behaviour to have the turn persist in time.- Specified by:
cameraTurn
in interfaceIScriptingInterface
- Parameters:
deltaX
- The x component, between 0 and 1. Positive is right and negative is left.deltaY
- The y component, between 0 and 1. Positive is up and negative is down.
-
cameraTurn
public void cameraTurn(double deltaX, long deltaY) -
cameraTurn
public void cameraTurn(long deltaX, double deltaY) -
cameraTurn
public void cameraTurn(long deltaX, long deltaY) -
cameraYaw
public void cameraYaw(double amount) Description copied from interface:IScriptingInterface
Adds a yaw to the camera. Same asIScriptingInterface.cameraTurn(double, double)
with deltaY set to zero.- Specified by:
cameraYaw
in interfaceIScriptingInterface
- Parameters:
amount
- The amount.
-
cameraYaw
public void cameraYaw(long amount) -
cameraPitch
public void cameraPitch(double amount) Description copied from interface:IScriptingInterface
Adds a pitch to the camera. Same asIScriptingInterface.cameraTurn(double, double)
with deltaX set to zero.- Specified by:
cameraPitch
in interfaceIScriptingInterface
- Parameters:
amount
- The amount.
-
cameraPitch
public void cameraPitch(long amount) -
cameraStop
public void cameraStop()Description copied from interface:IScriptingInterface
Stops all camera motion.- Specified by:
cameraStop
in interfaceIScriptingInterface
-
cameraCenter
public void cameraCenter()Description copied from interface:IScriptingInterface
Centers the camera to the focus, removing any deviation of the line of sight. Useful to center the focus object again after turning.- Specified by:
cameraCenter
in interfaceIScriptingInterface
-
getClosestObjectToCamera
Description copied from interface:IScriptingInterface
Returns the closest object to the camera in this instant as aIFocus
.- Specified by:
getClosestObjectToCamera
in interfaceIScriptingInterface
- Returns:
- The closest object to the camera.
-
setFov
public void setFov(float newFov) Description copied from interface:IScriptingInterface
Changes the field of view of the camera.- Specified by:
setFov
in interfaceIScriptingInterface
- Parameters:
newFov
- The new field of view value in degrees, betweenConstants.MIN_FOV
andConstants.MAX_FOV
.
-
setFov
public void setFov(int newFov) -
setVisibility
Description copied from interface:IScriptingInterface
- Specified by:
setVisibility
in interfaceIScriptingInterface
-
setComponentTypeVisibility
Description copied from interface:IScriptingInterface
Sets the component described by the given name visible or invisible.- Specified by:
setComponentTypeVisibility
in interfaceIScriptingInterface
- Parameters:
key
- The key of the component: "element.stars", "element.planets", "element.moons", etc. SeeComponentTypes.ComponentType
.visible
- The visible value.
-
getComponentTypeVisibility
Description copied from interface:IScriptingInterface
Gets the visibility of the component type described by the key. Examples of keys are "element.stars", "element.planets" or "element.moons". SeeComponentTypes.ComponentType
.- Specified by:
getComponentTypeVisibility
in interfaceIScriptingInterface
- Parameters:
key
- The key of the component type to query.- Returns:
- The visibility of the component type.
-
getObjectScreenCoordinates
Description copied from interface:IScriptingInterface
Projects the world space position of the given object to screen coordinates. It's the same as GLU gluProject with one small deviation: The viewport is assumed to span the whole screen. The screen coordinate system has its origin in the bottom left, with the y-axis pointing upwards and the x-axis pointing to the right. This makes it easily usable in conjunction with Batch and similar classes.
This call only works if Gaia Sky is using the simple perspective projection mode. It does not work with any of the following modes: panorama (with any of the projections), planetarium, orthosphere, stereoscopic, or any of the re-projection modes.
- Specified by:
getObjectScreenCoordinates
in interfaceIScriptingInterface
- Parameters:
name
- The name of the object to get the screen coordinates for.- Returns:
- An array with the x and y screen coordinates, in pixels, with the origin at the bottom-left. If the object with the given name does not exist, or it falls off-screen, it returns null.
-
setObjectVisibility
Description copied from interface:IScriptingInterface
Sets the visibility of a particular object. Use this method to hide individual objects. Changes to the individual object visibility are not persisted on restart.- Specified by:
setObjectVisibility
in interfaceIScriptingInterface
- Parameters:
name
- The name of the object. Must be an instance ofIVisibilitySwitch
.visible
- The visible status to set. Set to false in order to hide the object. True to make it visible.- Returns:
- True if the visibility was set successfully, false if there were errors.
-
getObjectVisibility
Description copied from interface:IScriptingInterface
Gets the visibility of a particular object.- Specified by:
getObjectVisibility
in interfaceIScriptingInterface
- Parameters:
name
- The name of the object. Must be an instance ofIVisibilitySwitch
.- Returns:
- The visibility status of the object, if it exists.
-
setObjectQuaternionSlerpOrientation
Description copied from interface:IScriptingInterface
Sets the given quaternions file (CSV with times and quaternions) as the orientation provider for this object. This call removes the previous orientation model from the object (either
RigidRotation
orAttitudeComponent
.The interpolation between quaternions is done using slerp (spherical linear interpolation).
- Specified by:
setObjectQuaternionSlerpOrientation
in interfaceIScriptingInterface
- Parameters:
name
- The name of the object. The object must already have anOrientation
component.file
- The file path. The file is a CSV where each line has the time (ISO-8601) and the x, y, z and w components of the quaternion for that time. For instance, a valid line would be "2018-04-01T15:20:15Z,0.9237,0.3728,0.0358,0.0795
".- Returns:
- True if the object was found and could be updated.
-
setObjectQuaternionNlerpOrientation
Description copied from interface:IScriptingInterface
Sets the given quaternions file (CSV with times and quaternions) as the orientation provider for this object. This call removes the previous orientation model from the object (either
RigidRotation
orAttitudeComponent
.The interpolation between quaternions is done using nlerp (normalized linear interpolation).
- Specified by:
setObjectQuaternionNlerpOrientation
in interfaceIScriptingInterface
- Parameters:
name
- The name of the object. The object must already have anOrientation
component.file
- The file path. The file is a CSV where each line has the time (ISO-8601) and the x, y, z and w components of the quaternion for that time. For instance, a valid line would be "2018-04-01T15:20:15Z,0.9237,0.3728,0.0358,0.0795
".- Returns:
- True if the object was found and could be updated.
-
setLabelSizeFactor
public void setLabelSizeFactor(float factor) Description copied from interface:IScriptingInterface
Sets the label size factor. The label size will be multiplied by this.- Specified by:
setLabelSizeFactor
in interfaceIScriptingInterface
- Parameters:
factor
- Factor inConstants.MIN_LABEL_SIZE
andConstants.MAX_LABEL_SIZE
.
-
setForceDisplayLabel
Description copied from interface:IScriptingInterface
Forces the label to display for the given object, bypassing the solid angle requirements that are usually in place and determine label visibility. This setting does not override the visibility of the object itself, or of the label visibility component element. Changes to the force display label flag are not persisted on restart. /*- Specified by:
setForceDisplayLabel
in interfaceIScriptingInterface
- Parameters:
name
- The object name.forceLabel
- Whether to force the label to render for this object or not.
-
setLabelColor
Description copied from interface:IScriptingInterface
Sets the label color of the object identified by the given name. The label color must be an array of RGBA values in [0,1].- Specified by:
setLabelColor
in interfaceIScriptingInterface
- Parameters:
name
- The object name.color
- The label color as an array of RGBA (red, green, blue, alpha) values in [0,1].
-
setLabelColor
-
getForceDisplayLabel
Description copied from interface:IScriptingInterface
Gets the value of the force display label flag for the object identified with the given name.- Specified by:
getForceDisplayLabel
in interfaceIScriptingInterface
- Parameters:
name
- The name of the object.- Returns:
- The value of the force display label flag of the object, if it exists.
-
setLabelSizeFactor
public void setLabelSizeFactor(int factor) -
setLineWidthFactor
public void setLineWidthFactor(float factor) Description copied from interface:IScriptingInterface
Sets the line width factor. The line width will be multiplied by this.- Specified by:
setLineWidthFactor
in interfaceIScriptingInterface
- Parameters:
factor
- Factor inConstants.MIN_LINE_WIDTH
andConstants.MAX_LINE_WIDTH
.
-
setLineWidthFactor
public void setLineWidthFactor(int factor) -
setProperMotionsNumberFactor
public void setProperMotionsNumberFactor(float factor) Description copied from interface:IScriptingInterface
Sets the number factor of proper motion vectors that are visible. In [1,100].- Specified by:
setProperMotionsNumberFactor
in interfaceIScriptingInterface
- Parameters:
factor
- Factor in [1,100].
-
setProperMotionsColorMode
public void setProperMotionsColorMode(int mode) Description copied from interface:IScriptingInterface
Sets the color mode of proper motion vectors.- Specified by:
setProperMotionsColorMode
in interfaceIScriptingInterface
- Parameters:
mode
- The color mode:- 0 - direction: the normalised cartesian velocity components XYZ are mapped to the color channels RGB.
- 1 - magnitude (speed): the magnitude of the velocity vector is mapped using a rainbow scheme (blue-green-yellow-red) with the color map limit at 100 Km/s.
- 2 - has radial velocity: blue for stars with radial velocity, red for stars without.
- 3 - redshift from Sun: blue stars have negative radial velocity (from the Sun), red stars have positive radial velocity (from the Sun). Blue is mapped to -100 Km/s, red is mapped to 100 Km/s.
- 4 - redshift from camera: blue stars have negative radial velocity (from the camera), red stars have positive radial velocity (from the camera). Blue is mapped to -100 Km/s, red is mapped to 100 Km/s.
- 5 - single color: same color for all velocity vectors.
-
setProperMotionsArrowheads
public void setProperMotionsArrowheads(boolean arrowheadsEnabled) Description copied from interface:IScriptingInterface
Sets whether to show arrowheads or not for the velocity vectors.- Specified by:
setProperMotionsArrowheads
in interfaceIScriptingInterface
- Parameters:
arrowheadsEnabled
- Whether to show the velocity vectors with arrowheads.
-
setProperMotionsNumberFactor
public void setProperMotionsNumberFactor(int factor) -
setUnfilteredProperMotionsNumberFactor
public void setUnfilteredProperMotionsNumberFactor(float factor) -
setProperMotionsLengthFactor
public void setProperMotionsLengthFactor(float factor) Description copied from interface:IScriptingInterface
Sets the length of the proper motion vectors, in [500,30000].- Specified by:
setProperMotionsLengthFactor
in interfaceIScriptingInterface
- Parameters:
factor
- Factor in [500,30000].
-
setProperMotionsLengthFactor
public void setProperMotionsLengthFactor(int factor) -
getProperMotionsMaxNumber
public long getProperMotionsMaxNumber()Description copied from interface:IScriptingInterface
Returns the current maximum number of velocity vectors per star group.- Specified by:
getProperMotionsMaxNumber
in interfaceIScriptingInterface
- Returns:
- Max number of velocity vectors per star group.
-
setProperMotionsMaxNumber
public void setProperMotionsMaxNumber(long maxNumber) Description copied from interface:IScriptingInterface
Sets the maximum number of proper motion vectors to add per star group.- Specified by:
setProperMotionsMaxNumber
in interfaceIScriptingInterface
- Parameters:
maxNumber
- The maximum number of proper motion vectors per star group.
-
setCrosshairVisibility
public void setCrosshairVisibility(boolean visible) Description copied from interface:IScriptingInterface
Sets the visibility of all cross-hairs.- Specified by:
setCrosshairVisibility
in interfaceIScriptingInterface
- Parameters:
visible
- The visibility state, which applies to all cross-hairs.
-
setFocusCrosshairVisibility
public void setFocusCrosshairVisibility(boolean visible) Description copied from interface:IScriptingInterface
Sets the visibility of the focus object crosshair.- Specified by:
setFocusCrosshairVisibility
in interfaceIScriptingInterface
- Parameters:
visible
- The visibility state.
-
setClosestCrosshairVisibility
public void setClosestCrosshairVisibility(boolean visible) Description copied from interface:IScriptingInterface
Sets the visibility of the closest object crosshair.- Specified by:
setClosestCrosshairVisibility
in interfaceIScriptingInterface
- Parameters:
visible
- The visibility state.
-
setHomeCrosshairVisibility
public void setHomeCrosshairVisibility(boolean visible) Description copied from interface:IScriptingInterface
Sets the visibility of the home object crosshair.- Specified by:
setHomeCrosshairVisibility
in interfaceIScriptingInterface
- Parameters:
visible
- The visibility state.
-
setMinimapVisibility
public void setMinimapVisibility(boolean visible) Description copied from interface:IScriptingInterface
Shows or hides the minimap.- Specified by:
setMinimapVisibility
in interfaceIScriptingInterface
- Parameters:
visible
- The visibility state.
-
setAmbientLight
public void setAmbientLight(float ambientLight) Description copied from interface:IScriptingInterface
Sets the ambient light to a certain value.- Specified by:
setAmbientLight
in interfaceIScriptingInterface
- Parameters:
ambientLight
- The value of the ambient light in [0,1].
-
setAmbientLight
public void setAmbientLight(int value) -
setSimulationTime
public void setSimulationTime(int year, int month, int day, int hour, int min, int sec, int millisec) Description copied from interface:IScriptingInterface
Sets the time of the application to the given time, in UTC.- Specified by:
setSimulationTime
in interfaceIScriptingInterface
- Parameters:
year
- The year to represent.month
- The month-of-year to represent, from 1 (January) to 12 (December).day
- The day-of-month to represent, from 1 to 31.hour
- The hour-of-day to represent, from 0 to 23.min
- The minute-of-hour to represent, from 0 to 59.sec
- The second-of-minute to represent, from 0 to 59.millisec
- The millisecond-of-second, from 0 to 999.
-
getSimulationTime
public long getSimulationTime()Description copied from interface:IScriptingInterface
Returns the current simulation time as the number of milliseconds since 1970-01-01T00:00:00Z (UTC).- Specified by:
getSimulationTime
in interfaceIScriptingInterface
- Returns:
- Number of milliseconds since the epoch (Jan 1, 1970 00:00:00 UTC).
-
setSimulationTime
public void setSimulationTime(long time) Description copied from interface:IScriptingInterface
Sets the time of the application. The long value represents specified number of milliseconds since the standard base time known as "the epoch", namely January 1, 1970, 00:00:00 GMT.- Specified by:
setSimulationTime
in interfaceIScriptingInterface
- Parameters:
time
- Number of milliseconds since the epoch (Jan 1, 1970).
-
getSimulationTimeArr
public int[] getSimulationTimeArr()Description copied from interface:IScriptingInterface
Returns the current UTC simulation time in an array.- Specified by:
getSimulationTimeArr
in interfaceIScriptingInterface
- Returns:
- The current simulation time in an array with the given indices.
- 0 - The year.
- 1 - The month, from 1 (January) to 12 (December).
- 2 - The day-of-month, from 1 to 31.
- 3 - The hour-of-day, from 0 to 23.
- 4 - The minute-of-hour, from 0 to 59.
- 5 - The second-of-minute, from 0 to 59.
- 6 - The millisecond-of-second, from 0 to 999.
-
startSimulationTime
public void startSimulationTime()Description copied from interface:IScriptingInterface
Starts the simulation.- Specified by:
startSimulationTime
in interfaceIScriptingInterface
-
stopSimulationTime
public void stopSimulationTime()Description copied from interface:IScriptingInterface
Stops the simulation time.- Specified by:
stopSimulationTime
in interfaceIScriptingInterface
-
isSimulationTimeOn
public boolean isSimulationTimeOn()Description copied from interface:IScriptingInterface
Queries whether the time is on or not.- Specified by:
isSimulationTimeOn
in interfaceIScriptingInterface
- Returns:
- True if the time is on, false otherwise.
-
setSimulationPace
public void setSimulationPace(double warp) Description copied from interface:IScriptingInterface
Deprecated, useIScriptingInterface.setTimeWarp(double)
instead.- Specified by:
setSimulationPace
in interfaceIScriptingInterface
-
setSimulationPace
public void setSimulationPace(long warp) -
setTimeWarp
public void setTimeWarp(double warpFactor) Description copied from interface:IScriptingInterface
Sets the simulation time warp factor. Positive values make time advance forward, while negative values make time run backwards. A warp factor of 1 sets a real time pace to the simulation time.- Specified by:
setTimeWarp
in interfaceIScriptingInterface
- Parameters:
warpFactor
- The warp as a factor. A value of 2.0 sets the Gaia Sky time to be twice as fast as real world time.
-
setTimeWarp
public void setTimeWarp(long warp) -
setTargetTime
public void setTargetTime(long ms) Description copied from interface:IScriptingInterface
Sets a time bookmark in the global clock that, when reached, the clock automatically stops.- Specified by:
setTargetTime
in interfaceIScriptingInterface
- Parameters:
ms
- The time as the number of milliseconds since the epoch (Jan 1, 1970).
-
setTargetTime
public void setTargetTime(int year, int month, int day, int hour, int min, int sec, int millisec) Description copied from interface:IScriptingInterface
Sets a time bookmark in the global clock that, when reached, the clock automatically stops.- Specified by:
setTargetTime
in interfaceIScriptingInterface
- Parameters:
year
- The year to represent.month
- The month-of-year to represent, from 1 (January) to 12 (December).day
- The day-of-month to represent, from 1 to 31.hour
- The hour-of-day to represent, from 0 to 23.min
- The minute-of-hour to represent, from 0 to 59.sec
- The second-of-minute to represent, from 0 to 59.millisec
- The millisecond-of-second, from 0 to 999.
-
unsetTargetTime
public void unsetTargetTime()Description copied from interface:IScriptingInterface
Unsets the target time bookmark from the global clock, if any.- Specified by:
unsetTargetTime
in interfaceIScriptingInterface
-
setStarBrightnessPower
public void setStarBrightnessPower(float power) Description copied from interface:IScriptingInterface
Sets the star brightness power profile value in [1.1, 0.9]. Default value is 1. The power is applied to the star solid angle (from camera), before clamping, as sa = pow(sa, r).- Specified by:
setStarBrightnessPower
in interfaceIScriptingInterface
- Parameters:
power
- The power value in [0, 100].
-
setStarGlowFactor
public void setStarGlowFactor(float glowFactor) Description copied from interface:IScriptingInterface
Sets the star glow factor level value. This controls the amount of glow light when the camera is close to stars. Must be betweenConstants.MIN_STAR_GLOW_FACTOR
andConstants.MAX_STAR_GLOW_FACTOR
. Default is 0.06.- Specified by:
setStarGlowFactor
in interfaceIScriptingInterface
- Parameters:
glowFactor
- The new glow factor value.
-
getStarBrightness
public float getStarBrightness()Description copied from interface:IScriptingInterface
Gets the star brightness value.- Specified by:
getStarBrightness
in interfaceIScriptingInterface
- Returns:
- The brightness value, between 0 and 100.
-
setStarBrightness
public void setStarBrightness(float brightness) Description copied from interface:IScriptingInterface
Sets the star brightness value.- Specified by:
setStarBrightness
in interfaceIScriptingInterface
- Parameters:
brightness
- The brightness value, between 0 and 100.
-
setStarBrightness
public void setStarBrightness(int brightness) -
getPointSize
public float getPointSize()Description copied from interface:IScriptingInterface
Gets the current point size value in pixels.- Specified by:
getPointSize
in interfaceIScriptingInterface
- Returns:
- The size value, in pixels.
-
getStarSize
public float getStarSize()Description copied from interface:IScriptingInterface
Gets the current star size value in pixels.- Specified by:
getStarSize
in interfaceIScriptingInterface
- Returns:
- The size value, in pixels.
-
setPointSize
public void setPointSize(float size) Description copied from interface:IScriptingInterface
Sets the base point size.- Specified by:
setPointSize
in interfaceIScriptingInterface
- Parameters:
size
- The size value, betweenConstants.MIN_STAR_POINT_SIZE
andConstants.MAX_STAR_POINT_SIZE
.
-
setStarSize
public void setStarSize(float size) Description copied from interface:IScriptingInterface
Sets the size of the rasterized stars, in pixels.- Specified by:
setStarSize
in interfaceIScriptingInterface
- Parameters:
size
- The size value in pixels, betweenConstants.MIN_STAR_POINT_SIZE
andConstants.MAX_STAR_POINT_SIZE
.
-
setStarSize
public void setStarSize(int size) -
getStarBaseOpacity
public float getStarBaseOpacity()Description copied from interface:IScriptingInterface
Gets the base star opacity.- Specified by:
getStarBaseOpacity
in interfaceIScriptingInterface
- Returns:
- The base opacity value.
-
getStarMinOpacity
public float getStarMinOpacity()Description copied from interface:IScriptingInterface
Gets the minimum star opacity.- Specified by:
getStarMinOpacity
in interfaceIScriptingInterface
- Returns:
- The minimum opacity value.
-
setStarBaseOpacity
public void setStarBaseOpacity(float opacity) Description copied from interface:IScriptingInterface
Sets the base star opacity.- Specified by:
setStarBaseOpacity
in interfaceIScriptingInterface
- Parameters:
opacity
- The base opacity value, betweenConstants.MIN_STAR_MIN_OPACITY
andConstants.MAX_STAR_MIN_OPACITY
.
-
setStarMinOpacity
public void setStarMinOpacity(float minOpacity) Description copied from interface:IScriptingInterface
Sets the minimum star opacity.- Specified by:
setStarMinOpacity
in interfaceIScriptingInterface
- Parameters:
minOpacity
- The minimum opacity value, betweenConstants.MIN_STAR_MIN_OPACITY
andConstants.MAX_STAR_MIN_OPACITY
.
-
getMinStarOpacity
public float getMinStarOpacity() -
setMinStarOpacity
public void setMinStarOpacity(float minOpacity) -
setMinStarOpacity
public void setMinStarOpacity(int opacity) -
setStarTextureIndex
public void setStarTextureIndex(int index) Description copied from interface:IScriptingInterface
Sets the star texture index, in [1, 4]1 - horizontal spike 2 - god rays 3 - horizontal and vertical spikes 4 - simple radial profile
- Specified by:
setStarTextureIndex
in interfaceIScriptingInterface
- Parameters:
index
- The new star texture index
-
setStarGroupNearestNumber
public void setStarGroupNearestNumber(int n) Description copied from interface:IScriptingInterface
Sets the number of nearest stars to be processed for each star group. This will limit the number of stars that are rendered with billboards, labels and velocity vectors.- Specified by:
setStarGroupNearestNumber
in interfaceIScriptingInterface
- Parameters:
n
- The new number of nearest stars
-
setStarGroupBillboard
public void setStarGroupBillboard(boolean flag) Description copied from interface:IScriptingInterface
Enable or disable the rendering of close stars as billboards.- Specified by:
setStarGroupBillboard
in interfaceIScriptingInterface
- Parameters:
flag
- The state flag
-
setOrbitSolidAngleThreshold
public void setOrbitSolidAngleThreshold(float angleDeg) Description copied from interface:IScriptingInterface
Sets the solid angle below which orbits fade and disappear.- Specified by:
setOrbitSolidAngleThreshold
in interfaceIScriptingInterface
- Parameters:
angleDeg
- The threshold angle in degrees
-
setProjectionYaw
public void setProjectionYaw(float yaw) Description copied from interface:IScriptingInterface
Sets the projection yaw angle (if this is a slave instance), in degrees. The yaw angle turns the camera to the right. This function is intended for multi-projector setups, to configure slaves without restarting Gaia Sky.- Specified by:
setProjectionYaw
in interfaceIScriptingInterface
- Parameters:
yaw
- The yaw angle in degrees.
-
setProjectionPitch
public void setProjectionPitch(float pitch) Description copied from interface:IScriptingInterface
Sets the projection pitch angle (if this is a slave instance), in degrees. The pitch angle turns the camera up. This function is intended for multi-projector setups, to configure slaves without restarting Gaia Sky.- Specified by:
setProjectionPitch
in interfaceIScriptingInterface
- Parameters:
pitch
- The pitch angle in degrees.
-
setProjectionRoll
public void setProjectionRoll(float roll) Description copied from interface:IScriptingInterface
Sets the projection roll angle (if this is a slave instance), in degrees. The roll angle rolls the camera clockwise. This function is intended for multi-projector setups, to configure slaves without restarting Gaia Sky.- Specified by:
setProjectionRoll
in interfaceIScriptingInterface
- Parameters:
roll
- The roll angle in degrees.
-
setProjectionFov
public void setProjectionFov(float newFov) Description copied from interface:IScriptingInterface
Same asIScriptingInterface.setFov(float)
, but bypassing the restriction of an active projection in the slave (slaves that have an active projection do not accept fov modification events).- Specified by:
setProjectionFov
in interfaceIScriptingInterface
- Parameters:
newFov
- The field of view angle.
-
setLimitFps
public void setLimitFps(double limitFps) Description copied from interface:IScriptingInterface
Limits the frame rate of Gaia Sky.- Specified by:
setLimitFps
in interfaceIScriptingInterface
- Parameters:
limitFps
- The new maximum frame rate as a double-precision floating point number. Set zero or negative to unlimited.
-
setLimitFps
public void setLimitFps(int limitFps) Description copied from interface:IScriptingInterface
Limits the frame rate of Gaia Sky.- Specified by:
setLimitFps
in interfaceIScriptingInterface
- Parameters:
limitFps
- The new maximum frame rate as an integer number. Set zero or negative to unlimited.
-
configureScreenshots
Description copied from interface:IScriptingInterface
Configures the screenshot system, setting the resolution of the images, the output directory and the image name prefix.- Specified by:
configureScreenshots
in interfaceIScriptingInterface
- Parameters:
width
- Width of images.height
- Height of images.directory
- The output directory path.namePrefix
- The file name prefix.
-
setScreenshotsMode
Description copied from interface:IScriptingInterface
Sets the screenshot mode. Possible values are 'simple' and 'advanced'. The simple mode is faster and just outputs the last frame rendered to the Gaia Sky window, with the same resolution and containing the UI elements. The advanced mode redraws the last frame using the resolution configured usingIScriptingInterface.configureScreenshots(int, int, String, String)
and it does not draw the UI.- Specified by:
setScreenshotsMode
in interfaceIScriptingInterface
- Parameters:
screenshotMode
- The screenshot mode. 'simple' or 'advanced'.
-
saveScreenshot
public void saveScreenshot()Description copied from interface:IScriptingInterface
Takes a screenshot of the current frame and saves it to the configured location (seeIScriptingInterface.configureScreenshots(int, int, String, String)
).- Specified by:
saveScreenshot
in interfaceIScriptingInterface
-
takeScreenshot
public void takeScreenshot()Description copied from interface:IScriptingInterface
Alias toIScriptingInterface.saveScreenshot()
.- Specified by:
takeScreenshot
in interfaceIScriptingInterface
-
configureFrameOutput
public void configureFrameOutput(int width, int height, int fps, String directory, String namePrefix) Description copied from interface:IScriptingInterface
Configures the frame output system, setting the resolution of the images, the target frames per second, the output directory and the image name prefix. This function sets the frame output mode to 'advanced'.- Specified by:
configureFrameOutput
in interfaceIScriptingInterface
- Parameters:
width
- Width of images.height
- Height of images.fps
- Target frames per second (number of images per second).directory
- The output directory path.namePrefix
- The file name prefix.
-
configureFrameOutput
public void configureFrameOutput(int width, int height, double fps, String directory, String namePrefix) Description copied from interface:IScriptingInterface
Configures the frame output system, setting the resolution of the images, the target frames per second, the output directory and the image name prefix. This function sets the frame output mode to 'advanced'.- Specified by:
configureFrameOutput
in interfaceIScriptingInterface
- Parameters:
width
- Width of images.height
- Height of images.fps
- Target frames per second (number of images per second).directory
- The output directory path.namePrefix
- The file name prefix.
-
configureRenderOutput
public void configureRenderOutput(int width, int height, int fps, String directory, String namePrefix) Description copied from interface:IScriptingInterface
Configures the frame output system, setting the resolution of the images, the target frames per second, the output directory and the image name prefix.- Specified by:
configureRenderOutput
in interfaceIScriptingInterface
- Parameters:
width
- Width of images.height
- Height of images.fps
- Target frames per second (number of images per second).directory
- The output directory path.namePrefix
- The file name prefix.
-
setFrameOutputMode
Description copied from interface:IScriptingInterface
Sets the frame output mode. Possible values are 'simple' and 'advanced'. The simple mode is faster and just outputs the last frame rendered to the Gaia Sky window, with the same resolution and containing the UI elements. The advanced mode redraws the last frame using the resolution configured usingIScriptingInterface.configureFrameOutput(int, int, int, String, String)
and it does not draw the UI.- Specified by:
setFrameOutputMode
in interfaceIScriptingInterface
- Parameters:
screenshotMode
- The screenshot mode. 'simple' or 'advanced'.
-
isFrameOutputActive
public boolean isFrameOutputActive()Description copied from interface:IScriptingInterface
Is the frame output system on?- Specified by:
isFrameOutputActive
in interfaceIScriptingInterface
- Returns:
- True if the render output is active.
-
isRenderOutputActive
public boolean isRenderOutputActive()Description copied from interface:IScriptingInterface
Is the frame output system on?- Specified by:
isRenderOutputActive
in interfaceIScriptingInterface
- Returns:
- True if the frame output is active.
-
getFrameOutputFps
public double getFrameOutputFps()Description copied from interface:IScriptingInterface
Gets the current FPS setting in the frame output system.- Specified by:
getFrameOutputFps
in interfaceIScriptingInterface
- Returns:
- The FPS setting.
-
getRenderOutputFps
public double getRenderOutputFps()Description copied from interface:IScriptingInterface
Gets the current FPS setting in the frame output system.- Specified by:
getRenderOutputFps
in interfaceIScriptingInterface
- Returns:
- The FPS setting.
-
setFrameOutput
public void setFrameOutput(boolean active) Description copied from interface:IScriptingInterface
Activates or deactivates the image output system. If called with true, the system starts outputting images right away.- Specified by:
setFrameOutput
in interfaceIScriptingInterface
- Parameters:
active
- Whether to activate or deactivate the frame output system.
-
getObject
Description copied from interface:IScriptingInterface
Gets an object from the scene graph byname
or id (HIP, TYC, Gaia SourceId).- Specified by:
getObject
in interfaceIScriptingInterface
- Parameters:
name
- The name or id (HIP, TYC, Gaia SourceId) of the object.- Returns:
- The object as a
FocusView
, or null if it does not exist.
-
getObject
Description copied from interface:IScriptingInterface
Gets an object byname
or id (HIP, TYC, Gaia SourceID), optionally waiting until the object is available, with a timeout.- Specified by:
getObject
in interfaceIScriptingInterface
- Parameters:
name
- The name or id (HIP, TYC, Gaia SourceId) of the object.timeOutSeconds
- The timeout in seconds to wait until returning. If negative, it waits indefinitely.- Returns:
- The object if it exists, or null if it does not and block is false, or if block is true and the timeout has passed.
-
getLineObject
Description copied from interface:IScriptingInterface
Gets aVerts
object from the scene byname
.- Specified by:
getLineObject
in interfaceIScriptingInterface
- Parameters:
name
- The name of the line object.- Returns:
- The line object as a
VertsView
, or null if it does not exist.
-
getLineObject
Description copied from interface:IScriptingInterface
Gets aVerts
object from the scene byname
.- Specified by:
getLineObject
in interfaceIScriptingInterface
- Parameters:
name
- The name of the line object.timeOutSeconds
- The timeout in seconds to wait until returning. If negative, it waits indefinitely.- Returns:
- The line object as a
VertsView
, or null if it does not exist.
-
getEntity
-
getEntity
-
setObjectSizeScaling
Description copied from interface:IScriptingInterface
Sets the given size scaling factor to the object identified byname
. This method will only work with model objects such as planets, asteroids, satellites, etc. It will not work with orbits, stars or any other types.Also, use this with caution, as scaling the size of objects can have unintended side effects, and remember to set the scaling back to 1.0 at the end of your script.
- Specified by:
setObjectSizeScaling
in interfaceIScriptingInterface
- Parameters:
name
- The name or id of the object.scalingFactor
- The scaling factor to scale the size of that object.
-
setObjectSizeScaling
public void setObjectSizeScaling(com.badlogic.ashley.core.Entity object, double scalingFactor) -
setOrbitCoordinatesScaling
Description copied from interface:IScriptingInterface
Sets the given orbit coordinates scaling factor to the AbstractOrbitCoordinates identified byname
. SeeAbstractOrbitCoordinates
and its subclasses.Also, use this with caution, as scaling coordinates may have unintended side effects, and remember to set the scaling back to 1.0 at the end of your script. Additionally, use either
IScriptingInterface.refreshAllOrbits()
orIScriptingInterface.refreshObjectOrbit(String)
right after this call in order to immediately refresh the scaled orbits.- Specified by:
setOrbitCoordinatesScaling
in interfaceIScriptingInterface
- Parameters:
name
- The name of the coordinates object (OrbitLintCoordinates, EclipticCoordinates, SaturnVSOP87, UranusVSOP87, EarthVSOP87, MercuryVSOP87, ..., PlutoCoordinates, HeliotropicOribtCoordinates, MoonAACoordinates). Optionally, you can append ':objectName' to select a single object. For instance, both Gaia and JWST have heliotropic orbit coordinates. To only select the Gaia orbit provider, use "HeliotropicOrbitCoordinates:Gaia".scalingFactor
- The scaling factor.
-
refreshAllOrbits
public void refreshAllOrbits()Description copied from interface:IScriptingInterface
Forces all orbits to refresh immediately.- Specified by:
refreshAllOrbits
in interfaceIScriptingInterface
-
forceUpdateScene
public void forceUpdateScene()Description copied from interface:IScriptingInterface
Forcefully triggers an update of the scene and the positions of all the objects. Useful to call after operations that modify the position of objects.- Specified by:
forceUpdateScene
in interfaceIScriptingInterface
-
refreshObjectOrbit
Description copied from interface:IScriptingInterface
Forces the refresh of the orbit of the object identified byname
. This should generally be called after a call toIScriptingInterface.setOrbitCoordinatesScaling(String, double)
.- Specified by:
refreshObjectOrbit
in interfaceIScriptingInterface
-
getObjectRadius
Description copied from interface:IScriptingInterface
Gets the size of the object identified byname
, in Km, by name or id (HIP, TYC, sourceId).- Specified by:
getObjectRadius
in interfaceIScriptingInterface
- Parameters:
name
- The name or id (HIP, TYC, sourceId) of the object.- Returns:
- The radius of the object in Km. If the object identified by name or id (HIP, TYC, sourceId). does not exist, it returns a negative value.
-
goToObject
Description copied from interface:IScriptingInterface
Runs a seamless trip to the object with the name
focusName
until the object view angle is20 degrees
.Warning: This method is not deterministic. It is implemented as a loop that sends 'camera forward' events to the main thread, running in a separate thread. If you need total synchronization and reproducibility, look into the
IScriptingInterface.parkRunnable(String, Runnable)
family of calls.- Specified by:
goToObject
in interfaceIScriptingInterface
- Parameters:
name
- The name or id (HIP, TYC, sourceId) of the object.
-
goToObject
Description copied from interface:IScriptingInterface
Runs a seamless trip to the object with the namefocusName
until the object view angleviewAngle
is met. If angle is negative, the default angle is20 degrees
.Warning: This method is not deterministic. It is implemented as a loop that sends 'camera forward' events to the main thread, running in a separate thread. If you need total synchronization and reproducibility, look into the
IScriptingInterface.parkRunnable(String, Runnable)
family of calls.- Specified by:
goToObject
in interfaceIScriptingInterface
- Parameters:
name
- The name or id (HIP, TYC, sourceId) of the object.angle
- The target solid angle of the object, in degrees. The angle gets larger and larger as we approach the object.
-
goToObject
Description copied from interface:IScriptingInterface
Runs a seamless trip to the object with the namefocusName
until the object view angleviewAngle
is met. If angle is negative, the default angle is20 degrees
. IfwaitTimeSeconds
is positive, it indicates the number of seconds to wait (block the function) for the camera to face the focus before starting the forward movement. This very much depends on theturn velocity
of the camera. SeeIScriptingInterface.setTurningCameraSpeed(float)
.Warning: This method is not deterministic. It is implemented as a loop that sends 'camera forward' events to the main thread, running in a separate thread. If you need total synchronization and reproducibility, look into the
IScriptingInterface.parkRunnable(String, Runnable)
family of calls.- Specified by:
goToObject
in interfaceIScriptingInterface
- Parameters:
name
- The name or id (HIP, TYC, sourceId) of the object.solidAngle
- The target solid angle of the object, in degrees. The angle gets larger and larger as we approach the object.waitTimeSeconds
- The seconds to wait for the camera direction vector and the vector from the camera position to the target object to be aligned.
-
goToObject
-
goToObject
-
goToObject
-
goToObject
-
goToObject
public void goToObject(com.badlogic.ashley.core.Entity object, double solidAngle, int waitTimeSeconds, AtomicBoolean stop) -
goToObjectInstant
Description copied from interface:IScriptingInterface
Sets the camera in focus mode with the given focus object and instantly moves the camera next to the focus object.- Specified by:
goToObjectInstant
in interfaceIScriptingInterface
- Parameters:
name
- The name of the new focus object.
-
landOnObject
Description copied from interface:IScriptingInterface
Lands on the object with the given name, if it is a planet or moon. The land location is determined by the line of sight from the current position of the camera to the object.- Specified by:
landOnObject
in interfaceIScriptingInterface
- Parameters:
name
- The proper name of the object.
-
landAtObjectLocation
Description copied from interface:IScriptingInterface
Lands on the object with the givenname
, if it is a planet or moon, at the location with the given name, if it exists.- Specified by:
landAtObjectLocation
in interfaceIScriptingInterface
- Parameters:
name
- The proper name of the object.locationName
- The name of the location to land on
-
landAtObjectLocation
-
landAtObjectLocation
public void landAtObjectLocation(com.badlogic.ashley.core.Entity object, String locationName, AtomicBoolean stop) -
landAtObjectLocation
Description copied from interface:IScriptingInterface
Lands on the object with the givenname
, if it is a planet or moon, at the location specified in by [latitude, longitude], in degrees.- Specified by:
landAtObjectLocation
in interfaceIScriptingInterface
- Parameters:
name
- The proper name of the object.longitude
- The location longitude, in degrees.latitude
- The location latitude, in degrees.
-
getDistanceTo
Description copied from interface:IScriptingInterface
Returns the distance to the surface of the object identified with the givenname
. If the object is an abstract node or does not exist, it returns a negative distance.- Specified by:
getDistanceTo
in interfaceIScriptingInterface
- Parameters:
name
- The name or id (HIP, TYC, sourceId) of the object.- Returns:
- The distance to the object in km if it exists, a negative value otherwise.
-
getStarParameters
Description copied from interface:IScriptingInterface
Returns the star parameters given its identifier or name, if the star exists and it is loaded.- Specified by:
getStarParameters
in interfaceIScriptingInterface
- Parameters:
id
- The star identifier or name.- Returns:
- An array with (ra [deg], dec [deg], parallax [mas], pmra [mas/yr], pmdec [mas/yr], radvel [km/s], appmag [mag], red [0,1], green [0,1], blue [0,1]) if the star exists and is loaded, null otherwise.
-
getObjectPosition
Description copied from interface:IScriptingInterface
Gets the current position of the object identified byname
in the internal coordinate system and internal units. If the object does not exist, it returns null.- Specified by:
getObjectPosition
in interfaceIScriptingInterface
- Parameters:
name
- The name or id (HIP, TYC, sourceId) of the object.- Returns:
- A 3-vector with the object's position in internal units and the internal reference system.
-
getObjectPosition
Description copied from interface:IScriptingInterface
Gets the current position of the object identified byname
in the internal coordinate system and the requested distance units. If the object does not exist, it returns null.- Specified by:
getObjectPosition
in interfaceIScriptingInterface
- Parameters:
name
- The name or id (HIP, TYC, sourceId) of the object.units
- The distance units to use. One of "m", "km", "au", "ly", "pc", "internal".- Returns:
- A 3-vector with the object's position in the requested units and internal reference system.
-
getObjectPredictedPosition
Description copied from interface:IScriptingInterface
Gets the predicted position of the object identified byname
in the internal coordinate system and internal units. If the object does not exist, it returns null. The predicted position is the position of the object in the next update cycle, and may be useful to compute the camera state.- Specified by:
getObjectPredictedPosition
in interfaceIScriptingInterface
- Parameters:
name
- The name or id (HIP, TYC, sourceId) of the object.- Returns:
- A 3-vector with the object's predicted position in the internal reference system.
-
getObjectPredictedPosition
Description copied from interface:IScriptingInterface
Gets the predicted position of the object identified byname
in the internal coordinate system and the requested distance units. If the object does not exist, it returns null. The predicted position is the position of the object in the next update cycle, and may be useful to compute the camera state.- Specified by:
getObjectPredictedPosition
in interfaceIScriptingInterface
- Parameters:
name
- The name or id (HIP, TYC, sourceId) of the object.units
- The distance units to use. One of "m", "km", "au", "ly", "pc", "internal".- Returns:
- A 3-vector with the object's predicted position in the requested units and in the internal reference system.
-
setObjectPosition
Description copied from interface:IScriptingInterface
Sets the internal position of the object identified byname
. Note that depending on the object type, the position may be already calculated and set elsewhere in the update stage, so use with care.- Specified by:
setObjectPosition
in interfaceIScriptingInterface
- Parameters:
name
- The name of the object.position
- The position in the internal reference system and internal units.
-
setObjectPosition
Description copied from interface:IScriptingInterface
Sets the internal position of the object identified byname
. Note that depending on the object type, the position may be already calculated and set elsewhere in the update stage, so use with care.- Specified by:
setObjectPosition
in interfaceIScriptingInterface
- Parameters:
name
- The name of the object.position
- The position in the internal reference system and the given units.units
- The distance units to use. One of "m", "km", "au", "ly", "pc", "internal".
-
setObjectPosition
-
setObjectPosition
-
setObjectPosition
Description copied from interface:IScriptingInterface
Sets the internal position of the given entity object. Note that depending on the object type, the position may be already calculated and set elsewhere in the update stage, so use with care.- Specified by:
setObjectPosition
in interfaceIScriptingInterface
- Parameters:
object
- The object in a focus view wrapper.position
- The position in the internal reference system and internal units.
-
setObjectPosition
Description copied from interface:IScriptingInterface
Sets the internal position of the given entity object. Note that depending on the object type, the position may be already calculated and set elsewhere in the update stage, so use with care.- Specified by:
setObjectPosition
in interfaceIScriptingInterface
- Parameters:
object
- The object in a focus view wrapper.position
- The position in the internal reference system and the given units.units
- The distance units to use. One of "m", "km", "au", "ly", "pc", "internal".
-
setObjectPosition
-
setObjectPosition
-
setObjectPosition
public void setObjectPosition(com.badlogic.ashley.core.Entity object, double[] position) Description copied from interface:IScriptingInterface
Sets the internal position of the given entity object. Note that depending on the object type, the position may be already calculated and set elsewhere in the update stage, so use with care.- Specified by:
setObjectPosition
in interfaceIScriptingInterface
- Parameters:
object
- The object entity.position
- The position in the internal reference system and internal units.
-
setObjectPosition
public void setObjectPosition(com.badlogic.ashley.core.Entity object, double[] position, String units) Description copied from interface:IScriptingInterface
Sets the internal position of the given entity object. Note that depending on the object type, the position may be already calculated and set elsewhere in the update stage, so use with care.- Specified by:
setObjectPosition
in interfaceIScriptingInterface
- Parameters:
object
- The object entity.position
- The position in the internal reference system and the given units.units
- The distance units to use. One of "m", "km", "au", "ly", "pc", "internal".
-
setObjectCoordinatesProvider
Description copied from interface:IScriptingInterface
Sets the coordinates provider for the object identified with the given name, if possible. The provider object must implementIPythonCoordinatesProvider
, and in particular the methodIPythonCoordinatesProvider.getEquatorialCartesianCoordinates(Object, Object)
, which takes in a julian date and outputs the object coordinates in the internal cartesian system.- Specified by:
setObjectCoordinatesProvider
in interfaceIScriptingInterface
- Parameters:
name
- The name of the object.provider
- The coordinate provider instance.
-
removeObjectCoordinatesProvider
Description copied from interface:IScriptingInterface
Removes the current coordinates provider from the object with the given name. This method must be called before shutting down the gateway if the coordinates provider has been previously set for the given object from Python withIScriptingInterface.setObjectCoordinatesProvider(String, IPythonCoordinatesProvider)
. Otherwise, Gaia Sky will crash due to the missing connection to Python.- Specified by:
removeObjectCoordinatesProvider
in interfaceIScriptingInterface
- Parameters:
name
- The name of the object for which to remove the coordinate provider.
-
setObjectPosition
-
setGuiScrollPosition
public void setGuiScrollPosition(float pixelY) Description copied from interface:IScriptingInterface
Sets the vertical scroll position in the GUI.- Specified by:
setGuiScrollPosition
in interfaceIScriptingInterface
- Parameters:
pixelY
- The pixel to set the scroll position to.
-
setGuiScrollPosition
public void setGuiScrollPosition(int pixelY) -
enableGui
public void enableGui()Description copied from interface:IScriptingInterface
Enables the GUI rendering. This makes the user interface to be rendered and updated again if it was previously disabled. Otherwise, it has no effect.- Specified by:
enableGui
in interfaceIScriptingInterface
-
disableGui
public void disableGui()Description copied from interface:IScriptingInterface
Disables the GUI rendering. This causes the user interface to no longer be rendered or updated.- Specified by:
disableGui
in interfaceIScriptingInterface
-
getGuiScaleFactor
public float getGuiScaleFactor()Description copied from interface:IScriptingInterface
Gets the current scale factor applied to the UI.- Specified by:
getGuiScaleFactor
in interfaceIScriptingInterface
- Returns:
- The scale factor.
-
displayMessageObject
public void displayMessageObject(int id, String message, float x, float y, float r, float g, float b, float a, float fontSize) Description copied from interface:IScriptingInterface
Adds a new one-line message in the screen with the given id and the given coordinates. If an object already exists with the given id, it is removed. However, if a message object already exists with the same id, its properties are updated. The messages placed with this method will not appear in the screenshots/frames in advanced mode. This is intended for running interactively only.- Specified by:
displayMessageObject
in interfaceIScriptingInterface
- Parameters:
id
- A unique identifier, used to identify this message when you want to remove it.message
- The string message, to be displayed in one line. But explicit newline breaks the line.x
- The x coordinate of the bottom-left corner, in [0,1] from left to right. This is not resolution-dependant.y
- The y coordinate of the bottom-left corner, in [0,1] from bottom to top. This is not resolution-dependant.r
- The red component of the color in [0,1].g
- The green component of the color in [0,1].b
- The blue component of the color in [0,1].a
- The alpha component of the color in [0,1].fontSize
- The size of the font. The system will use the existing font closest to the chosen size and scale it up or down to match the desired size. Scaling can cause artifacts, so to ensure the best font quality, stick to the existing sizes.
-
displayMessageObject
public void displayMessageObject(int id, String message, double x, double y, double[] color, double fontSize) Description copied from interface:IScriptingInterface
Same asIScriptingInterface.displayImageObject(int, String, float, float, float, float, float, float)
but using an array for the color instead of giving each component separately.- Specified by:
displayMessageObject
in interfaceIScriptingInterface
- Parameters:
id
- A unique identifier, used to identify this message when you want to remove it.message
- The string message, to be displayed in one line. But explicit newline breaks the line.x
- The x coordinate of the bottom-left corner, in [0,1] from left to right. This is not resolution-dependant.y
- The y coordinate of the bottom-left corner, in [0,1] from bottom to top. This is not resolution-dependant.color
- The color as an array of RGBA (red, green, blue, alpha) values in [0,1].fontSize
- The size of the font. The system will use the existing font closest to the chosen size and scale it up or down to match the desired size. Scaling can cause artifacts, so to ensure the best font quality, stick to the existing sizes.
-
displayMessageObject
-
displayMessageObject
public void displayMessageObject(int id, String message, float x, float y, float r, float g, float b, float a, int fontSize) -
displayTextObject
public void displayTextObject(int id, String text, float x, float y, float maxWidth, float maxHeight, float r, float g, float b, float a, float fontSize) Description copied from interface:IScriptingInterface
Adds a new multi-line text in the screen with the given id, coordinates and size. If an object already exists with the given id, it is removed. However, if a text object already exists with the same id, its properties are updated. The texts placed with this method will not appear in the screenshots/frames in advanced mode. This is intended for running interactively only.- Specified by:
displayTextObject
in interfaceIScriptingInterface
- Parameters:
id
- A unique identifier, used to identify this message when you want to remove it.text
- The string message, to be displayed line-wrapped in the box defined by maxWidth and maxHeight. Explicit newline still breaks the line.x
- The x coordinate of the bottom-left corner, in [0,1] from left to right. This is not resolution-dependant.y
- The y coordinate of the bottom-left corner, in [0,1] from bottom to top. This is not resolution-dependant.maxWidth
- The maximum width in screen percentage [0,1]. Set to 0 to let the system decide.maxHeight
- The maximum height in screen percentage [0,1]. Set to 0 to let the system decide.r
- The red component of the color in [0,1].g
- The green component of the color in [0,1].b
- The blue component of the color in [0,1].a
- The alpha component of the color in [0,1].fontSize
- The size of the font. The system will use the existing font closest to the chosen size.
-
displayTextObject
public void displayTextObject(int id, String text, float x, float y, float maxWidth, float maxHeight, float r, float g, float b, float a, int fontSize) -
displayImageObject
public void displayImageObject(int id, String path, float x, float y, float r, float g, float b, float a) Description copied from interface:IScriptingInterface
Adds a new image object at the given coordinates. If an object already exists with the given id, it is removed. However, if an image object already exists with the same id, its properties are updated.
Warning: This method will only work in the asynchronous mode. Run the script with the "asynchronous" check box activated!- Specified by:
displayImageObject
in interfaceIScriptingInterface
- Parameters:
id
- A unique identifier, used to identify this message when you want to remove it.path
- The path to the image. It can either be an absolute path (not recommended) or a path relative to the Gaia Sky work directory.x
- The x coordinate of the bottom-left corner, in [0,1] from left to right. This is not resolution-dependant.y
- The y coordinate of the bottom-left corner, in [0,1] from bottom to top. This is not resolution-dependant.r
- The red component of the color in [0,1].g
- The green component of the color in [0,1].b
- The blue component of the color in [0,1].a
- The alpha component of the color in [0,1].
-
displayImageObject
Description copied from interface:IScriptingInterface
Same asIScriptingInterface.displayImageObject(int, String, float, float, float, float, float, float)
but using a double array for the color instead of each component separately.- Specified by:
displayImageObject
in interfaceIScriptingInterface
- Parameters:
id
- A unique identifier, used to identify this message when you want to remove it.path
- The path to the image. It can either be an absolute path (not recommended) or a path relative to the Gaia Sky work directory.x
- The x coordinate of the bottom-left corner, in [0,1] from left to right. This is not resolution-dependant.y
- The y coordinate of the bottom-left corner, in [0,1] from bottom to top. This is not resolution-dependant.color
- The color as an array of RGBA (red, green, blue, alpha) values in [0,1].
-
displayImageObject
-
displayImageObject
Description copied from interface:IScriptingInterface
Adds a new image object at the given coordinates. If an object already exists with the given id, it is removed. However, if an image object already exists with the same id, its properties are updated.
The messages placed with this method will not appear in the screenshots/frames in advanced mode. This is intended for running interactively only.- Specified by:
displayImageObject
in interfaceIScriptingInterface
- Parameters:
id
- A unique identifier, used to identify this message when you want to remove it.path
- The path to the image. It can either be an absolute path (not recommended) or a path relative to the Gaia Sky work directory.x
- The x coordinate of the bottom-left corner, in [0,1] from left to right. This is not resolution-dependant.y
- The y coordinate of the bottom-left corner, in [0,1] from bottom to top. This is not resolution-dependant.
-
removeAllObjects
public void removeAllObjects()Description copied from interface:IScriptingInterface
Removes all objects.- Specified by:
removeAllObjects
in interfaceIScriptingInterface
-
removeObject
public void removeObject(int id) Description copied from interface:IScriptingInterface
Removes the item with the given id.- Specified by:
removeObject
in interfaceIScriptingInterface
- Parameters:
id
- Integer with the integer id of the object to remove.
-
removeObjects
public void removeObjects(int[] ids) Description copied from interface:IScriptingInterface
Removes the items with the given ids. They can either messages, images or whatever else.- Specified by:
removeObjects
in interfaceIScriptingInterface
- Parameters:
ids
- Vector with the integer ids of the objects to remove
-
removeObjects
-
maximizeInterfaceWindow
public void maximizeInterfaceWindow()Description copied from interface:IScriptingInterface
Maximizes the interface window.- Specified by:
maximizeInterfaceWindow
in interfaceIScriptingInterface
-
minimizeInterfaceWindow
public void minimizeInterfaceWindow()Description copied from interface:IScriptingInterface
Minimizes the interface window.- Specified by:
minimizeInterfaceWindow
in interfaceIScriptingInterface
-
expandUIPane
Description copied from interface:IScriptingInterface
Expands the UI pane with the given name. Possible names are:- Time
- Camera
- Visibility
- VisualSettings
- Datasets
- Bookmarks
- LocationLog
Please, mind the case!
- Specified by:
expandUIPane
in interfaceIScriptingInterface
-
collapseUIPane
Description copied from interface:IScriptingInterface
Collapses the UI pane with the given name. Possible names are:- Time
- Camera
- Visibility
- VisualSettings
- Datasets
- Bookmarks
- LocationLog
Please, mind the case!
- Specified by:
collapseUIPane
in interfaceIScriptingInterface
-
expandGuiComponent
- Specified by:
expandGuiComponent
in interfaceIScriptingInterface
-
collapseGuiComponent
- Specified by:
collapseGuiComponent
in interfaceIScriptingInterface
-
setGuiPosition
public void setGuiPosition(float x, float y) Description copied from interface:IScriptingInterface
Moves the interface window to a new position.- Specified by:
setGuiPosition
in interfaceIScriptingInterface
- Parameters:
x
- The new x coordinate of the new top-left corner of the window, in [0,1] from left to right.y
- The new y coordinate of the new top-left corner of the window, in [0,1] from bottom to top.
-
setGuiPosition
public void setGuiPosition(int x, int y) -
setGuiPosition
public void setGuiPosition(float x, int y) -
setGuiPosition
public void setGuiPosition(int x, float y) -
waitForInput
public void waitForInput()Description copied from interface:IScriptingInterface
Blocks the execution until any kind of input (keyboard, mouse, etc.) is received.- Specified by:
waitForInput
in interfaceIScriptingInterface
-
waitForEnter
public void waitForEnter()Description copied from interface:IScriptingInterface
Blocks the execution until the Enter key is pressed.- Specified by:
waitForEnter
in interfaceIScriptingInterface
-
waitForInput
public void waitForInput(int keyCode) Description copied from interface:IScriptingInterface
Blocks the execution until the given key or button is pressed.- Specified by:
waitForInput
in interfaceIScriptingInterface
- Parameters:
keyCode
- The key or button code. Please seeInput
.
-
getScreenWidth
public int getScreenWidth()Description copied from interface:IScriptingInterface
Returns the screen width in pixels.- Specified by:
getScreenWidth
in interfaceIScriptingInterface
- Returns:
- The screen width in pixels.
-
getScreenHeight
public int getScreenHeight()Description copied from interface:IScriptingInterface
Returns the screen height in pixels.- Specified by:
getScreenHeight
in interfaceIScriptingInterface
- Returns:
- The screen height in pixels.
-
getPositionAndSizeGui
Description copied from interface:IScriptingInterface
Returns the size and position of the GUI element that goes by the given name or null if such element does not exist. Warning> This will only work in asynchronous mode.- Specified by:
getPositionAndSizeGui
in interfaceIScriptingInterface
- Parameters:
name
- The name of the gui element.- Returns:
- A vector of floats with the position (0, 1) of the bottom left corner in pixels from the bottom-left of the screen and the size (2, 3) in pixels of the element.
-
getVersion
Description copied from interface:IScriptingInterface
Returns a string with the version number, build string, system, builder and build time.- Specified by:
getVersion
in interfaceIScriptingInterface
- Returns:
- A string with the full version information.
-
getVersionNumber
Description copied from interface:IScriptingInterface
Returns the version number string.- Specified by:
getVersionNumber
in interfaceIScriptingInterface
- Returns:
- The version number string.
-
getBuildString
Description copied from interface:IScriptingInterface
Returns the build string.- Specified by:
getBuildString
in interfaceIScriptingInterface
- Returns:
- The build string.
-
waitFocus
Description copied from interface:IScriptingInterface
Blocks the script until the focus is the object indicated by the name. There is an optional time out.- Specified by:
waitFocus
in interfaceIScriptingInterface
- Parameters:
name
- The name of the focus to wait for.timeoutMs
- Timeout in ms to wait. Set negative to disable timeout.- Returns:
- True if the timeout ran out. False otherwise.
-
setCamcorderFps
public void setCamcorderFps(double targetFps) Description copied from interface:IScriptingInterface
Sets the target frame rate of the camcorder. This artificially sets the frame rate (the frame time) of Gaia Sky to this value while the camera is recording and playing. Make sure to use the right FPS setting during playback!- Specified by:
setCamcorderFps
in interfaceIScriptingInterface
- Parameters:
targetFps
- The target frame rate for the camcorder.
-
setCameraRecorderFps
public void setCameraRecorderFps(double targetFps) - Specified by:
setCameraRecorderFps
in interfaceIScriptingInterface
-
getCamcorderFps
public double getCamcorderFps()Description copied from interface:IScriptingInterface
Gets the current frame rate setting of the camcorder.- Specified by:
getCamcorderFps
in interfaceIScriptingInterface
- Returns:
- The FPS setting of the camcorder.
-
preloadTexture
Description copied from interface:IScriptingInterface
Pre-loads the given image as a texture for later use. The texture will be cached for later use.- Specified by:
preloadTexture
in interfaceIScriptingInterface
- Parameters:
path
- The path of the image file to preload.
-
getAssetsLocation
Description copied from interface:IScriptingInterface
Gets the location of the assets folder.- Specified by:
getAssetsLocation
in interfaceIScriptingInterface
-
preloadTextures
Description copied from interface:IScriptingInterface
Pre-loads the given images as textures for later use. They will be cached for the subsequent uses.- Specified by:
preloadTextures
in interfaceIScriptingInterface
- Parameters:
paths
- The texture paths.
-
startRecordingCameraPath
public void startRecordingCameraPath()Description copied from interface:IScriptingInterface
Starts recording the camera path to an auto-generated file in the default camera directory. This command has no effect if the camera is already being recorded.- Specified by:
startRecordingCameraPath
in interfaceIScriptingInterface
-
startRecordingCameraPath
Description copied from interface:IScriptingInterface
Starts recording a camera path with the given filename. The filename is without extension or path. The final path with the camera file, after invokingIScriptingInterface.stopRecordingCameraPath()
, is:
IScriptingInterface.getDefaultCameraDir()
+ "/" + filename + ".gsc"
This command has no effect if the camera is already being recorded.- Specified by:
startRecordingCameraPath
in interfaceIScriptingInterface
-
stopRecordingCameraPath
public void stopRecordingCameraPath()Description copied from interface:IScriptingInterface
Stops the current camera recording. This command has no effect if the camera was not being recorded.- Specified by:
stopRecordingCameraPath
in interfaceIScriptingInterface
-
playCameraPath
Description copied from interface:IScriptingInterface
- Specified by:
playCameraPath
in interfaceIScriptingInterface
-
runCameraPath
Description copied from interface:IScriptingInterface
Runs a .gsc camera path file and returns immediately. This function accepts a boolean indicating whether to wait for the camera path file to finish or not.- Specified by:
runCameraPath
in interfaceIScriptingInterface
- Parameters:
file
- The path to the camera file. Path is relative to the application's root directory or absolute.sync
- If true, the call is synchronous and waits for the camera file to finish. Otherwise, it returns immediately.
-
playCameraPath
Description copied from interface:IScriptingInterface
- Specified by:
playCameraPath
in interfaceIScriptingInterface
-
runCameraPath
Description copied from interface:IScriptingInterface
Runs a .gsc camera path file and returns immediately. This function does not wait for the camera file to finish playing.- Specified by:
runCameraPath
in interfaceIScriptingInterface
- Parameters:
file
- The path to the camera file. Path is relative to the application's root directory or absolute.
-
runCameraRecording
Description copied from interface:IScriptingInterface
Runs the camera recording file with the given path. Does not wait for the camera file to finish playing.- Specified by:
runCameraRecording
in interfaceIScriptingInterface
- Parameters:
file
- The path of the camera file. Path is relative to the application's root directory or absolute.
-
cameraTransitionKm
public void cameraTransitionKm(double[] camPos, double[] camDir, double[] camUp, double seconds) Description copied from interface:IScriptingInterface
Same asIScriptingInterface.cameraTransition(double[], double[], double[], double)
but the camera position is given in Km.- Specified by:
cameraTransitionKm
in interfaceIScriptingInterface
- Parameters:
camPos
- The target camera position in Km.camDir
- The target camera direction vector.camUp
- The target camera up vector.seconds
- The duration of the transition in seconds.
-
cameraTransitionKm
-
cameraTransitionKm
-
cameraTransition
public void cameraTransition(double[] camPos, double[] camDir, double[] camUp, double seconds) Description copied from interface:IScriptingInterface
Creates a smooth transition from the current camera state to the given camera state {camPos, camDir, camUp} in the given number of seconds. This function waits for the transition to finish and then returns control to the script.
This function will put the camera in free mode, so make sure to change it afterward if you need to. Also, this only works with the natural camera.
- Specified by:
cameraTransition
in interfaceIScriptingInterface
- Parameters:
camPos
- The target camera position in the internal reference system.camDir
- The target camera direction in the internal reference system.camUp
- The target camera up in the internal reference system.seconds
- The duration of the transition in seconds.
-
cameraTransition
public void cameraTransition(double[] camPos, String units, double[] camDir, double[] camUp, double seconds) Description copied from interface:IScriptingInterface
Creates a smooth transition from the current camera state to the given camera state {camPos, camDir, camUp} in the given number of seconds. This function waits for the transition to finish and then returns control to the script.
This function will put the camera in free mode, so make sure to change it afterward if you need to. Also, this only works with the natural camera.
- Specified by:
cameraTransition
in interfaceIScriptingInterface
- Parameters:
camPos
- The target camera position in the internal reference system and the given distance units.units
- The distance units to use. One of "m", "km", "au", "ly", "pc", "internal".camDir
- The target camera direction in the internal reference system.camUp
- The target camera up in the internal reference system.seconds
- The duration of the transition in seconds.
-
cameraTransition
public void cameraTransition(double[] camPos, double[] camDir, double[] camUp, long seconds) -
cameraTransition
public void cameraTransition(double[] camPos, String units, double[] camDir, double[] camUp, long seconds) -
cameraTransition
-
cameraTransition
-
cameraTransition
-
cameraTransition
-
cameraTransition
public void cameraTransition(double[] camPos, double[] camDir, double[] camUp, double seconds, boolean sync) Description copied from interface:IScriptingInterface
Creates a smooth transition from the current camera state to the given camera state {camPos, camDir, camUp} in the given number of seconds. Optionally, the transition may be run synchronously or asynchronously to the current script.
This function will put the camera in free mode, so make sure to change it afterward if you need to. Also, this only works with the natural camera.
- Specified by:
cameraTransition
in interfaceIScriptingInterface
- Parameters:
camPos
- The target camera position in the internal reference system.camDir
- The target camera direction in the internal reference system.camUp
- The target camera up in the internal reference system.seconds
- The duration of the transition in seconds.sync
- If true, the call waits for the transition to finish before returning, otherwise it returns immediately.
-
cameraTransition
public void cameraTransition(double[] camPos, String units, double[] camDir, double[] camUp, double seconds, boolean sync) Description copied from interface:IScriptingInterface
Creates a smooth transition from the current camera state to the given camera state {camPos, camDir, camUp} in the given number of seconds. Optionally, the transition may be run synchronously or asynchronously to the current script.
This function will put the camera in free mode, so make sure to change it afterward if you need to. Also, this only works with the natural camera.
- Specified by:
cameraTransition
in interfaceIScriptingInterface
- Parameters:
camPos
- The target camera position in the internal reference system and the given distance units.units
- The distance units to use. One of "m", "km", "au", "ly", "pc", "internal".camDir
- The target camera direction in the internal reference system.camUp
- The target camera up in the internal reference system.seconds
- The duration of the transition in seconds.sync
- If true, the call waits for the transition to finish before returning, otherwise it returns immediately.
-
cameraTransition
-
cameraTransition
public void cameraTransition(double[] camPos, double[] camDir, double[] camUp, double positionDurationSeconds, String positionSmoothType, double positionSmoothFactor, double orientationDurationSeconds, String orientationSmoothType, double orientationSmoothFactor) Description copied from interface:IScriptingInterface
Creates a smooth transition from the current camera state to the given camera state {camPos, camDir, camUp} in the given number of seconds.
This function accepts smoothing types and factors for the position and orientation.
This function will put the camera in free mode, so make sure to change it afterward if you need to. Also, this only works with the natural camera.
- Specified by:
cameraTransition
in interfaceIScriptingInterface
- Parameters:
camPos
- The target camera position in the internal reference system and the given distance units.camDir
- The target camera direction in the internal reference system.camUp
- The target camera up in the internal reference system.positionDurationSeconds
- The duration of the transition in position, in seconds.positionSmoothType
- The function type to use for the smoothing of positions. Either "logit", "logisticsigmoid" or "none".- "logisticsigmoid": starts slow and ends slow. The smooth factor must be over 12 to produce an effect, otherwise, linear interpolation is used.
- "logit": starts fast and ends fast. The smooth factor must be between 0.09 and 0.01.
- "none": no smoothing is applied.
positionSmoothFactor
- Smooth factor for the positions (depends on type).orientationDurationSeconds
- The duration of the transition in orientation, in seconds.orientationSmoothType
- The function type to use for the smoothing of orientations. Either "logit", "logisticsigmoid" or "none".- "logisticsigmoid": starts slow and ends slow. The smooth factor must be over 12 to produce an effect, otherwise, linear interpolation is used.
- "logit": starts fast and ends fast. The smooth factor must be between 0.09 and 0.01.
- "none": no smoothing is applied.
orientationSmoothFactor
- Smooth factor for the orientations (depends on type).
-
cameraTransition
-
cameraTransition
public void cameraTransition(double[] camPos, String units, double[] camDir, double[] camUp, double positionDurationSeconds, String positionSmoothType, double positionSmoothFactor, double orientationDurationSeconds, String orientationSmoothType, double orientationSmoothFactor, boolean sync) Description copied from interface:IScriptingInterface
Creates a smooth transition from the current camera state to the given camera state {camPos, camDir, camUp} in the given number of seconds.
This function accepts smoothing types and factors for the position and orientation.
Optionally, this call may return immediately (async) or it may wait for the transition to finish (sync).
This function puts the camera in free mode, so make sure to change it afterward if you need to. Also, this only works with the natural camera.
- Specified by:
cameraTransition
in interfaceIScriptingInterface
- Parameters:
camPos
- The target camera position in the internal reference system and the given distance units.units
- The distance units to use. One of "m", "km", "au", "ly", "pc", "internal".camDir
- The target camera direction in the internal reference system.camUp
- The target camera up in the internal reference system.positionDurationSeconds
- The duration of the transition in position, in seconds.positionSmoothType
- The function type to use for the smoothing of positions. Either "logit", "logisticsigmoid" or "none".- "logisticsigmoid": starts slow and ends slow. The smooth factor must be over 12 to produce an effect, otherwise, linear interpolation is used.
- "logit": starts fast and ends fast. The smooth factor must be between 0.09 and 0.01.
- "none": no smoothing is applied.
positionSmoothFactor
- Smooth factor for the positions (depends on type).orientationDurationSeconds
- The duration of the transition in orientation, in seconds.orientationSmoothType
- The function type to use for the smoothing of orientations. Either "logit", "logisticsigmoid" or "none".- "logisticsigmoid": starts slow and ends slow. The smooth factor must be over 12 to produce an effect, otherwise, linear interpolation is used.
- "logit": starts fast and ends fast. The smooth factor must be between 0.09 and 0.01.
- "none": no smoothing is applied.
orientationSmoothFactor
- Smooth factor for the orientations (depends on type).sync
- If true, the call waits for the transition to finish before returning, otherwise it returns immediately.
-
cameraPositionTransition
public void cameraPositionTransition(double[] camPos, String units, double durationSeconds, String smoothType, double smoothFactor, boolean sync) Description copied from interface:IScriptingInterface
Creates a smooth transition from the current camera position to the given camera position in the given number of seconds.
This function accepts smoothing type and factor.
Optionally, this call may return immediately (async) or it may wait for the transition to finish (sync).
This function puts the camera in free mode, so make sure to change it afterward if you need to. Also, this only works with the natural camera.
- Specified by:
cameraPositionTransition
in interfaceIScriptingInterface
- Parameters:
camPos
- The target camera position in the internal reference system and the given distance units.units
- The distance units to use. One of "m", "km", "au", "ly", "pc", "internal".durationSeconds
- The duration of the transition in position, in seconds.smoothType
- The function type to use for the smoothing of positions. Either "logit", "logisticsigmoid" or "none".- "logisticsigmoid": starts slow and ends slow. The smooth factor must be over 12 to produce an effect, otherwise, linear interpolation is used.
- "logit": starts fast and ends fast. The smooth factor must be between 0.09 and 0.01.
- "none": no smoothing is applied.
smoothFactor
- Smooth factor for the positions (depends on type).sync
- If true, the call waits for the transition to finish before returning, otherwise it returns immediately.
-
cameraOrientationTransition
public void cameraOrientationTransition(double[] camDir, double[] camUp, double durationSeconds, String smoothType, double smoothFactor, boolean sync) Description copied from interface:IScriptingInterface
Creates a smooth transition from the current camera orientation to the given camera orientation {camDir, camUp} in the given number of seconds.
This function accepts smoothing type and factor.
Optionally, this call may return immediately (async) or it may wait for the transition to finish (sync).
This function puts the camera in free mode, so make sure to change it afterward if you need to. Also, this only works with the natural camera.
- Specified by:
cameraOrientationTransition
in interfaceIScriptingInterface
- Parameters:
camDir
- The target camera direction in the internal reference system.camUp
- The target camera up in the internal reference system.durationSeconds
- The duration of the transition in orientation, in seconds.smoothType
- The function type to use for the smoothing of orientations. Either "logit", "logisticsigmoid" or "none".- "logisticsigmoid": starts slow and ends slow. The smooth factor must be over 12 to produce an effect, otherwise, linear interpolation is used.
- "logit": starts fast and ends fast. The smooth factor must be between 0.09 and 0.01.
- "none": no smoothing is applied.
smoothFactor
- Smooth factor for the orientations (depends on type).sync
- If true, the call waits for the transition to finish before returning, otherwise it returns immediately.
-
cameraTransition
-
cameraTransition
-
cameraTransition
-
cameraTransition
-
cameraOrientationTransition
-
cameraPositionTransition
-
timeTransition
public void timeTransition(int year, int month, int day, int hour, int min, int sec, int milliseconds, double durationSeconds, String smoothType, double smoothFactor, boolean sync) Description copied from interface:IScriptingInterface
Creates a time transition from the current time to the given time (year, month, day, hour, minute, second, millisecond). The time is given in UTC.- Specified by:
timeTransition
in interfaceIScriptingInterface
- Parameters:
year
- The year to represent.month
- The month-of-year to represent, from 1 (January) to 12 (December).day
- The day-of-month to represent, from 1 to 31.hour
- The hour-of-day to represent, from 0 to 23.min
- The minute-of-hour to represent, from 0 to 59.sec
- The second-of-minute to represent, from 0 to 59.milliseconds
- The millisecond-of-second, from 0 to 999.durationSeconds
- The duration of the transition, in seconds.smoothType
- The function type to use for smoothing. Either "logit", "logisticsigmoid" or "none".- "logisticsigmoid": starts slow and ends slow. The smooth factor must be over 12 to produce an effect, otherwise, linear interpolation is used.
- "logit": starts fast and ends fast. The smooth factor must be between 0.09 and 0.01.
- "none": no smoothing is applied.
smoothFactor
- Smoothing factor (depends on type, see #smoothType).sync
- If true, the call waits for the transition to finish before returning, otherwise it returns immediately.
-
sleep
public void sleep(float seconds) Description copied from interface:IScriptingInterface
Sleeps for the given number of seconds in the application time (FPS), so if we are capturing frames and the frame rate is set to 30 FPS, the command sleep(1) will put the script to sleep for 30 frames.- Specified by:
sleep
in interfaceIScriptingInterface
- Parameters:
seconds
- The number of seconds to wait.
-
sleep
public void sleep(int seconds) -
sleepFrames
public void sleepFrames(long frames) Description copied from interface:IScriptingInterface
Sleeps for a number of frames. The frame monitor is notified at the beginning of each frame, before the update-render cycle. When frames is 1, this method returns just before the processing of the next frame starts.- Specified by:
sleepFrames
in interfaceIScriptingInterface
- Parameters:
frames
- The number of frames to wait.
-
galacticToInternalCartesian
public double[] galacticToInternalCartesian(double l, double b, double r) Description copied from interface:IScriptingInterface
Converts galactic coordinates to the internal cartesian coordinate system.- Specified by:
galacticToInternalCartesian
in interfaceIScriptingInterface
- Parameters:
l
- The galactic longitude in degrees.b
- The galactic latitude in degrees.r
- The distance in Km.- Returns:
- An array of doubles containing
[x, y, z]
in the internal reference system, in internal units.
-
galacticToInternalCartesian
public double[] galacticToInternalCartesian(int l, int b, int r) -
eclipticToInternalCartesian
public double[] eclipticToInternalCartesian(double l, double b, double r) Description copied from interface:IScriptingInterface
Converts ecliptic coordinates to the internal cartesian coordinate system.- Specified by:
eclipticToInternalCartesian
in interfaceIScriptingInterface
- Parameters:
l
- The ecliptic longitude in degrees.b
- The ecliptic latitude in degrees.r
- The distance in Km.- Returns:
- An array of doubles containing
[x, y, z]
in the internal reference system, in internal units.
-
eclipticToInternalCartesian
public double[] eclipticToInternalCartesian(int l, int b, int r) -
equatorialToInternalCartesian
public double[] equatorialToInternalCartesian(double ra, double dec, double r) Description copied from interface:IScriptingInterface
Converts equatorial coordinates to the internal cartesian coordinate system.- Specified by:
equatorialToInternalCartesian
in interfaceIScriptingInterface
- Parameters:
ra
- The right ascension in degrees.dec
- The declination in degrees.r
- The distance in Km.- Returns:
- An array of doubles containing
[x, y, z]
in the internal reference system, in internal units.
-
equatorialToInternalCartesian
public double[] equatorialToInternalCartesian(int ra, int dec, int r) -
internalCartesianToEquatorial
public double[] internalCartesianToEquatorial(double x, double y, double z) Description copied from interface:IScriptingInterface
Converts internal cartesian coordinates to equatorial[ra, dec, distance]
coordinates.- Specified by:
internalCartesianToEquatorial
in interfaceIScriptingInterface
- Parameters:
x
- The x component, in any distance units.y
- The y component, in any distance units.z
- The z component, in any distance units.- Returns:
- An array of doubles containing
[ra, dec, distance]
withra
anddec
in degrees anddistance
in the same distance units as the input position.
-
internalCartesianToEquatorial
public double[] internalCartesianToEquatorial(int x, int y, int z) -
equatorialCartesianToInternalCartesian
public double[] equatorialCartesianToInternalCartesian(double[] eq, double kmFactor) Description copied from interface:IScriptingInterface
Converts regular cartesian coordinates, where XY is the equatorial plane, with X pointing to the vernal equinox (ra=0) and Y points to ra=90, and Z pointing to the celestial north pole (dec=90) to internal cartesian coordinates with internal units.- Specified by:
equatorialCartesianToInternalCartesian
in interfaceIScriptingInterface
- Parameters:
eq
- Equatorial cartesian coordinates (X->[ra=0,dec=0], Y->[ra=90,dec=0], Z->[ra=0,dec=90])kmFactor
- Factor used to bring the input coordinate units to Kilometers, so thateq * factor = Km
- Returns:
- Internal coordinates ready to be fed in other scripting functions
-
equatorialCartesianToInternalCartesian
-
equatorialToGalactic
public double[] equatorialToGalactic(double[] eq) Description copied from interface:IScriptingInterface
Converts equatorial cartesian coordinates (in the internal reference system) to galactic cartesian coordinates.- Specified by:
equatorialToGalactic
in interfaceIScriptingInterface
- Parameters:
eq
- Vector with [x, y, z] equatorial cartesian coordinates- Returns:
- Vector with [x, y, z] galactic cartesian coordinates
-
equatorialToGalactic
-
equatorialToEcliptic
public double[] equatorialToEcliptic(double[] eq) Description copied from interface:IScriptingInterface
Converts equatorial cartesian coordinates (in the internal reference system) to ecliptic cartesian coordinates.- Specified by:
equatorialToEcliptic
in interfaceIScriptingInterface
- Parameters:
eq
- Vector with [x, y, z] equatorial cartesian coordinates- Returns:
- Vector with [x, y, z] ecliptic cartesian coordinates
-
equatorialToEcliptic
-
galacticToEquatorial
public double[] galacticToEquatorial(double[] gal) Description copied from interface:IScriptingInterface
Converts galactic cartesian coordinates (in the internal reference system) to equatorial cartesian coordinates.- Specified by:
galacticToEquatorial
in interfaceIScriptingInterface
- Parameters:
gal
- Vector with [x, y, z] galactic cartesian coordinates- Returns:
- Vector with [x, y, z] equatorial cartesian coordinates
-
galacticToEquatorial
-
eclipticToEquatorial
public double[] eclipticToEquatorial(double[] ecl) Description copied from interface:IScriptingInterface
Converts ecliptic cartesian coordinates (in the internal reference system) to equatorial cartesian coordinates.- Specified by:
eclipticToEquatorial
in interfaceIScriptingInterface
- Parameters:
ecl
- Vector with [x, y, z] ecliptic cartesian coordinates- Returns:
- Vector with [x, y, z] equatorial cartesian coordinates
-
eclipticToEquatorial
-
setBrightnessLevel
public void setBrightnessLevel(double level) Description copied from interface:IScriptingInterface
Sets the brightness level of the render system.- Specified by:
setBrightnessLevel
in interfaceIScriptingInterface
- Parameters:
level
- The brightness level as a double precision floating point number in [-1,1]. The neutral value is 0.0.
-
setBrightnessLevel
public void setBrightnessLevel(long level) -
setContrastLevel
public void setContrastLevel(double level) Description copied from interface:IScriptingInterface
Sets the contrast level of the render system.- Specified by:
setContrastLevel
in interfaceIScriptingInterface
- Parameters:
level
- The contrast level as a double precision floating point number in [0,2]. The neutral value is 1.0.
-
setContrastLevel
public void setContrastLevel(long level) -
setHueLevel
public void setHueLevel(double level) Description copied from interface:IScriptingInterface
Sets the hue level of the render system.- Specified by:
setHueLevel
in interfaceIScriptingInterface
- Parameters:
level
- The hue level as a double precision floating point number in [0,2]. The neutral value is 1.0.
-
setHueLevel
public void setHueLevel(long level) -
setSaturationLevel
public void setSaturationLevel(double level) Description copied from interface:IScriptingInterface
Sets the saturation level of the render system.- Specified by:
setSaturationLevel
in interfaceIScriptingInterface
- Parameters:
level
- The saturation level as a double precision floating point number in [0,2]. The neutral value is 1.0.
-
setSaturationLevel
public void setSaturationLevel(long level) -
setGammaCorrectionLevel
public void setGammaCorrectionLevel(double level) Description copied from interface:IScriptingInterface
Sets the gamma correction level.- Specified by:
setGammaCorrectionLevel
in interfaceIScriptingInterface
- Parameters:
level
- The gamma correction level in [0,3] as a floating point number. The neutral value is 1.2.
-
setGammaCorrectionLevel
public void setGammaCorrectionLevel(long level) -
setHDRToneMappingType
Description copied from interface:IScriptingInterface
Sets the high dynamic range tone mapping algorithm type. The types can be:- "auto" - performs an automatic HDR tone mapping based on the current luminosity of the scene
- "exposure" - performs an exposure-based HDR tone mapping. The exposure value must be set with
IScriptingInterface.setExposureToneMappingLevel(double)
- "aces" - performs the ACES tone mapping
- "uncharted" - performs the tone mapping implemented in Uncharted
- "filmic" - performs a filmic tone mapping
- "none" - no HDR tone mapping
- Specified by:
setHDRToneMappingType
in interfaceIScriptingInterface
- Parameters:
type
- The HDR tone mapping type. One of ["auto"|"exposure"|"aces"|"uncharted"|"filmic"|"none"].
-
setExposureToneMappingLevel
public void setExposureToneMappingLevel(double level) Description copied from interface:IScriptingInterface
Sets the exposure level.- Specified by:
setExposureToneMappingLevel
in interfaceIScriptingInterface
- Parameters:
level
- The exposure level in [0,n]. Set to 0 to disable exposure tone mapping.
-
setExposureToneMappingLevel
public void setExposureToneMappingLevel(long level) -
setCubemapMode
Description copied from interface:IScriptingInterface
Enables and disables the cubemap mode.- Specified by:
setCubemapMode
in interfaceIScriptingInterface
- Parameters:
state
- The boolean state. True to activate, false to deactivate.projection
- The projection as a string.
-
setPanoramaMode
public void setPanoramaMode(boolean state) Description copied from interface:IScriptingInterface
Enables or disables the panorama mode.- Specified by:
setPanoramaMode
in interfaceIScriptingInterface
- Parameters:
state
- The boolean state. True to activate, false to deactivate.
-
setReprojectionMode
Description copied from interface:IScriptingInterface
Sets the re-projection mode. Possible modes are:- "disabled"
- "default"
- "accurate"
- "stereographic_screen"
- "stereographic_long"
- "stereographic_short"
- "stereographic_180"
- "lambert_screen"
- "lambert_long"
- "lambert_short"
- "lambert_180"
- "orthographic_screen"
- "orthographic_long"
- "orthographic_short"
- "orthographic_180"
- Specified by:
setReprojectionMode
in interfaceIScriptingInterface
- Parameters:
mode
- The re-projection mode, as a string.
-
setBackBufferScale
public void setBackBufferScale(float scale) Description copied from interface:IScriptingInterface
Sets the scaling factor for the back-buffer.- Specified by:
setBackBufferScale
in interfaceIScriptingInterface
- Parameters:
scale
- The back-buffer scaling factor.
-
setIndexOfRefraction
public void setIndexOfRefraction(float ior) Description copied from interface:IScriptingInterface
Sets index of refraction of celestial sphere in orthosphere view mode.- Specified by:
setIndexOfRefraction
in interfaceIScriptingInterface
- Parameters:
ior
- The index of refraction.
-
setPlanetariumMode
public void setPlanetariumMode(boolean state) Description copied from interface:IScriptingInterface
Enables or disables the planetarium mode.- Specified by:
setPlanetariumMode
in interfaceIScriptingInterface
- Parameters:
state
- The boolean state. True to activate, false to deactivate.
-
setCubemapResolution
public void setCubemapResolution(int resolution) Description copied from interface:IScriptingInterface
Sets the resolution (width and height are the same) of each side of the frame buffers used to capture each of the 6 directions that go into the cubemap to construct the equirectangular image for the 360 mode. This should roughly be 1/3 of the output resolution at which the 360 mode are to be captured (or screen resolution).- Specified by:
setCubemapResolution
in interfaceIScriptingInterface
- Parameters:
resolution
- The resolution of each of the sides of the cubemap for the 360 mode.
-
setCubemapProjection
Description copied from interface:IScriptingInterface
Sets the cubemap projection to use. Accepted values are:- "equirectangular" - spherical projection.
- "cylindrical" - cylindrical projection.
- "hammer" - Hammer projection.
- "orthographic" - orthographic projection, with the two hemispheres side-by-side.
- "orthosphere" - orthographic projection, with the two hemispheres overlaid. That gives an outside view of the camera's celestial sphere.
- "orthosphere_crosseye" - same as orthosphere, but duplicated to produce a stereoscopic cross-eye image (side by side).
- "azimuthal_equidistant" - azimuthal equidistant projection, used in Planetarium mode.
CubmeapProjectionEffect
for possible values.- Specified by:
setCubemapProjection
in interfaceIScriptingInterface
- Parameters:
projection
- The projection, in ["equirectangular"|"cylindrical"|"hammer"|"orthographic"|"orthosphere"|"orthosphere_crossye"|"azimuthal_equidistant"].
-
setOrthosphereViewMode
public void setOrthosphereViewMode(boolean state) Description copied from interface:IScriptingInterface
Enables or disables the orthosphere view mode.- Specified by:
setOrthosphereViewMode
in interfaceIScriptingInterface
- Parameters:
state
- The state, true to activate and false to deactivate.
-
setStereoscopicMode
public void setStereoscopicMode(boolean state) Description copied from interface:IScriptingInterface
Enables and disables the stereoscopic mode.- Specified by:
setStereoscopicMode
in interfaceIScriptingInterface
- Parameters:
state
- The boolean state. True to activate, false to deactivate.
-
setStereoscopicProfile
public void setStereoscopicProfile(int index) Description copied from interface:IScriptingInterface
Changes the stereoscopic profile.- Specified by:
setStereoscopicProfile
in interfaceIScriptingInterface
- Parameters:
index
- The index of the new profile:- 0 - VR_HEADSET
- 1 - HD_3DTV
- 2 - CROSSEYE
- 3 - PARALLEL_VIEW
- 4 - ANAGLYPHIC (red-cyan)
-
getCurrentFrameNumber
public long getCurrentFrameNumber()Description copied from interface:IScriptingInterface
Gets the current frame number. Useful for timing actions in scripts.- Specified by:
getCurrentFrameNumber
in interfaceIScriptingInterface
- Returns:
- The current frame number.
-
setLensFlare
public void setLensFlare(boolean state) Description copied from interface:IScriptingInterface
Enables or disables the lens flare effect.- Specified by:
setLensFlare
in interfaceIScriptingInterface
- Parameters:
state
- Activate (true) or deactivate (false).
-
setLensFlare
public void setLensFlare(double strength) Description copied from interface:IScriptingInterface
Sets the strength of the lens flare effect, in [0,1]. Set to 0 to disable the effect.- Specified by:
setLensFlare
in interfaceIScriptingInterface
- Parameters:
strength
- The strength or intensity of the lens flare, in [0,1].
-
setMotionBlur
public void setMotionBlur(boolean active) Description copied from interface:IScriptingInterface
Enables or disables the camera motion blur effect.- Specified by:
setMotionBlur
in interfaceIScriptingInterface
- Parameters:
active
- Activate (true) or deactivate (false).
-
setMotionBlur
public void setMotionBlur(double strength) Description copied from interface:IScriptingInterface
Enables or disables the camera motion blur effect.- Specified by:
setMotionBlur
in interfaceIScriptingInterface
- Parameters:
strength
- The strength of camera the motion blur effect, in [Constants.MOTIONBLUR_MIN
,Constants.MOTIONBLUR_MAX
].
-
setStarGlow
public void setStarGlow(boolean state) Description copied from interface:IScriptingInterface
Enables or disables the stars glowing over objects.- Specified by:
setStarGlow
in interfaceIScriptingInterface
- Parameters:
state
- Activate (true) or deactivate (false).
-
setStarGlowOverObjects
public void setStarGlowOverObjects(boolean state) Description copied from interface:IScriptingInterface
Enables or disables stars' light glowing and spilling over closer objects.- Specified by:
setStarGlowOverObjects
in interfaceIScriptingInterface
- Parameters:
state
- Enable (true) or disable (false).
-
setBloom
public void setBloom(float value) Description copied from interface:IScriptingInterface
Sets the strength value for the bloom effect.- Specified by:
setBloom
in interfaceIScriptingInterface
- Parameters:
value
- Bloom strength between 0 and 100. Set to 0 to deactivate the bloom.
-
setChromaticAberration
public void setChromaticAberration(float value) Description copied from interface:IScriptingInterface
Sets the amount of chromatic aberration. Set to 0 to disable the effect.- Specified by:
setChromaticAberration
in interfaceIScriptingInterface
- Parameters:
value
- Chromatic aberration amount in [0,0.05].
-
setBloom
public void setBloom(int level) -
setSmoothLodTransitions
public void setSmoothLodTransitions(boolean value) Description copied from interface:IScriptingInterface
Sets the value of smooth lod transitions, allowing or disallowing octant fade-ins of as they come into view.- Specified by:
setSmoothLodTransitions
in interfaceIScriptingInterface
- Parameters:
value
- Activate (true) or deactivate (false).
-
rotate3
public double[] rotate3(double[] vector, double[] axis, double angle) Description copied from interface:IScriptingInterface
Rotates a 3D vector around the given axis by the specified angle in degrees. Vectors are arrays with 3 components. If more components are there, they are ignored.- Specified by:
rotate3
in interfaceIScriptingInterface
- Parameters:
vector
- Vector to rotate, with at least 3 components.axis
- The axis, with at least 3 components.angle
- Angle in degrees.- Returns:
- The new vector, rotated.
-
rotate3
public double[] rotate3(double[] vector, double[] axis, long angle) -
rotate3
-
rotate3
-
rotate2
public double[] rotate2(double[] vector, double angle) Description copied from interface:IScriptingInterface
Rotates a 2D vector by the specified angle in degrees, counter-clockwise assuming that the y axis points up.- Specified by:
rotate2
in interfaceIScriptingInterface
- Parameters:
vector
- Vector to rotate, with at least 2 components.- Returns:
- The new vector, rotated.
-
rotate2
public double[] rotate2(double[] vector, long angle) -
rotate2
-
rotate2
-
cross3
public double[] cross3(double[] vec1, double[] vec2) Description copied from interface:IScriptingInterface
Computes the cross product between the two 3D vectors.- Specified by:
cross3
in interfaceIScriptingInterface
- Parameters:
vec1
- First 3D vector.vec2
- Second 3D vector.- Returns:
- Cross product 3D vector.
-
cross3
-
dot3
public double dot3(double[] vec1, double[] vec2) Description copied from interface:IScriptingInterface
Computes the dot product between the two 3D vectors.- Specified by:
dot3
in interfaceIScriptingInterface
- Parameters:
vec1
- First 3D vector.vec2
- Second 3D vector.- Returns:
- The dot product scalar.
-
dot3
-
addTrajectoryLine
Description copied from interface:IScriptingInterface
Adds a new trajectory object with the given name, points and color. The trajectory is rendered using the 'line renderer' setting in the preferences dialog. This is a very similar call toIScriptingInterface.addPolyline(String, double[], double[])
, but in this case the line can be rendered with higher quality polyline quadstrips.- Specified by:
addTrajectoryLine
in interfaceIScriptingInterface
- Parameters:
name
- The name to identify the trajectory, to possibly remove it later.points
- The points of the trajectory. It is an array containing all the points as in [x0, y0, z0, x1, y1, z1, ..., xn, yn, zn] in the internal reference system.color
- The color of the trajectory as an array of RGBA (red, green, blue, alpha) values in [0,1].
-
addTrajectoryLine
-
addTrajectoryLine
Description copied from interface:IScriptingInterface
Adds a new trajectory object with the given name, points and color. The trajectory is rendered using the 'line renderer' setting in the preferences dialog. This is a very similar call toIScriptingInterface.addPolyline(String, double[], double[])
, but in this case the line can be rendered with higher quality polyline quadstrips.- Specified by:
addTrajectoryLine
in interfaceIScriptingInterface
- Parameters:
name
- The name to identify the trajectory, to possibly remove it later.points
- The points of the trajectory. It is an array containing all the points as in [x0, y0, z0, x1, y1, z1, ..., xn, yn, zn] in the internal reference system.color
- The color of the trajectory as an array of RGBA (red, green, blue, alpha) values in [0,1].trailMap
- The bottom mapping position for the trail. The orbit trail assigns an opacity value to each point of the orbit, where 1 is the location of the last point in the points list, and 0 is the first one. This mapping parameter defines the location in the orbit (in [0,1]) where we map the opacity value of 0. Set to 0 to have a full trail. Set to 0.5 to have a trail that spans half the orbit. Set to 1 to have no orbit at all. Set to negative to disable the trail.
-
addTrajectoryLine
-
addPolyline
Description copied from interface:IScriptingInterface
Adds a new polyline with the given name, points and color. The polyline will be created with the 'Others' component type, so you need to enable the visibility of 'Others' in order to see it. The default primitive of GL_LINE_STRIP is used.- Specified by:
addPolyline
in interfaceIScriptingInterface
- Parameters:
name
- The name to identify the polyline, to possibly remove it later.points
- The points of the polyline. It is an array containing all the points as in [x0, y0, z0, x1, y1, z1, ..., xn, yn, zn] in the internal reference system.color
- The color of the polyline as an array of RGBA (red, green, blue, alpha) values in [0,1].
-
addPolyline
-
addPolyline
Description copied from interface:IScriptingInterface
Adds a new polyline with the given name, points, color and line width. The polyline will be created with the 'Others' component type, so you need to enable the visibility of 'Others' in order to see it. The default primitive type of GL_LINE_STRIP is used.- Specified by:
addPolyline
in interfaceIScriptingInterface
- Parameters:
name
- The name to identify the polyline, to possibly remove it later.points
- The points of the polyline. It is an array containing all the points as in [x0, y0, z0, x1, y1, z1, ..., xn, yn, zn].color
- The color of the polyline as an array of RGBA (red, green, blue, alpha) values in [0,1].lineWidth
- The line width. Usually a value between 1 (default) and 10.
-
addPolyline
public void addPolyline(String name, double[] points, double[] color, double lineWidth, boolean arrowCaps) Description copied from interface:IScriptingInterface
Adds a new polyline with the given name, points, color and line width. The polyline will be created with the 'Others' component type, so you need to enable the visibility of 'Others' in order to see it. The default primitive type of GL_LINE_STRIP is used. This version enables the addition of arrow caps. In the case arrow caps are enabled, the line will be rendered in CPU mode (no VBO), making it slightly slower, especially for lines with many points. The arrow cap is added at the first point in the series.- Specified by:
addPolyline
in interfaceIScriptingInterface
- Parameters:
name
- The name to identify the polyline, to possibly remove it later.points
- The points of the polyline. It is an array containing all the points as in [x0, y0, z0, x1, y1, z1, ..., xn, yn, zn].color
- The color of the polyline as an array of RGBA (red, green, blue, alpha) values in [0,1].lineWidth
- The line width. Usually a value between 1 (default) and 10.arrowCaps
- Whether to represent arrow caps. If enabled, the line is rendered in CPU mode, which is slower.
-
addPolyline
public void addPolyline(String name, double[] points, double[] color, double lineWidth, int primitive) Description copied from interface:IScriptingInterface
Adds a new polyline with the given name, points, color, line width and primitive. The polyline will be created with the 'Others' component type, so you need to enable the visibility of 'Others' in order to see it.- Specified by:
addPolyline
in interfaceIScriptingInterface
- Parameters:
name
- The name to identify the polyline, to possibly remove it later.points
- The points of the polyline. It is an array containing all the points as in [x0, y0, z0, x1, y1, z1, ..., xn, yn, zn].color
- The color of the polyline as an array of RGBA (red, green, blue, alpha) values in [0,1].lineWidth
- The line width. Usually a value between 1 (default) and 10.primitive
- The GL primitive: GL_LINES=1, GL_LINE_LOOP=2, GL_LINE_STRIP=3
-
addPolyline
public void addPolyline(String name, double[] points, double[] color, double lineWidth, int primitive, boolean arrowCaps) Description copied from interface:IScriptingInterface
Adds a new polyline with the given name, points, color, line width, primitive and arrow caps. The polyline will be created with the 'Others' component type, so you need to enable the visibility of 'Others' in order to see it. This version enables the addition of arrow caps. In the case arrow caps are enabled, the line will be rendered in CPU mode (no VBO), making it slightly slower, especially for lines with many points. The arrow cap is added at the first point in the series.- Specified by:
addPolyline
in interfaceIScriptingInterface
- Parameters:
name
- The name to identify the polyline, to possibly remove it later.points
- The points of the polyline. It is an array containing all the points as in [x0, y0, z0, x1, y1, z1, ..., xn, yn, zn].color
- The color of the polyline as an array of RGBA (red, green, blue, alpha) values in [0,1].lineWidth
- The line width. Usually a value between 1 (default) and 10.primitive
- The GL primitive: GL_LINES=1, GL_LINE_LOOP=2, GL_LINE_STRIP=3arrowCaps
- Whether to represent arrow caps. If enabled, the line is rendered in CPU mode, which is slower.
-
addLineObject
-
addLineObject
-
addPolyline
-
addPolyline
-
addPolyline
-
addPolyline
-
addPolyline
-
addPolyline
-
addPolyline
-
addPolyline
-
addPolyline
-
addPolyline
-
removeModelObject
Description copied from interface:IScriptingInterface
Removes the model object identified by the given name from the internal scene graph model of Gaia Sky, if it exists. If the object has children, they are removed recursively. Be careful with this function, as it can have unexpected side effects depending on what objects are removed. For example,
gs.removeModelObject("Earth")
removes the Earth, the Moon, Gaia and any dependent object from Gaia Sky.
- Specified by:
removeModelObject
in interfaceIScriptingInterface
- Parameters:
name
- The name of the object to remove.
-
postRunnable
Description copied from interface:IScriptingInterface
Posts aRunnable
to the main loop thread that runs once after the update-scene stage, and before the render stage.- Specified by:
postRunnable
in interfaceIScriptingInterface
- Parameters:
runnable
- The runnable to run.
-
parkRunnable
Description copied from interface:IScriptingInterface
- Specified by:
parkRunnable
in interfaceIScriptingInterface
-
parkSceneRunnable
Description copied from interface:IScriptingInterface
Parks an update
Runnable
to the main loop thread, and keeps it running every frame until it finishes or it is unparked byIScriptingInterface.unparkRunnable(String)
. This object runs after the update-scene stage and before the render stage, so it is intended for updating scene objects.Be careful with this function, as it probably needs a cleanup before the script is finished. Otherwise, all parked runnables will keep running until Gaia Sky is restarted, so make sure to remove them with
IScriptingInterface.unparkRunnable(String)
if needed.- Specified by:
parkSceneRunnable
in interfaceIScriptingInterface
- Parameters:
id
- The string id to identify the runnable.runnable
- The scene update runnable to park.
-
parkCameraRunnable
Description copied from interface:IScriptingInterface
Parks a camera update
Runnable
to the main loop thread, and keeps it running every frame until it finishes or it is unparked byIScriptingInterface.unparkRunnable(String)
. This object runs after the update-camera stage and before the update-scene, so it is intended for updating the camera only.Be careful with this function, as it probably needs a cleanup before the script is finished. Otherwise, all parked runnables will keep running until Gaia Sky is restarted, so make sure to remove them with
IScriptingInterface.unparkRunnable(String)
if needed.- Specified by:
parkCameraRunnable
in interfaceIScriptingInterface
- Parameters:
id
- The string id to identify the runnable.runnable
- The camera update runnable to park.
-
removeRunnable
Description copied from interface:IScriptingInterface
Removes the runnable with the given id, if any. Use this method to remove previously parked scene and camera runnables.- Specified by:
removeRunnable
in interfaceIScriptingInterface
- Parameters:
id
- The id of the runnable to remove.
-
unparkRunnable
Description copied from interface:IScriptingInterface
Removes the runnable with the given id, if any.- Specified by:
unparkRunnable
in interfaceIScriptingInterface
- Parameters:
id
- The id of the runnable to remove.
-
setCameraState
public void setCameraState(double[] pos, double[] dir, double[] up) Description copied from interface:IScriptingInterface
Sets the camera state (position, direction and up vector).- Specified by:
setCameraState
in interfaceIScriptingInterface
- Parameters:
pos
- The position of the camera in internal units, not Km.dir
- The direction of the camera.up
- The up vector of the camera.
-
setCameraState
-
setCameraStateAndTime
public void setCameraStateAndTime(double[] pos, double[] dir, double[] up, long time) Description copied from interface:IScriptingInterface
Sets the camera state (position, direction and up vector) plus the current time.- Specified by:
setCameraStateAndTime
in interfaceIScriptingInterface
- Parameters:
pos
- The position of the camera in internal units, not Km.dir
- The direction of the camera.up
- The up vector of the camera.time
- The new time of the camera as the number of milliseconds since the epoch (Jan 1, 1970).
-
setCameraStateAndTime
-
resetImageSequenceNumber
public void resetImageSequenceNumber()Description copied from interface:IScriptingInterface
Resets to zero the image sequence number used to generate the file names of the frame output images.- Specified by:
resetImageSequenceNumber
in interfaceIScriptingInterface
-
loadDataset
Description copied from interface:IScriptingInterface
Loads a VOTable, FITS, CSV or JSON dataset file with the given name. In this version, the loading happens synchronously, so the catalog is available to Gaia Sky immediately after this call returns. The actual loading process is carried out making educated guesses about semantics using UCDs and column names. Please check the official documentation for a complete reference on what can and what can't be loaded.- Specified by:
loadDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset, used to identify the subsequent operations on the dataset.absolutePath
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
file to load.- Returns:
- False if the dataset could not be loaded, true otherwise.
-
loadDataset
Description copied from interface:IScriptingInterface
Loads a VOTable, FITS, CSV or JSON dataset file with the given name. The call can be made synchronous or asynchronous.
Ifsync
is true, the call acts exactly likeIScriptingInterface.loadDataset(String, String)
.
Ifsync
is false, the loading happens in a new thread and the call returns immediately. In this case, you can useIScriptingInterface.hasDataset(String)
to check whether the dataset is already loaded and available. The actual loading process is carried out making educated guesses about semantics using UCDs and column names. Please check the official documentation for a complete reference on what can and what can't be loaded.- Specified by:
loadDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset, used to identify the subsequent operations on the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the file to load.sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadDataset
public boolean loadDataset(String dsName, String path, CatalogInfo.CatalogInfoSource type, boolean sync) -
loadDataset
public boolean loadDataset(String dsName, String path, CatalogInfo.CatalogInfoSource type, DatasetOptions datasetOptions, boolean sync) Description copied from interface:IScriptingInterface
Loads a VOTable, FITS, CSV or JSON dataset file with the given name. The call can be made synchronous or asynchronous.
Ifsync
is true, the call acts exactly likeIScriptingInterface.loadDataset(String, String, boolean)
.
Ifsync
is false, the loading happens in a new thread and the call returns immediately. In this case, you can useIScriptingInterface.hasDataset(String)
to check whether the dataset is already loaded and available. The actual loading process is carried out making educated guesses about semantics using UCDs and column names. Please check the official documentation for a complete reference on what can and what can't be loaded. This version includes the catalog info type.- Specified by:
loadDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset, used to identify the subsequent operations on the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the file to load.type
- TheCatalogInfo.CatalogInfoSource
object to use as the dataset type.datasetOptions
- TheDatasetOptions
object holding the options for this dataset.sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadDataset
public boolean loadDataset(String dsName, uk.ac.starlink.util.DataSource ds, CatalogInfo.CatalogInfoSource type, DatasetOptions datasetOptions, boolean sync) -
loadStarDataset
Description copied from interface:IScriptingInterface
Loads a star dataset from a VOTable, a CSV or a FITS file. The dataset does not have a label. The call can be made synchronous or asynchronous.
Ifsync
is true, the call waits until the dataset is loaded and then returns. Ifsync
is false, the loading happens in a new thread and the call returns immediately. It includes some parameters to apply to the new star group.- Specified by:
loadStarDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
,.csv
or.fits
file to load.sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadStarDataset
Description copied from interface:IScriptingInterface
Loads a star dataset from a VOTable, a CSV or a FITS file. The dataset does not have a label. The call can be made synchronous or asynchronous.
Ifsync
is true, the call waits until the dataset is loaded and then returns. Ifsync
is false, the loading happens in a new thread and the call returns immediately. It includes some parameters to apply to the new star group.- Specified by:
loadStarDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
,.csv
or.fits
file to load.magnitudeScale
- Scaling additive factor to apply to the star magnitudes, as inappmag = appmag - magnitudeScale
.sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadStarDataset
public boolean loadStarDataset(String dsName, String path, double magnitudeScale, double[] labelColor, boolean sync) Description copied from interface:IScriptingInterface
Loads a star dataset from a VOTable, a CSV or a FITS file. The call can be made synchronous or asynchronous.
Ifsync
is true, the call waits until the dataset is loaded and then returns. Ifsync
is false, the loading happens in a new thread and the call returns immediately. It includes some parameters to apply to the new star group.- Specified by:
loadStarDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
,.csv
or.fits
file to load.magnitudeScale
- Scaling additive factor to apply to the star magnitudes, as inappmag = appmag - magnitudeScale
.labelColor
- The color of the labels, as an array of RGBA (red, green, blue, alpha) values in [0,1].sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadStarDataset
-
loadStarDataset
public boolean loadStarDataset(String dsName, String path, double magnitudeScale, double[] labelColor, double[] fadeIn, double[] fadeOut, boolean sync) Description copied from interface:IScriptingInterface
Loads a star dataset from a VOTable, a CSV or a FITS file. The call can be made synchronous or asynchronous.
Ifsync
is true, the call waits until the dataset is loaded and then returns. Ifsync
is false, the loading happens in a new thread and the call returns immediately. It includes some parameters to apply to the new star group.- Specified by:
loadStarDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
,.csv
or.fits
file to load.magnitudeScale
- Scaling additive factor to apply to the star magnitudes, as inappmag = appmag - magnitudeScale
.labelColor
- The color of the labels, as an array of RGBA (red, green, blue, alpha) values in [0,1].fadeIn
- Two values which represent the fade in mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.fadeOut
- Two values which represent the fade out mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadStarDataset
-
loadStarDataset
public boolean loadStarDataset(String dsName, String path, CatalogInfo.CatalogInfoSource type, double magnitudeScale, double[] labelColor, double[] fadeIn, double[] fadeOut, boolean sync) -
loadParticleDataset
public boolean loadParticleDataset(String dsName, String path, double profileDecay, double[] particleColor, double colorNoise, double[] labelColor, double particleSize, String ct, boolean sync) Description copied from interface:IScriptingInterface
Loads a particle dataset (point cloud) from a VOTable, a CSV or a FITS file. The call can be made synchronous or asynchronous.
Ifsync
is true, the call waits until the dataset is loaded and then returns. Ifsync
is false, the loading happens in a new thread and the call returns immediately. It includes some parameters to apply to the new star group.- Specified by:
loadParticleDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
,.csv
or.fits
file to load.profileDecay
- The profile decay of the particles as in 1 - distCentre^decay.particleColor
- The base color of the particles, as an array of RGBA (red, green, blue, alpha) values in [0,1].colorNoise
- In [0,1], the noise to apply to the color so that each particle gets a slightly different tone. Set to 0 so that all particles get the same color.labelColor
- The color of the labels, as an array of RGBA (red, green, blue, alpha) values in [0,1].particleSize
- The size of the particles in pixels.ct
- The name of the component type to use like "Stars", "Galaxies", etc. (seeComponentTypes.ComponentType
).sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadParticleDataset
-
loadParticleDataset
public boolean loadParticleDataset(String dsName, String path, double profileDecay, double[] particleColor, double colorNoise, double[] labelColor, double particleSize, String ct, double[] fadeIn, double[] fadeOut, boolean sync) Description copied from interface:IScriptingInterface
Loads a particle dataset (point cloud) from a VOTable, a CSV or a FITS file. The call can be made synchronous or asynchronous.
Ifsync
is true, the call waits until the dataset is loaded and then returns. Ifsync
is false, the loading happens in a new thread and the call returns immediately. It includes some parameters to apply to the new star group.- Specified by:
loadParticleDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
,.csv
or.fits
file to load.profileDecay
- The profile decay of the particles as in 1 - distCentre^decay.particleColor
- The base color of the particles, as an array of RGBA (red, green, blue, alpha) values in [0,1].colorNoise
- In [0,1], the noise to apply to the color so that each particle gets a slightly different tone. Set to 0 so that all particles get the same color.labelColor
- The color of the labels, as an array of RGBA (red, green, blue, alpha) values in [0,1].particleSize
- The size of the particles in pixels.ct
- The name of the component type to use like "Stars", "Galaxies", etc. (seeComponentTypes.ComponentType
).fadeIn
- Two values which represent the fade in mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.fadeOut
- Two values which represent the fade out mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadParticleDataset
-
loadParticleDataset
public boolean loadParticleDataset(String dsName, String path, double profileDecay, double[] particleColor, double colorNoise, double[] labelColor, double particleSize, double[] sizeLimits, String ct, double[] fadeIn, double[] fadeOut, boolean sync) Description copied from interface:IScriptingInterface
Loads a particle dataset (point cloud) from a VOTable, a CSV or a FITS file. The call can be made synchronous or asynchronous.
Ifsync
is true, the call waits until the dataset is loaded and then returns. Ifsync
is false, the loading happens in a new thread and the call returns immediately. It includes some parameters to apply to the new star group.- Specified by:
loadParticleDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
,.csv
or.fits
file to load.profileDecay
- The profile decay of the particles as in 1 - distCentre^decay.particleColor
- The base color of the particles, as an array of RGBA (red, green, blue, alpha) values in [0,1].colorNoise
- In [0,1], the noise to apply to the color so that each particle gets a slightly different tone. Set to 0 so that all particles get the same color.labelColor
- The color of the labels, as an array of RGBA (red, green, blue, alpha) values in [0,1].particleSize
- The size of the particles in pixels.sizeLimits
- The minimum and maximum size of the particles in pixels.ct
- The name of the component type to use like "Stars", "Galaxies", etc. (seeComponentTypes.ComponentType
).fadeIn
- Two values which represent the fade in mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.fadeOut
- Two values which represent the fade out mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadParticleDataset
-
loadParticleDataset
public boolean loadParticleDataset(String dsName, String path, double profileDecay, double[] particleColor, double colorNoise, double[] labelColor, double particleSize, double[] sizeLimits, ComponentTypes.ComponentType ct, double[] fadeIn, double[] fadeOut, boolean sync) -
loadParticleDataset
public boolean loadParticleDataset(String dsName, String path, CatalogInfo.CatalogInfoSource type, double profileDecay, double[] particleColor, double colorNoise, double[] labelColor, double particleSize, double[] sizeLimits, ComponentTypes.ComponentType ct, double[] fadeIn, double[] fadeOut, boolean sync) -
loadStarClusterDataset
public boolean loadStarClusterDataset(String dsName, String path, double[] particleColor, double[] fadeIn, double[] fadeOut, boolean sync) Description copied from interface:IScriptingInterface
Loads a star cluster dataset from a CSV, VOTable or FITS file. The file needs the columns with the following names: name, ra, dec, dist, pmra, pmdec, radius, radvel. Uses the same color for clusters and labels. The call can be made synchronous or asynchronous. Ifsync
is true, the call waits until the dataset is loaded and then returns. Ifsync
is false, the loading happens in a new thread and the call returns immediately. It includes some parameters to apply to the new star group.- Specified by:
loadStarClusterDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
,.csv
or.fits
file to load.particleColor
- The base color of the particles and labels, as an array of RGBA (red, green, blue, alpha) values in [0,1].fadeIn
- Two values which represent the fade in mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.fadeOut
- Two values which represent the fade out mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadStarClusterDataset
-
loadStarClusterDataset
public boolean loadStarClusterDataset(String dsName, String path, double[] particleColor, double[] labelColor, double[] fadeIn, double[] fadeOut, boolean sync) Description copied from interface:IScriptingInterface
Loads a star cluster dataset from a CSV, VOTable or FITS file. The file needs the columns with the following names: name, ra, dec, dist, pmra, pmdec, radius, radvel. The call can be made synchronous or asynchronous. Ifsync
is true, the call waits until the dataset is loaded and then returns. Ifsync
is false, the loading happens in a new thread and the call returns immediately. It includes some parameters to apply to the new star group.- Specified by:
loadStarClusterDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
,.csv
or.fits
file to load.particleColor
- The base color of the particles, as an array of RGBA (red, green, blue, alpha) values in [0,1].labelColor
- The color of the labels, as an array of RGBA (red, green, blue, alpha) values in [0,1].fadeIn
- Two values which represent the fade in mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.fadeOut
- Two values which represent the fade out mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadStarClusterDataset
-
loadStarClusterDataset
public boolean loadStarClusterDataset(String dsName, String path, double[] particleColor, String ct, double[] fadeIn, double[] fadeOut, boolean sync) Description copied from interface:IScriptingInterface
Loads a star cluster dataset from a CSV, VOTable or FITS file. The file needs the columns with the following names: name, ra, dec, dist, pmra, pmdec, radius, radvel. Uses the same color for clusters and labels. The call can be made synchronous or asynchronous. Ifsync
is true, the call waits until the dataset is loaded and then returns. Ifsync
is false, the loading happens in a new thread and the call returns immediately. It includes some parameters to apply to the new star group.- Specified by:
loadStarClusterDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
,.csv
or.fits
file to load.particleColor
- The base color of the particles and labels, as an array of RGBA (red, green, blue, alpha) values in [0,1].ct
- The name of the component type to use (seeComponentTypes.ComponentType
).fadeIn
- Two values which represent the fade in mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.fadeOut
- Two values which represent the fade out mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadStarClusterDataset
-
loadStarClusterDataset
public boolean loadStarClusterDataset(String dsName, String path, double[] particleColor, double[] labelColor, String ct, double[] fadeIn, double[] fadeOut, boolean sync) Description copied from interface:IScriptingInterface
Loads a star cluster dataset from a CSV, VOTable or FITS file. The file needs the columns with the following names: name, ra, dec, dist, pmra, pmdec, radius, radvel. The call can be made synchronous or asynchronous. Ifsync
is true, the call waits until the dataset is loaded and then returns. Ifsync
is false, the loading happens in a new thread and the call returns immediately. It includes some parameters to apply to the new star group.- Specified by:
loadStarClusterDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
,.csv
or.fits
file to load.particleColor
- The base color of the particles and labels, as an array of RGBA (red, green, blue, alpha) values in [0,1].labelColor
- The color of the labels, as an array of RGBA (red, green, blue, alpha) values in [0,1].ct
- The name of the component type to use (seeComponentTypes.ComponentType
).fadeIn
- Two values which represent the fade in mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.fadeOut
- Two values which represent the fade out mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadVariableStarDataset
public boolean loadVariableStarDataset(String dsName, String path, double magnitudeScale, double[] labelColor, double[] fadeIn, double[] fadeOut, boolean sync) Description copied from interface:IScriptingInterface
Loads a variable star dataset from a VOTable, CSV or FITS file. The variable star table must have the following columns representing the light curve:g_transit_time
: list of times as Julian days since J2010 for each of the magnitudesg_transit_mag
: list of magnitudes corresponding to the times ing_transit_times
pf
: the period in days
Ifsync
is true, the call waits until the dataset is loaded and then returns. Ifsync
is false, the loading happens in a new thread and the call returns immediately. It includes some parameters to apply to the new star group.- Specified by:
loadVariableStarDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- Absolute path (or relative to the working path of Gaia Sky) to the.vot
,.csv
or.fits
file to load.magnitudeScale
- Scaling additive factor to apply to the magnitudes in the light curve, as inappmag = appmag - magnitudeScale
.labelColor
- The color of the labels, as an array of RGBA (red, green, blue, alpha) values in [0,1].fadeIn
- Two values which represent the fade in mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.fadeOut
- Two values which represent the fade out mapping distances (in parsecs, as distance from camera to the Sun) of this dataset. Set to null to disable.sync
- Whether the load must happen synchronously or asynchronously.- Returns:
- False if the dataset could not be loaded (sync mode). True if it could not be loaded (sync mode), or
sync
is false.
-
loadVariableStarDataset
public boolean loadVariableStarDataset(String dsName, String path, CatalogInfo.CatalogInfoSource type, double magnitudeScale, double[] labelColor, double[] fadeIn, double[] fadeOut, boolean sync) -
loadStarClusterDataset
-
loadJsonCatalog
Description copied from interface:IScriptingInterface
Loads a Gaia Sky JSON dataset file asynchronously. The call returns immediately, and the dataset becomes available when it finished loading. The Gaia Sky JSON data format is described here.- Specified by:
loadJsonCatalog
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- The absolute path, or the path in the data directory, of the dataset file.- Returns:
- False if the dataset could not be loaded. True otherwise.
-
loadJsonDataset
Description copied from interface:IScriptingInterface
Loads a JSON Gaia Sky dataset file asynchronously. The call returns immediately, and the dataset becomes available when it finished loading. The Gaia Sky JSON data format is described here.- Specified by:
loadJsonDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.path
- The absolute path, or the path in the data directory, of the dataset file.- Returns:
- False if the dataset could not be loaded. True otherwise.
-
loadJsonDataset
Description copied from interface:IScriptingInterface
Loads a Gaia Sky JSON dataset file in a synchronous or asynchronous manner. The Gaia Sky JSON data format is described here.- Specified by:
loadJsonDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.pathString
- The absolute path, or the path in the data directory, of the dataset file.sync
- If true, the call does not return until the dataset is loaded and available in Gaia Sky.- Returns:
- False if the dataset could not be loaded. True otherwise.
-
loadJsonDataset
Description copied from interface:IScriptingInterface
Loads a Gaia Sky JSON dataset file in a synchronous or asynchronous manner. The Gaia Sky JSON data format is described here.- Specified by:
loadJsonDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.pathString
- The absolute path, or the path in the data directory, of the dataset file.select
- If true, focus the first object in the dataset after loading.sync
- If true, the call does not return until the dataset is loaded and available in Gaia Sky.- Returns:
- False if the dataset could not be loaded. True otherwise.
-
hasDataset
Description copied from interface:IScriptingInterface
Checks whether the dataset identified by the given name is loaded- Specified by:
hasDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset to query.- Returns:
- True if the dataset is loaded, false otherwise.
-
setDatasetTransformationMatrix
Description copied from interface:IScriptingInterface
Sets the given 4x4 matrix (in column-major order) as the transformation matrix to apply to all the data points in the dataset identified by the given name.- Specified by:
setDatasetTransformationMatrix
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.matrix
- The 16 values of the 4x4 transformation matrix in column-major order.- Returns:
- True if the dataset was found and the transformation matrix could be applied. False otherwise.
-
clearDatasetTransformationMatrix
Description copied from interface:IScriptingInterface
Clears the transformation matrix (if any) in the dataset identified by the given name.- Specified by:
clearDatasetTransformationMatrix
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset.- Returns:
- True if the dataset was found and the transformations cleared.
-
removeDataset
Description copied from interface:IScriptingInterface
Removes the dataset identified by the given name, if it exists.- Specified by:
removeDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset to remove.- Returns:
- False if the dataset could not be found.
-
hideDataset
Description copied from interface:IScriptingInterface
Hides the dataset identified by the given name, if it exists and is not hidden.- Specified by:
hideDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset to hide.- Returns:
- False if the dataset could not be found.
-
showDataset
Description copied from interface:IScriptingInterface
Shows (un-hides) the dataset identified by the given name, if it exists and is hidden- Specified by:
showDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The name of the dataset to show.- Returns:
- False if the dataset could not be found.
-
highlightDataset
Description copied from interface:IScriptingInterface
Enables or disables the dataset highlight using a plain color chosen by the system.- Specified by:
highlightDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The dataset name.highlight
- State.- Returns:
- False if the dataset could not be found.
-
highlightDataset
Description copied from interface:IScriptingInterface
Enables or disables the dataset highlight, using a plain color given by the color index:- 0 - blue
- 1 - red
- 2 - yellow
- 3 - green
- 4 - pink
- 5 - orange
- 6 - purple
- 7 - brown
- 8 - magenta
- Specified by:
highlightDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The dataset name.colorIndex
- Color index in [0,8].highlight
- Whether to highlight or not.- Returns:
- False if the dataset could not be found.
-
highlightDataset
public boolean highlightDataset(String dsName, float r, float g, float b, float a, boolean highlight) Description copied from interface:IScriptingInterface
Enables or disables the dataset highlight, using a given plain color.- Specified by:
highlightDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The dataset name.r
- Red component.highlight
- State.- Returns:
- False if the dataset could not be found.
-
highlightDataset
public boolean highlightDataset(String dsName, String attributeName, String colorMap, double minMap, double maxMap, boolean highlight) Description copied from interface:IScriptingInterface
Enables or disables the dataset highlight, using the given color map on the given attribute with the given maximum and minimum mapping values.- Specified by:
highlightDataset
in interfaceIScriptingInterface
- Parameters:
dsName
- The dataset name.attributeName
- The attribute name. You can use basic attributes (please mind the case!):- RA
- DEC
- Distance
- GalLatitude
- GalLongitude
- EclLatitude
- EclLongitude
- Mualpha
- Mudelta
- Radvel
- Absmag
- Appmag
colorMap
- The color map to use, in ["reds"|"greens"|"blues"|"rainbow18"|"rainbow"|"seismic"|"carnation"|"hotmeal"|"cool"].minMap
- The minimum mapping value.maxMap
- The maximum mapping value.highlight
- State.- Returns:
- False if the dataset could not be found.
-
setDatasetHighlightSizeFactor
Description copied from interface:IScriptingInterface
Sets the size increase factor of this dataset when highlighted.- Specified by:
setDatasetHighlightSizeFactor
in interfaceIScriptingInterface
- Parameters:
dsName
- The dataset name.sizeFactor
- The size factor to apply to the particles when highlighted, must be in [Constants.MIN_DATASET_SIZE_FACTOR
,Constants.MAX_DATASET_SIZE_FACTOR
].- Returns:
- False if the dataset could not be found.
-
setDatasetHighlightAllVisible
Description copied from interface:IScriptingInterface
Sets the 'all visible' property of datasets when highlighted. If set to true, all stars in the dataset have an increased minimum opacity when highlighted, so that they are all visible. Otherwise, stars retain their minimum opacity and base brightness.- Specified by:
setDatasetHighlightAllVisible
in interfaceIScriptingInterface
- Parameters:
dsName
- The dataset name.allVisible
- Whether all stars in the dataset should be visible when highlighted or not.- Returns:
- False if the dataset could not be found.
-
setDatasetPointSizeMultiplier
Description copied from interface:IScriptingInterface
Sets the dataset point size multiplier.- Specified by:
setDatasetPointSizeMultiplier
in interfaceIScriptingInterface
- Parameters:
dsName
- The dataset name.multiplier
- The multiplier, as a positive floating point number.
-
addShapeAroundObject
public void addShapeAroundObject(String shapeName, String shapeType, String primitive, double size, String objectName, float r, float g, float b, float a, boolean showLabel, boolean trackObject) Description copied from interface:IScriptingInterface
Creates a shape object of the given type with the given size around the object with the given name and primitive.- Specified by:
addShapeAroundObject
in interfaceIScriptingInterface
- Parameters:
shapeName
- The name of the shape object.shapeType
- The shape type, one of- sphere
- icosphere
- octahedronsphere
- ring
- cylinder
- cone
primitive
- The primitive to use, one of- lines
- triangles
size
- The size of the object in kilometers.objectName
- The name of the object to use as the position.r
- The red component of the color in [0,1].g
- The green component of the color in [0,1].b
- The blue component of the color in [0,1].a
- The alpha component of the color in [0,1].showLabel
- Whether to show a label with the name of the shape.trackObject
- Whether to track the object if/when it moves.
-
addShapeAroundObject
public void addShapeAroundObject(String shapeName, String shapeType, String primitive, String orientation, double size, String objectName, float r, float g, float b, float a, boolean showLabel, boolean trackObject) Description copied from interface:IScriptingInterface
Creates a shape object of the given type with the given size around the object with the given name, primitive and orientation.- Specified by:
addShapeAroundObject
in interfaceIScriptingInterface
- Parameters:
shapeName
- The name of the shape object.shapeType
- The shape type, one of- sphere
- icosphere
- octahedronsphere
- ring
- cylinder
- cone
primitive
- The primitive to use, one of- lines
- triangles
orientation
- The orientation to use, one of- camera
- equatorial
- ecliptic
- galactic
size
- The size of the object in kilometers.objectName
- The name of the object to use as the position.r
- The red component of the color in [0,1].g
- The green component of the color in [0,1].b
- The blue component of the color in [0,1].a
- The alpha component of the color in [0,1].showLabel
- Whether to show a label with the name of the shape.trackObject
- Whether to track the object if/when it moves.
-
backupSettings
public void backupSettings()Description copied from interface:IScriptingInterface
Creates a backup of the current settings state that can be restored later on. The settings are backed up in a stack, so multiple calls to this method put different copies of the settings on the stack in a LIFO fashion.
This method, together with
IScriptingInterface.restoreSettings()
, are useful to back up and restore the settings at the beginning and end of your scripts, respectively, and ensure that the user settings are left unmodified after your script ends.- Specified by:
backupSettings
in interfaceIScriptingInterface
-
restoreSettings
public boolean restoreSettings()Description copied from interface:IScriptingInterface
Takes the settings object at the top of the settings stack and makes it effective.
This method, together with
IScriptingInterface.backupSettings()
, are useful to back up and restore the settings at the beginning and end of your scripts, respectively, and ensure that the user settings are left unmodified after your script ends.WARN: This function applies all settings immediately, and the user interface may be re-initialized. Be aware that the UI may be set to its default state after this call.
- Specified by:
restoreSettings
in interfaceIScriptingInterface
- Returns:
- True if the stack was not empty and the settings were restored successfully. False otherwise.
-
clearSettingsStack
public void clearSettingsStack()Description copied from interface:IScriptingInterface
Clears the stack of settings objects. This will invalidate all previous calls toIScriptingInterface.backupSettings()
, effectively making the settings stack empty. CallingIScriptingInterface.restoreSettings()
after this method will return false.- Specified by:
clearSettingsStack
in interfaceIScriptingInterface
-
resetUserInterface
public void resetUserInterface()Description copied from interface:IScriptingInterface
Forces a re-initialization of the entire user interface of Gaia Sky on the fly.- Specified by:
resetUserInterface
in interfaceIScriptingInterface
-
setMaximumSimulationTime
public void setMaximumSimulationTime(long years) Description copied from interface:IScriptingInterface
Sets the maximum simulation time allowed, in years. This sets the maximum time in the future (years) and in the past (-years). This setting is not saved to the configuration and resets to 5 Myr after restart.- Specified by:
setMaximumSimulationTime
in interfaceIScriptingInterface
- Parameters:
years
- The maximum year number to allow.
-
getRefSysTransform
Description copied from interface:IScriptingInterface
Returns the column-major matrix representing the given reference system transformation.- Specified by:
getRefSysTransform
in interfaceIScriptingInterface
- Parameters:
name
-The name of the reference system transformation:
- 'equatorialtoecliptic', 'eqtoecl'
- 'ecliptictoequatorial', 'ecltoeq'
- 'galactictoequatorial', 'galtoeq'
- 'equatorialtogalactic', 'eqtogal'
- 'ecliptictogalactic', 'ecltogal
- 'galactictoecliptic', 'galtoecl
- Returns:
- The transformation matrix in column-major order.
-
setMaximumSimulationTime
public void setMaximumSimulationTime(double years) -
setMaximumSimulationTime
-
setMaximumSimulationTime
-
setMaximumSimulationTime
-
getMeterToInternalUnitConversion
public double getMeterToInternalUnitConversion()Description copied from interface:IScriptingInterface
Returns the meter to internal unit conversion factor. Use this factor to multiply your coordinates in meters to get them in internal units.- Specified by:
getMeterToInternalUnitConversion
in interfaceIScriptingInterface
- Returns:
- The factor M_TO_U.
-
getInternalUnitToMeterConversion
public double getInternalUnitToMeterConversion()Description copied from interface:IScriptingInterface
Returns the internal unit to meter conversion factor. Use this factor to multiply your coordinates in internal units to get them in meters.- Specified by:
getInternalUnitToMeterConversion
in interfaceIScriptingInterface
- Returns:
- The factor U_TO_M.
-
internalUnitsToMetres
public double internalUnitsToMetres(double internalUnits) Description copied from interface:IScriptingInterface
Converts the value in internal units to metres.- Specified by:
internalUnitsToMetres
in interfaceIScriptingInterface
- Parameters:
internalUnits
- The value in internal units.- Returns:
- The value in metres.
-
internalUnitsToKilometres
public double internalUnitsToKilometres(double internalUnits) Description copied from interface:IScriptingInterface
Converts the value in internal units to Kilometers.- Specified by:
internalUnitsToKilometres
in interfaceIScriptingInterface
- Parameters:
internalUnits
- The value in internal units.- Returns:
- The value in Kilometers.
-
internalUnitsToKilometres
public double[] internalUnitsToKilometres(double[] internalUnits) Description copied from interface:IScriptingInterface
Converts the array in internal units to Kilometers.- Specified by:
internalUnitsToKilometres
in interfaceIScriptingInterface
- Parameters:
internalUnits
- The array in internal units.- Returns:
- The array in Kilometers.
-
internalUnitsToParsecs
public double internalUnitsToParsecs(double internalUnits) Description copied from interface:IScriptingInterface
Converts the value in internal units to parsecs.- Specified by:
internalUnitsToParsecs
in interfaceIScriptingInterface
- Parameters:
internalUnits
- The value in internal units.- Returns:
- The value in parsecs.
-
internalUnitsToParsecs
public double[] internalUnitsToParsecs(double[] internalUnits) Description copied from interface:IScriptingInterface
Converts the array in internal units to parsecs.- Specified by:
internalUnitsToParsecs
in interfaceIScriptingInterface
- Parameters:
internalUnits
- The array in internal units.- Returns:
- The array in parsecs.
-
internalUnitsToKilometres
-
metresToInternalUnits
public double metresToInternalUnits(double metres) Description copied from interface:IScriptingInterface
Converts the metres to internal units.- Specified by:
metresToInternalUnits
in interfaceIScriptingInterface
- Parameters:
metres
- The value in metres.- Returns:
- The value in internal units.
-
kilometresToInternalUnits
public double kilometresToInternalUnits(double kilometres) Description copied from interface:IScriptingInterface
Converts the kilometres to internal units.- Specified by:
kilometresToInternalUnits
in interfaceIScriptingInterface
- Parameters:
kilometres
- The value in kilometers.- Returns:
- The value in internal units.
-
parsecsToInternalUnits
public double parsecsToInternalUnits(double parsecs) Description copied from interface:IScriptingInterface
Converts the parsecs to internal units.- Specified by:
parsecsToInternalUnits
in interfaceIScriptingInterface
- Parameters:
parsecs
- The value in parsecs.- Returns:
- The value in internal units.
-
kilometersToInternalUnits
public double kilometersToInternalUnits(double kilometres) -
listDatasets
Description copied from interface:IScriptingInterface
Returns the names of all datasets currently loaded.- Specified by:
listDatasets
in interfaceIScriptingInterface
- Returns:
- A list with all the names of the loaded datasets.
-
getFrameNumber
public long getFrameNumber()Description copied from interface:IScriptingInterface
Gets the current frame number. The number begins at 0 for the first frame produced when Gaia Sky is started and increases continuously.- Specified by:
getFrameNumber
in interfaceIScriptingInterface
- Returns:
- The current frame number.
-
getDefaultFramesDir
Description copied from interface:IScriptingInterface
Gets the absolute path of the default directory where the still frames are saved.- Specified by:
getDefaultFramesDir
in interfaceIScriptingInterface
- Returns:
- Absolute path of directory where still frames are saved.
-
getDefaultScreenshotsDir
Description copied from interface:IScriptingInterface
Gets the absolute path of the default directory where the screenshots are saved.- Specified by:
getDefaultScreenshotsDir
in interfaceIScriptingInterface
- Returns:
- Absolute path of directory where screenshots are saved.
-
getDefaultCameraDir
Description copied from interface:IScriptingInterface
Gets the absolute path of the default directory where the camera files are saved.- Specified by:
getDefaultCameraDir
in interfaceIScriptingInterface
- Returns:
- Absolute path of directory where camera files are saved.
-
getDefaultMusicDir
Description copied from interface:IScriptingInterface
Gets the absolute path to the location of the music files- Specified by:
getDefaultMusicDir
in interfaceIScriptingInterface
- Returns:
- Absolute path to the location of the music files
-
getDefaultMappingsDir
Description copied from interface:IScriptingInterface
Gets the absolute path to the location of the inputListener mappings.- Specified by:
getDefaultMappingsDir
in interfaceIScriptingInterface
- Returns:
- Absolute path to the location of the inputListener mappings.
-
getDataDir
Description copied from interface:IScriptingInterface
Gets the absolute path of the local data directory, configured in yourconfig.yaml
file.- Specified by:
getDataDir
in interfaceIScriptingInterface
- Returns:
- Absolute path to the location of the data files.
-
getConfigDir
Description copied from interface:IScriptingInterface
Gets the absolute path to the location of the configuration directory- Specified by:
getConfigDir
in interfaceIScriptingInterface
- Returns:
- Absolute path of config directory.
-
getLocalDataDir
Description copied from interface:IScriptingInterface
Returns the default data directory. That is ~/.gaiasky/ in Windows and macOS, and ~/.local/share/gaiasky in Linux.- Specified by:
getLocalDataDir
in interfaceIScriptingInterface
- Returns:
- Absolute path of data directory.
-
print
Description copied from interface:IScriptingInterface
Print text using the internal logging system.- Specified by:
print
in interfaceIScriptingInterface
- Parameters:
message
- The message.
-
log
Description copied from interface:IScriptingInterface
Print text using the internal logging system.- Specified by:
log
in interfaceIScriptingInterface
- Parameters:
message
- The message.
-
error
Description copied from interface:IScriptingInterface
Log an error using the internal logging system.- Specified by:
error
in interfaceIScriptingInterface
- Parameters:
message
- The error message.
-
quit
public void quit()Description copied from interface:IScriptingInterface
Initiates the quit action to terminate the program.- Specified by:
quit
in interfaceIScriptingInterface
-
notify
Description copied from interface:IObserver
Event notification call.
-