Page 1 of 1

Ideas for future expansion of Celx

Posted: 22.04.2004, 17:55
by don
Some ideas for future expansion of Celx capabilities...

* Ability to set/get the HUD verbosity (none, terse, verbose)
* Ability to set/get individual object's "display orbits and labels" settings (Render->View Options->Orbits / Labels)
* Ability to set/get Show Features settings under Locations (Render->Locations)
* Ability to set/get Minimum Labeled Feature Size (Render->Locations)
* Ability to set time to "now" (current date/time)
* Ability to display the Eclipse Finder dialog, with information defined via a script.
* Ability to display the Star Browser dialog, with information defined via a script.
* Ability to populate, create (within a limited size range), open (and close) a pop-up, always-on-top box, to be used for detailed information display. The default script font can be quite large for displaying a LOT of information. If the box remains open at script cancel/end, it should be automatically closed (destroyed). It would be ideal if this box was an instance of the user's browser, which would allow standard HTML code. (Thanks to maxim for the idea.)

Re: Ideas for future expansion of Celx

Posted: 22.04.2004, 22:04
by Harry
don wrote:* Ability to set/get the HUD verbosity (none, terse, verbose)
That's an easy one (it was already on my todo list)...
* Ability to set/get individual object's "display orbits and labels" settings (Render->View Options->Orbits / Labels)
You can only change orbit and label settings of a complete class (planets, moons) - modifying individual objects would require some modifications to the object and rendering code first.
* Ability to set/get Show Features settings under Locations (Render->Locations)
What about observer:get-/setlocationflags()? Is this what you are looking for? (yeah, I know, the docs are out of date ;)
* Ability to set/get Minimum Labeled Feature Size (Render->Locations)
Like celestia:get/-setminfeaturesize()? ;)
* Ability to set time to "now" (current date/time)
Yes, accessing the real time would be a good addition.
* Ability to display the Eclipse Finder dialog, with information defined via a script.
* Ability to display the Star Browser dialog, with information defined via a script.
I am not sure about this one, this is probably platform dependent :(
* Ability to populate, create (within a limited size range), open (and close) a pop-up, always-on-top box, to be used for detailed information display. The default script font can be quite large for displaying a LOT of information. If the box remains open at script cancel/end, it should be automatically closed (destroyed). It would be ideal if this box was an instance of the user's browser, which would allow standard HTML code. (Thanks to maxim for the idea.)

Sounds nice, but again is platform dependent and therefore not exactly easy.

Harald

Re: Ideas for future expansion of Celx

Posted: 23.04.2004, 01:41
by don
Harry wrote:
don wrote:* Ability to set/get individual object's "display orbits and labels" settings (Render->View Options->Orbits / Labels)
You can only change orbit and label settings of a complete class (planets, moons)
Yes, this is what the dialog box does now -- by "class". This is what I mean.


Harry wrote:
* Ability to set/get Show Features settings under Locations (Render->Locations)
What about observer:get-/setlocationflags()? Is this what you are looking for?
Does this set the items listed in the dialog box I pointed to (ie. Cities, Observatories, etc.)?


Harry wrote:
* Ability to set/get Minimum Labeled Feature Size (Render->Locations)
Like celestia:get/-setminfeaturesize()? ;)
Yep, just like that command does! :oops:


Harry wrote:
* Ability to display the Eclipse Finder dialog, with information defined via a script.
* Ability to display the Star Browser dialog, with information defined via a script.
I am not sure about this one, this is probably platform dependent :(
Yes, it would be.

How about returning the results in a Celx table? The script writer could then select, display, etc. based on the table info.


Harry wrote:
* Ability to populate, create (within a limited size range), open (and close) a pop-up, always-on-top box, to be used for detailed information display. ...It would be ideal if this box was an instance of the user's browser, which would allow standard HTML code.
Sounds nice, but again is platform dependent and therefore not exactly easy.

Most browsers are cross-platform.

Re: Ideas for future expansion of Celx

Posted: 23.04.2004, 10:51
by Harry
don wrote:Yes, this is what the dialog box does now -- by "class". This is what I mean.
This is covered by celestia:get-/setlabelflags() and celestia:get-/setorbitflags(). But see below...

Harry wrote:
* Ability to set/get Show Features settings under Locations (Render->Locations)
What about observer:get-/setlocationflags()? Is this what you are looking for?
Does this set the items listed in the dialog box I pointed to (ie. Cities, Observatories, etc.)?
I hope so. The thing is, it only changes the internal flags, but doesn't update the GUI - so the GUI may show no change, but the flags have indeed changed.

This will be fixed soon.

(Eclipse Finder/Star Browser)
How about returning the results in a Celx table? The script writer could then select, display, etc. based on the table info.
Finding stars should already be possible in Lua, but would be very slow. Finding eclipses could come really handy, so if there is some demand for this I would do it.
(Displaying an info-box)
Most browsers are cross-platform.

But there is no uniform way to start a browser and open a HTML page :(

Re: Ideas for future expansion of Celx

Posted: 23.04.2004, 11:57
by adamnieman
* Ability to set/get individual object's "display orbits and labels" settings (Render->View Options->Orbits / Labels)
You can only change orbit and label settings of a complete class (planets, moons) - modifying individual objects would require some modifications to the object and rendering code first.


The implementation of Lua in 'Celestia for Welcome to the Neighbourhood' allows you to turn individual labels and orbits on and off. This is a really useful feature. For instance, you can show just the Earth and Moon's orbits without them becoming indistinguishable from a cats-cradle of other orbits on the screen.

Alex, who did the work, sent the source code to Harry and CVS, so there might be an easy solution already.

Code: Select all

Relevant commands in LUA scripting interface for WTTN

object:
showlabel(bool)
showorbit(bool)

celestia:
showspecificlabel(object) only works for bodies
clearallspecificlabels()
showspecificorbit(object) only works for bodies
clearallspecificorbits()


Adam

Re: Ideas for future expansion of Celx

Posted: 23.04.2004, 12:18
by Harry
adamnieman wrote:The implementation of Lua in 'Celestia for Welcome to the Neighbourhood' allows you to turn individual labels and orbits on and off. [...]
Alex, who did the work, sent the source code to Harry and CVS, so there might be an easy solution already.

The problem is not the CELX-side, the problem is rendering support by the core Celestia-code - and currently the core only looks for the class of an object to decide on this. Of course this could be changed, and I don't know what the other developer's opinion on this is.

Harald

Re: Ideas for future expansion of Celx

Posted: 23.04.2004, 19:05
by don
Hi Harald,

Harry wrote:
(Eclipse Finder/Star Browser)
How about returning the results in a Celx table? The script writer could then select, display, etc. based on the table info.
Finding stars should already be possible in Lua, but would be very slow.
The reason I mentioned returning a table is that I'm sure we could come up with a way to display a scrolling list in Celx. :)


Harry wrote:
(Displaying an info-box)
Most browsers are cross-platform.
But there is no uniform way to start a browser and open a HTML page :(

There's that stupid UI-specific garbage popping up it's ugly head again. It seems that there are many more GOOD reasons to give Celestia a cross-platform UI and very FEW reasons to keep separate UIs <sigh>.