I have zipped up all the source files into a single file for your language of choice. (you can also download the work in progress from CVS, but this is only necessary if you want to help develop the program, I would really appreciate new developers for the program)
So you only have to download one file as follows.
- Choose the version you want to use, depending on your language of choice, use the source code file named from the table below.
- Goto this page and click on your choice to upload it.
- You may also need some of the resources shown below.
| Language | source code file | |
| Java |
Java There are many free development environments availible, For information about compiling using Eclipse. |
mjbWorld_jogl_source_525.zip |
| .Net | C# | mjbworld_cs_opengl_source_525.zip |
| Linux Qt |
C++ note: this version is not yet stable (Ed nickname 'slimb' has improved the C++ version although he warns that its only for serious hackers at this stage. Ed tells me that the simpler models now work in a stable way, He is now planning fix the editors and OpenGL rendering.) For information about compiling using KDevelop see this page. |
mjbWorld_cpp_qt_opengl_source_525.zip |
I would really appreciate and help to improve this program, such as bug reports, ideas for improvements, corrections etc. (or even better changes to the source code). Please enter your reports/comments here.
The .NET environment allows languages to be mixed, so I would like to put VB .NET versions here if anyone could help me to do the conversions.
Copyright (c) 1998-2005 Martin John Baker
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
For information about the GNU General Public License see http://www.gnu.org/
If you would like to contact me, my website is http://www.euclideanspace.com/
The following resouces may also be required to build and run the program
Resources
| graphics files | These are included in the runtime file - download the runtime file and unzip it to get the graphics files. |
| ICONs | These are included in the runtime file - download the runtime file and unzip it to get the ICON files. |
| BASH scripting package | Only needed if you un-comment the BASH version of run script. A version of this is included in the BASH version of runtime. |
| Jpython scripting package | Only needed if you un-comment the JPython version of run script. A version of this is included in the JPython version of runtime. |
If you are using JBuilder here is some information to help you
Each node is a bean, eventually I can see the program having the following types of bean:
- Tree beans - to allow people to add new shapes or node types - which may or may not correspond to scene graph objects.
- IO beans - to allow people to add new storage file types
- Behaviour beans - to allow new behavours such as physics to be added.
- Wizard Beans - to be able to add new tools to the program
mjbWorld package
Contains environment and input/output
- mjbWorld.java <-- main application
- mjbFrame.java <-- top level frame
- ExampleFileFilter.java
- filter.java <-- input/output filters exten this class
- filter_obj.java
- filter_vtx.java
- filter_dxf.java
- d_panel.java
- d_insert.java
- mjbFrame_AboutBox.java
- mtreeCellRenderer.java
- d_find.java
mjbModel package
The following classes form a parallel structure to the Scene Graph and cross linked to it. See Programmers Guide.
The either store the persistent information or have access to it, therefore they can be serialised.
I have separated this package out in preparation for conversion to beans, but that's not yet complete so they are not valid beans.
Initially the beans could be used to build a scene graph at build time (not sure what benefit this would give as the program builds the model at runtime) but it would be an interesting extra capability to be able to build a scene graph from within a programming environment like JBuilder. And it does give us a standard set of interfaces to add capability at runtime.


