> Hi > > I am trying to use Flightgear as a GUI for an air traffic simulator. > I use the CVS head and the multiplayer mode (--multiplay=in,10,,5500) on > a gnu/linux intel box. > > I though the positions were in meters in a geocentric frame. > When i start in the default position KSFO:28L (-122.358, 37.6117) I read > the following x,y,z [2985, 2063, 4350] from the socket. > When i send these coordinates back, the plane shows up at the right place. > > I noticed that sqrt(2985^2 + 2063^2 + 4350^2) = 5664 wich seems far from > earth radius. > > When i do the computation myself, i find (-122.358, 37.6117) -> [-2708844 > -4272575 3871453] > which leads to 6370312 for earth radius and seems closer to reality. > > What am I missing ??? Regards > > Antoine >
Antoine, Sorry for taking a while to get back to you. I've been away from work for a week. If you have a browse through the multiplayer code, you'll notice that we don't pass X,Y,Z's over the network at all. We pass a "transformation matrix" that can be applied to a 3d model, to "move" it to its new position in the world. Why? Speed. We've gone to all the trouble of calculating our own transformation matrix from X, Y, Z & orientation. Sending the X, Y, Z & orientation out over the network would cause all the other network clients to have to recalculate the model transformation matrix. If you'd prefer for X, Y, Z and orientation to be transmitted in the UDP packets, (which has many advantages - especially when using a central server), then it would be a simple change in the code. Have a go - if you get stuck then I'm happy to help. Diarmuid Tyson. _______________________________________________ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel