Space Objects represent nearly everything you see in the night sky, they contain the information on how an object should behave and what it looks like.
The following are considered Space Objects:
Definition
parentOPTIONAL - References another object as this object's parent. Removes the object if its parent location is set to"stellarview:removed".coordsREQUIRED - Specifies the space coordinates of the object.axis_rotationREQUIRED - Specifies the rotation of the object around its individual axes (X axis -> Z axis -> Y axis).
parent
Parent field is used to define an object's parent-child relationship. If a Parent can't be rendered, its children won't be rendered as well. Additionally, child objects can have their position and rotation be relative to the paren't position,
Definition
locationREQUIRED - Defines the path (Resource Location) the object's parent.relativeOPTIONAL - If set to true, the Space Object's relative coordinates and rotation will center around the parent. If not defined, it will be true by default. For example: If a star is defined withcoordsequal to(0, 2, 1)and it references a galaxy atcoordsequal to(0, 40, 0)as its parent, the star's absolute position will be(0, 42, 1),axis_rotationbehaves similarly.
Examples of parent definition:
Orion is a child of Milky Way, but its coordinates aren't centered around Milky Way's center:
"parent": { "location": "stellarview:star_field/spiral_galaxy/milky_way/milky_way", "relative": false },
Earth is a child of Sol and its coordinates are centered around it:
"parent": { "location": "stellarview:star/milky_way/sol" },
Removed Space Object
"parent": { "location": "stellarview:removed" },
coords
Space Coords
Stellar View is scaled 1:1 with the real-life Universe, so it uses a custom coordinate system called Space Coords to define positions of Space Objects in the Universe based on cartesian coordinates. This system uses light years and kilometers as base units of measurement and doesn't lose precision no matter how far from the center of the Universe you get (there are still issues with orbits that are too large though).
Definition Fields
x,y,zREQUIRED - Distances from the origin in the X, Y and Z axes.lyOPTIONAL - The distance in light years, adds up with kilometers if specified. 0 if left empty.kmOPTIONAL - The distance in kilometers, adds up with light years if specified. 0 if left empty.
Examples of Space Coord definition:
Sol is placed in the exact center of the simulated Universe:
"coords": { "x": {"ly": 0}, "y": {"ly": 0}, "z": {"ly": 0} },
Proxima Centauri is not even a light year away from the Alpha Centauri barycenter:
"coords": { "x": {"ly": 0, "km": -1118496303331.426}, "y": {"ly": 0, "km": -1118496303331.426}, "z": {"ly": 0, "km": -1118496303331.426} },
Equatorial Coordinate System
In real life, because of the nature of our position in space, it makes more sense to use a coordinate system based on spherical coordinates, rather than cartesian coordinates.
Which is why the equatorial coordinate system is used for specifying the position of any deep space object.
You will find these used in scientific papers, astronomical sites and on wikipedia. And since converting from one coordinate system to another is tedious, you can simply use equatorial coordinate directly and Stellar View will convert them to Space Coords internally.
All equatorial coordinates currently used in Stellar View are based on the J2000 epoch.
Definition Fields
right_ascensionREQUIRED - Right ascension of the object.hoursOPTIONAL - 0 if left empty. [Min = 0.0 | Max = 24.0]minutesOPTIONAL - 0 if left empty. [Min = 0.0 | Max = 60.0]secondsOPTIONAL - 0 if left empty. [Min = 0.0 | Max = 60.0]
declinationREQUIRED - Declination of the object.degreesOPTIONAL - 0 if left empty. [Min = -180.0 | Max = 180.0]minutesOPTIONAL - 0 if left empty. [Min = -60.0 | Max = 60.0]secondsOPTIONAL - 0 if left empty. [Min = -60.0 | Max = 60.0]
distanceREQUIRED - Distance of the object from origin.lyOPTIONAL - The distance in light years, adds up with kilometers if specified. 0 if left empty.kmOPTIONAL - The distance in kilometers, adds up with light years if specified. 0 if left empty.
Example of Equatorial coordinates definition:
You can compare the coordinates of Betelgeuse used in Stellar View with ones you can find on Wikipedia:
`"coords": { "right_ascension": {"hours": 5, "minutes": 55, "seconds": 10.30536}, "declination": {"degrees": 7, "minutes": 24, "seconds": 25.4304}, "distance": {"ly": 478} },
axis_rotation
Space Objects can be rotated in various directions. This rotation can affect its visual appearance, relative positions of its children, as well as how the sky looks on it if it's used as a View Center. Axis Rotation defines these rotations along the Y, Z and X axes in that order.
Definition Fields
x_axisREQUIRED - Rotation around the X-axis.y_axisREQUIRED - Rotation around the Y-axis.z_axisREQUIRED - Rotation around the Z-axis.secondsOPTIONAL - If true, the rotation is specified in degrees, if false it is specified in radians. True if left empty.
Example of Axis Rotation definition:
Axis Rotation of the Andromeda Galaxy:
`"axis_rotation": { "x_axis": 0, "y_axis": 32, "z_axis": -49 },