No announcement yet.

WWJ SDK Alpha 5 - 0.5.0 available

  • Filter
  • Time
  • Show
Clear All
new posts

  • WWJ SDK Alpha 5 - 0.5.0 available

    NASA World Wind Java SDK alpha 5 - 0.5.0 is now available.
    Download WWJ SDK 0.5 (Zip 14.4M).
    Check the new demo page for web start examples, applets and user applications.

    From the release README.txt:

    Change Summary for 0.4 to 0.5:
    • - Includes a WMS server.
    • - Major changes to the view code - the eye can now go very close to the ground, and underwater. New interface methods.
    • - New Restorable interface to save and restore objects state to/from an xml document. Implemented in UserFacingIcons, Annotations, Polyline, View...
    • - Flat Worlds with projection switching are now usable.
    • - Mars and Moon globes with elevations and full layersets from NASA servers.
    • - MGRS, UTM and TM coordinates classes and converters in geom.coords
    • - Tiled image layers will not wait for lower res tiles to load before showing the needed ones.
    • - New layers:
      • - NAIPCalifornia.
      • - BMNGWMSLayer gives access to any of the 12 BMNG 2004 layers.
      • - OpenStreeMapLayer.
      • - MGRSGraticuleLayer and UTMGraticuleLayer.
      • - CrosshairLayer.
    • - All non Earth specific layers have been moved from layers.Earth to layers: CrosshairLayer, FogLayer, ScalebarLayer, SkyColorLayer, SkyGradientLayer, StarsLayer, TerrainProfileLayer and WorldMapLayer.
    • - StatusBar moved from examples to util.
    • - New GeographicText support - used for placenames.
    • - More accurate scalebar.
    • - Increased performance for Polyline.
    • - Icons can have a background image.
    • - WWJApplet example updated with new capabilities.
    • - Build script completly revised.
    • - SurfaceImage from an http source.
    • - Zoom with middle mouse button down and drag up/down.
    • - AlwaysOnTop property for icons and annotations.
    • - New Mipmap flag for TiledImageLayer
    • - Better TiledImageLayer image capture and composition.
    • - Enhanced NITFS/RPF support.
    • - Better gps tracks support
    • - New examples: AlarmIcons, BMNGTwelveMonth, FlatWorldEarthquakes, MGRSGraticule, RemoteSurfaceImage, ViewLookAround, Mars, Moon...
    • - Also includes an application for Search And Rescue support.
    • - Many other bug fixes and changes...
    It has been five month since the previous 0.4 release. Thank you for your patience and feedback

    Edit: Some screenshots and details here.
    Last edited by patmurris; 05-03-2008, 07:20 AM.
    My World Wind Java Blog & Plugins page

  • #2
    Thanks guys!!!! Very nice start to the weekend!

    Is the California NAIP imagery available? I haven't been able to find any images for that layer yet.

    Looks like you guys have been busy...
    Thanks for releasing before Java-One conference!
    Some images of WWJ stuff I have been working on...


    • #3
      NAIP California should be working, but the server seems to be down just now - it comes from wms.
      My World Wind Java Blog & Plugins page


      • #4
        I'd like to take the risk and upgrade now, just in time for the J1 demo... :-)

        I've just two problems compiling this method: setLookAtLatLon(), getLookAtLatitude() and getLookAtLongitude() seems to have been moved.

            private void setCenterPosition (final Coordinates centerPosition, 
                                            final double zoom, 
                                            final Angle heading,
                                            final Angle pitch)
      "setCenterPosition(" + centerPosition + ", " + zoom + ")");
                this.centerPosition = centerPosition;
                final Position position = toPosition(centerPosition);
        //        final Position viewPosition = new Position(position.getLatitude(), position.getLongitude(), height);
                logger.fine(">>>> position: " + position);
                final Globe globe = wwjGLCanvas.getModel().getGlobe();
                final OrbitView view = (OrbitView)wwjGLCanvas.getView();
                if (false)
        //            view.setLatLonAltitude(viewPosition);
                                    new LatLon(view.getLookAtLatitude(), view.getLookAtLongitude()),
                                    view.getHeading(), heading,
                                    view.getPitch(), pitch,
                                    view.getZoom(), zoom,


        • #5
          The view has evolved quite a bit, sorry for the trouble.

          There is a number of classes that control the view in one way or another. Have a look at examples.applet.WWJApplet for various iterators or examples.ViewLookAround for some direct view setting code - in a first person approach (zoom = 0) though.

          The SAR application (in applications) has some rather sophisticated view controls in AnalysisPanel.updateView().

          Hope this helps you catch up in time

          Edit: some view discussion here too.
          Last edited by patmurris; 05-03-2008, 10:27 AM.
          My World Wind Java Blog & Plugins page


          • #6
            Dave Collins solved my problems :-) (see also my blog). Can you please tell me which are the versions of JOGL and GlueGen used this time? Remember that we NetBeans RCP programmers always need the version of libraries, also because of the versioning of modules.


            • #7
              I have no idea which versions of JOGL or GluGen we are using. We generally use the latest available that gets downloaded when you run the ant target jogl.setup - see Build.xml in the project root. Maybe you can figure the version by following the download link to Sun's site?
              My World Wind Java Blog & Plugins page


              • #8
                Some classes are missing, I found PlaceNameRenderer ,PlaceName, dosn't exist any more?
                Last edited by ayman; 05-04-2008, 12:05 AM.


                • #9
                  I also needed to update to the latest jogl to get it to run.

                  There are also changes in config/worldwind.properites so that has to get updated as well if you've strayed from the default.

                  There's definitely enough new stuff to keep me entertained for while. Thanks!


                  • #10

                    Thank you guys for this release.
                    But i've got a problem here with opengl :

                    Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: java.lang.IllegalArgumentException: argument type mismatch
                            at com.sun.opengl.impl.JAWT_DrawingSurfaceInfo.newPlatformInfo(
                            at com.sun.opengl.impl.JAWT_DrawingSurfaceInfo.platformInfo(
                            at com.sun.opengl.impl.GLContextImpl.makeCurrent(
                    Do you know how to solve it (i'm using the jogl libs from the WWJ_0.5 and i replaced the jogl dlls with the new ones) ?



                    • #11
                      Originally posted by patmurris View Post
                      I have no idea which versions of JOGL or GluGen we are using. We generally use the latest available that gets downloaded when you run the ant target jogl.setup - see Build.xml in the project root. Maybe you can figure the version by following the download link to Sun's site?
                      Ok, so it looks like they are GlueGen 1.0.5 and JOGL 1.1.1b8. It would be a very good thing if any new release of WWJ made an explicit reference to those versions :-) For instance, it looks like GlueGen is still the same since a few months, but the .jar distributed with WWJ submitted to 'diff' seems to be different. I bet it's just a timestamp with the compilation time, but knowing that the version didn't change would mean to avoid repackaging an unchanged jar with our applications. And, of course, knowing JOGL version would allow us to deal with possible incompatibilities with other pieces of the application that use it.


                      • #12
                        It would be a very good thing if any new release of WWJ made an explicit reference to those versions :-)
                        Yes it would be very useful.

                        Thank you, it's now working with this jogl version.


                        • #13
                          Hi Guys,

                          Thanks for the new release. However I've run in to a problem with the new View code.. and I think it's around the push/popReferenceCenter routines.

                          I have code that renders some data in WorldWind. This data is saved in "chunks" and I used push/popReferenceCenter to effectively move between these chunks during rendering so that I did not have to store all my data in large double values.

                          This worked fine until 0.5.0.. Now the data is not rendered correctly at all and when I move my view position the data seems to move with me!

                          I tried putting the 0.4.1 push/pop code back into AbstractView but this meant that the globe was not rendered correctly and all the tiles were drawn in the center of the earth!

                          Having looked at the 0.5.0 code I can't immediately see anything that has changed dramatically to cause such a fundamental change..

                          Anybody have any ideas?




                          • #14
                            One further item..

                            Have been playing with the WMS server now included in 0.5.0 and couldn't get it to serve up my CADRG files successfully. After going through the error messages I found that it was not building the file name up correctly to the files.

                            Guilty line and replacement here:
                            //RPFImageFile sourceFile = RPFImageFile.load(new File(RPFGenerator.this.rootDir + File.separator + frame.file.getPathToFilename()));
                            RPFImageFile sourceFile = RPFImageFile.load(new File(frame.file.getPathToFilename()));

                            Not sure if this was due to a configuration issue on my part.. or error in the code?.. but the original line does seem an odd way of building up the file name when it's already supplied as frame.file.getPathToFilename().




                            • #15
                              Hi Mark,

                              Re View push/popReferenceCenter:
                              Are you able to send/post the chunk of code that no longer works. I'd like to help debug your problem, and seeing your code would really help.

                              WW Team