IFP Project: Interplanetary Flight Planner

Jarmonik, this looks awesome. I am in awe. Well done, well done indeed. I'm just curious, how accurately will the user be able to enter plans? For example, when travelling to the Moon, will I be able to enter in the final Periapsis I want, which will allow me to skip the frantic-burn-to-raise-my-periapsis-to-prevent-my-ship-from-smashing-into-the-Moon-because -IMFD-is-so-accurate?
 
Hmm... looks like a bad translation. My guess is this:
"It is something that I await anxiously.
How will the user enter parameters?"

P.S. Jarmonik, when(if) you answer, you may want to try to keep the details low and choose words wisely to avoid confusion with translation. I know you probably want to give a thorough explanation of your planner. ;) (which I'll be happy to read, but it won't help someone who doesn't understand)

There will be "a tree" like structure in a right edge of the window. It will allow access in configuration parameter, trajectory events and flight plan.

+Configuration
+Events
+-------------
+Initial Vessel State
+Maneuver _TLI
+Maneuver _MCC
+Maneuver _LOI
...


When you select a specific maneuver from the 3D view or you double klick the tree structure. The maneuver section will be expanded.

+Configuration
+Events
+-------------
+Initial Vessel State
+Maneuver _TLI
+Maneuver _MCC
| Tag _MCC
| GET 80:12:34
| PeA 110k
| Inc 176
| ....
+Maneuver _LOI


When the tree is expanded you can select input variable you want and you can control the variable with mouse wheel and buttons also you can activate a keyboard input for the variable. (Most likely by pressing Enter key).

It is possible that some maneuver control points are displayed in 3D view. That might allow to use mouse to drag them in a different location in order to adjust the maneuver and resulting trajectory. But this requires some more thinking.

You can also lock the tree so that selected sections will stay expanded.

Every maneuver and tarjectory event will require a four letter (32-bit) Tag like "_MCC". The Tag can be used by other (external) modules, programs and LUA script. In order to get access into the input and output variables.

For en example:
GetDouble("_MCC.MJD");
... Search a better ignition state ...
SetDouble("_MCC.MJD");

Also time of an other maneuvers can be defined relative to each-other by using the Tag like "_TLI + 5h"
 
For example, when travelling to the Moon, will I be able to enter in the final Periapsis I want ?
Yes, Of course. Build in scripts will do the work.
 
Now here's one of those projects that have the potential of raising Orbiter to a whole new level! Great Idea, I hope you don't get caught up by Graphics-issues and can start coding the maths soon! :)

one question: I had a very intense time figuring out the maths for a nav-tool for constant low thrust trajectories, but it's hopelessly above my head and will probably take the rest of the year untill I get some usefull results (My school math didn't go above trigonometry, so it's alot to learn). Will this be possible with your tool? because if yes, I won't bother my brain anymore. If no, maybe you could think about adding it. After having seen burntime integrations in IMFD I think something like this shouldn't be too hard for you.
 
When travelling to the Moon, will I be able to enter in the final Periapsis I want, which will allow me to skip the frantic-burn-to-raise-my-periapsis-to-prevent-my-ship-from-smashing-into-the-Moon-because -IMFD-is-so-accurate?

Correct me if I am wrong, but can't you plan an orbit with a certain periapsis in IMFD by using an offset, combined with map mode?
 
The Outer Planets

The Outer Planets Add-on:lol: I was little supprised after changing a test platform. I may need to setup a mass limiter.

Screenshot of Jupiter and about 50 moons.


IFP4.jpg
 
Debug Release

Debug Release:

Debug release of the graphical interface. To spot possible OpenGL related problems. This release is far from ready.


Definations:
------------
LMB = Left Mouse Button
RMB = Right Mouse Button
WHL = Mouse Wheel
DBL = Double click

View Control Actions:
---------------------
[LMB] Pan the view using the current viewplane [P].
[RMB] Rotate the view around the center marker (RGB Lines) Red = Plane Normal, Green = Vernal Equinox or other reference direction.
[WHL] Zoom the view.

