Generating Artificial AsteroidsWritten by Paul BourkeFebruary 2001
To create a bulge an "impact" center is chosen at random on the surface of the current asteroid. All vertices within a chosen radius are perturbed normal to the surface, the degree of perturbation falls off linearly with distance away from the center of impact. The user controls the radius range, depth range, and the number of impacts. This seemed to give sufficient control over the final shape. Planet type objects are created with small shallow bulges (with respect to the initial sphere). More extreme cases are formed as the radius and depth are increased.
Note the rotation at the end of the PovRay mesh primitive, it keeps the asteroid rotating in animation sequences without obvious cyclic repetition. ![]()
The real thing
Craters An attempt at craters was made by perturbing the surface with a radial Gaussian function. In order to achieve satisfactory resolution the triangle count was increased to about half a million, the rendering time was still under 1 minute per frame. ![]()
A better model of crater profile would undoubtedly help, for example the variation in shape can be seen from some of the moon craters shown below. ![]()
Kleopatra "dog-bone" asteroidThe following asteroid is modelled after the 216 Kleopatra asteroid. The basic geometry is based upon the Cassini oval and bulges or craters are added to various extents. The source code that created the PovRay models is: gencassini.c. ![]()
The so called "dog bone asteroid" shown below is imaged from Arecibo radar in Puerto Rico. (Image courtesy JPL). The asteroid is just over 210km long and at most 100km thick, and is located about 171,000,000km from Earth (around the same distance as Jupiter). ![]()
Asteroid topology modelsWritten by Paul BourkeSeptember 2002 Model sources from JPL NASA, S. Hudson, Mitchell, S. Ostro, and K. Rosema.
2063 Bacchus --
bacchus.tri --
bacchus.pov
4769 Castalia --
castalia.tri --
castalia.pov
433 Eros --
eros.tri --
eros.pov
1620 Geographos --
geographos.tri --
geographos.pov
6489 Golevka --
golevka.tri --
golevka.pov
216 Kleopatra --
kleopatra.tri --
kleopatra.pov
1998 Ky26 --
ky26.tri --
ky26.pov
4179 Toutatis --
toutatis.tri --
toutatis.pov
3D StudioMax script that reads the ".tri" models found here. Rapid prototype models
![]()
|