I agree that it could be very useful to have orientation data for objects in Celestia. In other data files, Celestia uses axis-angle orientations instead of Euler angles, so I'd prefer to continue this. Celestia also uses ICRF as the reference frame, not ECEF--I don't know enough about ECEF to be able to say how simple the conversion is.
We should have a separate file type for trajectories that also contain orientations. When parsing data files, Celestia treats end-of-line markers as ordinary white space, so it would not be able to discern whether extra data on a line was for an orientation or just the next position.
I assume that you also would like to interpolate between orientations?
Interpolating Euler angles and using glRotate is unsatisfactory. We should instead convert the orientations to quaternions and use Celestia's quaternion spherical interpolation functions.
--Chris
>
> Wow. It sounds like many people would like a simple orientation interface.
> I
> would like to see a small taste of the orientation in Celestia using
> the xyz file. Maybe this would spark more dialog from others in the
> community. I would like to help write the code but I would need help
> finding the right files to modify. I could also spent my time testing
> the orientation and its coordinate system. Could you initially direct
> me to which files I need.
>
> Here is my xyz file plan. If the xyz file has more double floating
> point numbers in the current line, then I will assume these are the 3
> orientation pointing vectors. For now, I will assume they are ECEF. I
> can change the coordinate system later if it needs changing. I will
> simply change the model's rotation using the glRotate commands.
>
> glPushMatrix
> glRotate( 'x", rotationx[t] );
> glRotate( y", rotationy[t] );
> glRotate( 'z", rotationz[t] );
> glTranslate( existing array );
> glPopMatrix();
>
> What file reads in the xyz file? I will add another vector list for
> orientation just like the position.
>
> What file renders the xyz file? I will add the above gl calls to
> orient the model.
>
>
> We should probably move this discussion to the forum so others can
> contribute.
>
> Tim
>
>> Subject: Re: orientation
>
>
> On Wednesday 15 March 2006 17:52, Tim Curry wrote:
>> Hello,
>> I need a feature in Celestia that I think does not exist. I want
>> to orient an object that is already in the scene such as the IIS. The
>> IIS does not keep the same orientation in real life and I want to
>> orient it as a function of time. I thought about doing this using the
>> script file but the calls are not there for orientation. Is this
>> possible? Are there plans for adding the obj:setorientation ?
>
> There had been some work in that area and the idea of
> "background-scipts" which resulted from it. This happened about two
> years ago, as a result from this forum thread:
>
http://celestiaproject.net/forum/viewtopic.php?t=4543
>
> There was more about this on the developers mailinglist on 8./9. March
> 2004. The list is archived here (but difficult to follow as presented):
>
http://sourceforge.net/mailarchive/foru ... s=25&style
> =flat&viewmonth=200403&viewday=8
>
http://sourceforge.net/mailarchive/foru ... s=25&style
> =flat&viewmonth=200403&viewday=9
>
> Chris preferred callbacks, but the discussion never came to a result,
> and the idea (and the code) was forgotten.
>
> Harald
>