Note: this method is obsolete as of Celestia v1.3.0. See Celestia's Invisible Barycenter for how to use the new invisible object.
Occasionally in Celestia it is useful to have a completely invisible object that other objects can orbit around. The obvious example is the barycentre of a pair of bodies in mutual orbit - Celestia needs an object positioned at the centre of gravity to "carry" the orbits of the two real bodies, but we don't want to be able to see anything in that position when we view the simulated orbits.
Because of the way Celestia handles visibility, our invisible object must have several properties that would be mutually exclusive in the real world:
I've built a mesh object called "empty.3ds" which is completely
transparent, and so invisible at close range. If we colour it black,
using Color [ 0 0 0 ], it will also be invisible at long range. And if
we set its Radius and Albedo greater than any object orbiting it, we'll
force Celestia to keep rendering the orbiting bodies until they become
too dim to see (while empty.3ds stays invisible, because even a very
"bright" black object is still black!)
Many thanks to Paul "Calculus" for making the suggestions that helped to finally solve the "invisible object" problem.
The following definition for a mismatched pair of binary asteroids
should make the usefulness of empty.3ds clear.
Grant
"Binary Asteroids" "Sol"
{
Mesh "empty.3ds" # Transparent
Color [ 0 0 0 ] # Black
EllipticalOrbit {
Period 1 #
SemiMajorAxis 1 # An Earth Trojan, for fun
MeanLongitude 160 #
}
Obliquity 30 # A random tilt to the binary orbits
Radius 30 # Make it bigger ...
Albedo 1.0 # ... and brighter than the orbiting bodies
}
"A" "Sol/Binary Asteroids"
{
Mesh "roughsphere.cms"
Texture "asteroid.jpg"
EllipticalOrbit {
Period 20.5
SemiMajorAxis 45
Eccentricity 0.5
ArgOfPericenter 180
MeanLongitude 90
}
Radius 20
Albedo 0.07
}
"B" "Sol/Binary Asteroids"
{
Mesh "roughsphere.cms"
Texture "asteroid.jpg"
EllipticalOrbit {
Period 20.5 # Periods must be the same
SemiMajorAxis 360
Eccentricity 0.5 # Eccentricities must be the same
ArgOfPericenter 0 # Pericenters opposite each other
MeanLongitude 270 # Longitudes opposite each other
}
Radius 10
Albedo 0.07
}
This Web page is maintained by Selden Ball
at Wilson Lab.
Please send any comments or corrections to
seb@lepp.cornell.edu