positionnig/viewing in Celx:help?
Posted: 23.04.2004, 17:01
I'm trying to fully understand positioning and viewing methods in Celx.
(for myself AND to publish an available documentation to everyone...)
Could you confirm or correct my present (mis)understanding:
1-Methods related to positioning of observer:
Two kinds of positions (but belonging the same class of Object) will be distingwished here,relative to their use:
pos_univ: position relative to universal coordinates -"universal" frame
pos_rel:position relative to another frame (ecliptic,equatorial,planetographic,lock,chase,observer)
Methods involved with positions:
obj:getposition() > pos_univ (return a position ALWAYS of type pos_univ)
obs:getposition() > pos_univ
obs:setposition(pos_univ) (argument NECESSARILY of type pos_univ)
obs:gotolocation(pos_univ,duration)
2- Methods related to camera (viewing); don't affect position of observer:
obs:lookat(from, to,up) ?? what type are supposed for those arguments???
obs:setorientation(rot) ?? typpe? and see later for questions about 'rotation'
obs:rotate(rot) ??idem
3- Methods related to frame (coordinates and coord system)
celestia:newFrame() > create a celestia frame
obs.getframe > frame
obs.setframe()
and involved with position types
frame:to(pos_univ) > pos_rel
frame:from(pos_rel) > pos_univ
And now what I am sure NOT to understand:
5-Rotation objects
5a)rotation created with:
celestia:newrotation(axis,angle) but type of axis? univ? relative?
But WHAT is exactly such an objet? the matrix of the rotation? in which coordinate system? are Euler angles involved? if Yes with which convention?...
5b)Methods involved with rotations
obs:setOrientation(rot) > rot type? what precise mathematical links between the rot argument , obs.frame and the'orientation of the camera (axis and up direction)
obs:rotate(rot) > same questions (it is supposed to modify the orientaton of the camera, but how?)
6- Finally is there a
Celestia:newposition (x,y,z) class method?
Take your time before answering..
Thanks a lot.
JPierre
(for myself AND to publish an available documentation to everyone...)
Could you confirm or correct my present (mis)understanding:
1-Methods related to positioning of observer:
Two kinds of positions (but belonging the same class of Object) will be distingwished here,relative to their use:
pos_univ: position relative to universal coordinates -"universal" frame
pos_rel:position relative to another frame (ecliptic,equatorial,planetographic,lock,chase,observer)
Methods involved with positions:
obj:getposition() > pos_univ (return a position ALWAYS of type pos_univ)
obs:getposition() > pos_univ
obs:setposition(pos_univ) (argument NECESSARILY of type pos_univ)
obs:gotolocation(pos_univ,duration)
2- Methods related to camera (viewing); don't affect position of observer:
obs:lookat(from, to,up) ?? what type are supposed for those arguments???
obs:setorientation(rot) ?? typpe? and see later for questions about 'rotation'
obs:rotate(rot) ??idem
3- Methods related to frame (coordinates and coord system)
celestia:newFrame() > create a celestia frame
obs.getframe > frame
obs.setframe()
and involved with position types
frame:to(pos_univ) > pos_rel
frame:from(pos_rel) > pos_univ
And now what I am sure NOT to understand:
5-Rotation objects
5a)rotation created with:
celestia:newrotation(axis,angle) but type of axis? univ? relative?
But WHAT is exactly such an objet? the matrix of the rotation? in which coordinate system? are Euler angles involved? if Yes with which convention?...
5b)Methods involved with rotations
obs:setOrientation(rot) > rot type? what precise mathematical links between the rot argument , obs.frame and the'orientation of the camera (axis and up direction)
obs:rotate(rot) > same questions (it is supposed to modify the orientaton of the camera, but how?)
6- Finally is there a
Celestia:newposition (x,y,z) class method?
Take your time before answering..
Thanks a lot.
JPierre