
Simon Rigby
Members-
Posts
15 -
Joined
-
Last visited
About Simon Rigby
- Birthday 01/01/1970
Contact Methods
-
Website URL
http://
Simon Rigby's Achievements
Newbie (1/14)
0
Reputation
-
Thanks Pete Simon
-
Hi folks, I too have this problem but wasnt going to delve into it until I hit that part of my program. However, I have been reading up on vector cross products and from the advice I have been able to find it says that a VCP only applies to 3D vectors. Is this correct? Have I missed something? Taking that further, how would this apply to a 3D problem. That is, determining if an aircraft is inside a block of airspace? Cheers in advance. Simon
-
Thanks Pete, I must admit to being curious as to why there are two distinct offsets. If the "setter" still reflects the pause state, why is there a second? Just interested is all. Cheers Simon
-
Hiya, I notice there are two offsets for pause 0262 and 0264. 0264 seems to be marked for getting the pause state, however an attempt to get 0262 also returns the valid pause state. Is there a particular reason for using one over the other. I ask this in anticipation of other similar scenarios. Cheers Simon
-
Oh dear(sneaks off into the crowd hoping no one noticed that I asked that). Thanks Pete, I am suitably embarrased .. hehe Simon
-
As a follow up I have tried to quiz the "missing" offset and it always returns 0 (zero). Cheers Simon
-
Hi Pete, I notice that an offset for ZuluSecond is not included in the list of offsets in the programmers guide. There is also a gap in the list at 023D. Is this an omission in the manual or does the offset not exist? Cheers Simon Rigby
-
Sorry Peter, I did get that dialog but I didn't quite understand the implications. I was assuming it was a "nag" screen that indicated that the access wasn't licensed as such. Ok I'm clear, now I need to purchase a license key. I'm sure there is info for that somewhere, but if you want to drop a link or method of payment in here thats appreciated. Cheers Simon
-
Errr, That's odd. It does connect and FS Navigator is working fine. I was under the impression that used FSUIPC (of course I could be wrong, oddly enough it's happened before). I will download a new version. Nope I didn't purchase an FSUIPC access key. The only applications I have used in the past with it are "accredited" so to speak. I am planning to develop an application(s) which will be freeware to the FS community. I may be confused about the licensing and in fact maybe this is the root of my problem. Cheers Simon
-
Hi Paul, Thanks for checking. I have tried dividing / 128 and using the fsuResult value unadjusted, its always 0. I take it you were getting a speed? Could this be a version problem. I am using the version of FSUIPC that came with my PMDG 737-600/700 NG (dll version 3.1.2.9). Apologees if I may be out of date or out of touch, but am just returning to the flight sim world after a lay off. Cheers Simon
-
Hi all, I am just starting to experiment with the c# sdk and as a result have written a little console app to experiment with the sdk. I am able to initialise, open and close the fusipc instance. But a read on airspeed always returns 0. The fsuipc (f in the code) is the supplied class with the SDK. I should point out this is dotNet 2. Code Below, Many Thanks in advance Simon --- Code --- using System; using System.Collections.Generic; using System.Text; using FsuipcSdk; namespace FSUIPC_testing { class Program { static Fsuipc f = new Fsuipc(); static bool result = false; static bool stop = false; static int fsVersion = 0; static int fsuResult = -1; static int offAirspeed = 0x02BC; static int size4 = 4; static int token = -1; static string TranslateResultCode(int code) { string message = string.Empty; switch (code) { case Fsuipc.FSUIPC_ERR_OK: message = "FSUIPC_ERR_OK"; break; case Fsuipc.FSUIPC_ERR_OPEN: message = "Already Open"; break; case Fsuipc.FSUIPC_ERR_NOFS: message = "FSUIPC_ERR_NOFS"; break; case Fsuipc.FSUIPC_ERR_REGMSG: message = "FSUIPC_ERR_REGMSG"; break; case Fsuipc.FSUIPC_ERR_ATOM: message = "FSUIPC_ERR_ATOM"; break; case Fsuipc.FSUIPC_ERR_MAP: message = "FSUIPC_ERR_MAP"; break; case Fsuipc.FSUIPC_ERR_VIEW: message = "FSUIPC_ERR_VIEW"; break; case Fsuipc.FSUIPC_ERR_VERSION: message = "FSUIPC_ERR_VERSION"; break; case Fsuipc.FSUIPC_ERR_WRONGFS: message = "FSUIPC_ERR_WRONGFS"; break; case Fsuipc.FSUIPC_ERR_NOTOPEN: message = "FSUIPC_ERR_NOTOPEN"; break; case Fsuipc.FSUIPC_ERR_NODATA: message = "FSUIPC_ERR_NODATA"; break; case Fsuipc.FSUIPC_ERR_TIMEOUT: message = "FSUIPC_ERR_TIMEOUT"; break; case Fsuipc.FSUIPC_ERR_SENDMSG: message = "FSUIPC_ERR_SENDMSG"; break; case Fsuipc.FSUIPC_ERR_DATA: message = "FSUIPC_ERR_DATA"; break; case Fsuipc.FSUIPC_ERR_RUNNING: message = "FSUIPC_ERR_RUNNING"; break; case Fsuipc.FSUIPC_ERR_SIZE: message = "FSUIPC_ERR_SIZE"; break; case Fsuipc.FSUIPC_ERR_BUFOVERFLOW: message = "FSUIPC_ERR_BUFOVERFLOW"; break; default: message = code.ToString(); break; } return message; } static void Main(string[] args) { bool exit = false; string command = string.Empty; while (!exit) { command = Console.ReadLine(); switch (command) { case "init": Console.WriteLine(Init()); break; case "open": Console.WriteLine(Open()); break; case "close": Console.WriteLine(Close()); break; case "airspeed": Console.WriteLine(GetAirspeed()); break; case "exit": exit = true; break; default: Console.WriteLine("-- Bad Command : " + command); break; } } } static private string Init() { f.FSUIPC_Initialization(); return "-- Initialised"; } static private string Open() { result = f.FSUIPC_Open(fsVersion, ref fsuResult); if (result) { return "-- Open"; } else { string msg = "-- Not Open: " + TranslateResultCode(fsuResult); return msg; } } static private string Close() { f.FSUIPC_Close(); return "-- Closed"; } static private string GetAirspeed() { string msg = string.Empty; result = f.FSUIPC_Read(offAirspeed, size4, ref token, ref fsuResult); if (result) { msg = "a/s read; "; } else { msg += "-- Error: " + TranslateResultCode(fsuResult); return msg; } result = f.FSUIPC_Process(ref fsuResult); if (result) { msg += "a/s processed; "; } else { msg += "Error: " + TranslateResultCode(fsuResult); return msg; } result = f.FSUIPC_Get(ref token, ref fsuResult); if (result) { msg += "a/s got; "; } else { msg += "Error: " + TranslateResultCode(fsuResult); return msg; } return msg += "a/s = " + fsuResult * 128; } } }