[LMB][DBL] Select "suggested" object / Goto Object.
[SHIFT]+[WHL] Control the time.
[G] Goto the selection. This is equal to [LMB][DBL] on selected object.
[P] Change the view plane.
[D] Display Small objects/orbits.
Display Spherical/Flat Planets
Selected new base object. For an example if the Earth is the Base Object then everything that is not orbiting the Earth is rejected. (Can't undo this currently)
[1-0] Select a Camera to use. There are 10 Cameras located in default location above the Base Object. When Selecting an other camera previously used camera will stay in it's current position.
[SHIFT]+[1-0] Will move the camera [x] into your current location. However, this doesn't change the camera being used.
[Space] Change Time adjust rate.

http://koti.mbnet.fi/jarmonik/IFP.zip
 
Last edited:
Hi Jarmo,

the screenshots are stunning, great work! :speakcool:

Unfortunately it's not working on my PC. No CTD, but a white window and some errors in the log file, which is attached.

I really hope it's no big problem, you're doing a great job here.

Cheers
Tschachim
 

Attachments

Hi Jarmo,

the screenshots are stunning, great work! :speakcool:

Unfortunately it's not working on my PC. No CTD, but a white window and some errors in the log file, which is attached.

I really hope it's no big problem, you're doing a great job here.

Cheers
Tschachim

Looks like there are some OpenGL 1.2 related functions missing, that's odd. But those ones are not required. It didn't start because it couldn't find a pixel format for some reason.

It is now using the format recommended by windows.

Here is the fixed one:

http://koti.mbnet.fi/jarmonik/IFP.zip
 
Looks like there are some OpenGL 1.2 related functions missing, that's odd. But those ones are not required. It didn't start because it couldn't find a pixel format for some reason.

It is now using the format recommended by windows.

Here is the fixed one:

http://koti.mbnet.fi/jarmonik/IFP.zip


Hy Jarmo,

this IFP is a superb idea! This is something I missed in Orbiter after seeing it in Exoflight alpha...

Unfortunately, the plugin gives me a white window followed by CTD. Screeny and log is attached...

Keep up the good work!

regards,
Face
 

Attachments

  • test.png
    test.png
    49.3 KB · Views: 27
  • IFPLog.txt
    IFPLog.txt
    39.5 KB · Views: 7
Hy Jarmo,

this IFP is a superb idea! This is something I missed in Orbiter after seeing it in Exoflight alpha...

Unfortunately, the plugin gives me a white window followed by CTD. Screeny and log is attached...

Keep up the good work!

regards,
Face

This bug is difficult to spot... I have uploaded new version with debug symbols.

If you have MS Visual C++ 2005 Express or something else could you do the following steps.

1. Open Orbiter Launcpad
2. Open MS VC 2005
3. Select Tools -> Attach to Process... Select "Orbiter.exe Orbiter Launch Pad"

4. Start Orbiter and IFP
5. When it Crashes look at the MS VC++ application. It shoud ask to "Break Debugging" or something like that.

Code and function call stack shoud be displayed in MS VC++

You can quit the debugger by selecting "Stop Debugging".


http://koti.mbnet.fi/jarmonik/IFP.zip

EDIT: Two load errors, displayed in log, are not serious ones. Just meaning that a file not found... Using defaults
EDIT2: The Offset displayed in a screen shot is nolonger valid because I had made some modifications in the dlls. But I have taken a copies from the current debug release so that I can restore them if nessecary.
 
Last edited:
Yeah, the latest version (the one with debug symbols) is working as advertized, the solar system is looking great! I attached the log file just in case it's useful for you.

Cheers
Tschachim
 

Attachments

This bug is difficult to spot... I have uploaded new version with debug symbols.

If you have MS Visual C++ 2005 Express or something else could you do the following steps.

1. Open Orbiter Launcpad
2. Open MS VC 2005
3. Select Tools -> Attach to Process... Select "Orbiter.exe Orbiter Launch Pad"

4. Start Orbiter and IFP
5. When it Crashes look at the MS VC++ application. It shoud ask to "Break Debugging" or something like that.

Code and function call stack shoud be displayed in MS VC++

You can quit the debugger by selecting "Stop Debugging".


http://koti.mbnet.fi/jarmonik/IFP.zip

EDIT: Two load errors, displayed in log, are not serious ones. Just meaning that a file not found... Using defaults
EDIT2: The Offset displayed in a screen shot is nolonger valid because I had made some modifications in the dlls. But I have taken a copies from the current debug release so that I can restore them if nessecary.

Ok, thanks. I'll try to debug it this evening with VS8.

regards,
Face

EDIT:

Ok, I did some further testing... first of all: I got it to work! Looks good, really fine addition to Orbiter. I especially like the navigation via mouse.

Details:
* The last debug version doesn't work at all, it seems like it doesn't load the DLL or register the custom function. No custom function is displayed in Orbiter's dialog after activating the module in the launchpad. I tried it with and without VS8 attached. No log is generated (as expected).
* The previous version works, it was just my mistake to keep LaunchMFD activated (that caused the CTD). Sorry for the false alarm.
* If Orbiter is stopped via the "legacy" method (not using the fast shutdown) and restarted again (using the saved scenario or the same scenario from start), the OpenGL-window remains in white-screen state. If started for the first time, everything shows up after some time (approx. 5 secs for me).
* Doubleclick behavior is a bit strange. If clicked too fast, it doesn't work (e.g. for selection of target).

Summa summarum I'd say you're on the right track with this...

regards,
Face
 
Last edited:
Works great on my laptop.
I have been asking for something like this for years iam very excited....
 
The last debug version doesn't work at all, it seems like it doesn't load the DLL or register the custom function. No custom function is displayed in Orbiter's dialog after activating the module in the launchpad. I tried it with and without VS8 attached. No log is generated (as expected).
There has been some library compatibility issues. If mixing debug and non-debug versions it may not load the module.


If Orbiter is stopped via the "legacy" method (not using the fast shutdown) and restarted again (using the saved scenario or the same scenario from start), the OpenGL-window remains in white-screen state. If started for the first time, everything shows up after some time (approx. 5 secs for me).
That's something that I have never tested. I suppose this shoud be fixed after reseting some variables when the simulation window is closed. No problem I hope.

Doubleclick behavior is a bit strange. If clicked too fast, it doesn't work (e.g. for selection of target).
That's odd. I have used the default WM_xBUTTONDBLCLK message. Obviously windows doesn't send the message.

Of course there exist two double clicks.
1. Select Target
2. Goto Target
 
Hi there How is this project going.
I have attached a copy of what i think is the best nav tool ever, hopefully you could incoperate some of its features, i.e its alot easyier to use then imfd

some of the old timers round here should remember it as NAVMFD the aim was to also go 3d like what you are doing.
 

Attachments

Hi there How is this project going.
I have attached a copy of what i think is the best nav tool ever, hopefully you could incoperate some of its features, i.e its alot easyier to use then imfd

some of the old timers round here should remember it as NAVMFD the aim was to also go 3d like what you are doing.


There is no source code in that zip.

jarmonik, awesome idea! It is high time that flight planning moved away from the confines of an MFD and into a standalone program.

Sure an MFD is fine if you want to go direct to Jupiter and Mars but when dealing with slingshots, L2, Entry Corridors and all that one really needs to rely on an external program in my view.

If I may make a suggestion...

There is an extremely powerful (Yet complicated) mission planner made open source by NASA.

http://gmat.gsfc.nasa.gov/

Now while extremely complicated it seems to have some extremely interesting tools in it. Like the ability to plan missions with use of the L points with a finder.

Perhaps there is some ideas or use you can get from it.
 
Last edited by a moderator:
Zachstar,

Thanks for posting this resource! What a fabulous and complex resource this is. I can already see several excellent ways of using this one!

Brilliant!
 
I cant wait looks :speakcool:
 
Back
Top