Symbol Scaling & Position
(WARNING: Math and grumbling ahead!)
I'm still working on an XP module that draws a solar system - long story which will be told later when I'm ready to show it off. I have Cosmographer symbols for planets, asteroids, and the sun. All is great for the inner 4 planets and the belt. This is pretty much what I've been shooting for, minus some labels and scale:
This is where it gets tricky. The 5th planet (Jupiter) uses a "gas giant" symbol. It's a small symbol when using SYMBOLC, so I have to scale it up to be similar in size to Earth. To get it to look "Jupiter big," I have to scale even more. I've been using 16x scale where the other ones use 4x. This works, but the position of the symbol goes weird. I take the radius of the orbit and the angle of the planet in its orbit, do some trigonometry to get the X,Y coordinates, and SYMBOLC each planet. It works perfectly for the 4 inner planets and the asteroids. Mercury and Venus have smaller scales, but they work fine.
Jupiter goes crazy. When I mess with the symbol scale, the position changes. I can put another symbol in the same position, and it goes right on the orbit. When I use that gas giant symbol (CosA Gasgiant 1), it moves outside the orbit:
The X,Y coordinates are correct, but the symbol goes elsewhere. I did some empirical placements, and I found a logarithmic equation to map the orbit radius to a fudge factor to multiply by the orbit radius in the trig. (If you don't understand the math, then consider this fudge factor to be a value from maybe 50%-100%-125% scaling factor in addition to the radius of the circle under it.) This is crazy.
However, when I change the scale of the gas giant symbol, that logarithmic relationship changes yet again. I could certainly do the same math in 3 dimensions, relating symbol scale and orbit radius to a fudge factor. But...
What's going on here? Why do I have to multiply the position of the symbol by anything? Why is the gas giant symbol different than the other ones (e.g., CosA Planet Life 1)? This is the SYMBOLC command only; this doesn't have anything to do with it being run from XP.
Any information is welcome. I'd rather do this a simpler way than what I've been doing. Thank you all!
Comments
This is due to the setup in that traveller catalog you are using. For the standard traveller map, a gas giant is treated as a modifier to an existing symbol, to be displayed in the corner of a hex, not in the center where a regular planet goes.
This means that the symbol is quite offset from it's origin, which should be noticeable already at 1x scale, but as you scale up, distances are also scaled obviously, meaning that distance is now 16x larger. (This special placement for traveler is also why it is so small)
The gas giant in the regular planets catalog is more normal, but that is a height symbol, which isn't what you want here.
My recommendation is to create your own symbol catalog. Just make a copy of the traveller one, and then go in and scale all the symbols so they are properly scaled related to each other, and not for the abstract traveller use, and change the origin of the gas giants to be in the middle of the planet.
This explains it. It's not a scaling factor alone. It's also that the origin is offset from the graphic. I'm so glad that I'm not crazy, just underinformed.
Thank you!