Developers should put working release notes here. Anything that needs to be communicated to users or developers concerning 4.9.0rc1 changes should be listed here. This will eventually be turned into end-user release notes and plug-in developer release notes.
Opticks 4.9.0rc1 has been released on April 20th, 2012.
This release is the first release candidate for 4.9.0. This release is marked as "not for production". The current plan is to allow two weeks for the community to validate this release. If you find any major issues please report them to our bug and issue tracker. If no major issues have been identified by May 7th, then creation of 4.9.0 will proceed. Currently, 4.9.0 is scheduled to be available on May 8th, and it will be a production release and can be used to create production products. Please download and validate this release to help ensure 4.9.0 is a great release!
The Opticks 4.9.0rc1 release is binary incompatible with any 4.8.X release. Any extensions built for Opticks 4.8.X will need to be re-built against 4.9.0rc1 in order to work with any 4.9.X release. Once an extension has been built against 4.9.0rc1, it will continue to work without changes on any later 4.9.X release.
View complete list of new features and fixed bugs.
Application Changes
New Features
- The KML exporter will now attach custom information to the kml extendedData tag. (OPTICKS-155)
- The user can now change the Units values (e.g. scaling factor) associated with an individual signature element. The Units values can be accessed via either the Data tab on the element's properties dialog or the Data tab on the import options dialog. This change does not apply to the signature library elements. It does apply to individually imported signatures and the individual signatures within a signature library. The Units values for all signatures within a signature library can still be changed via the Units item on the Data tab for the raster element associated with the signature library element. (OPTICKS-1256)
- Items in the Legend area of a plot now display their full name in a tool tip. (OPTICKS-1283)
- An importer and exporter for COLLADA DAE files are now available. (OPTICKS-1288)
- New options are available on the Georeference page of the Options dialog to set the default geocoordinate type and the latitude/longitude display format. Consequently, the "Dms Format" option was removed from the Layers/"Lat/Lon" page and the "Location Units" option was removed from the Layers/Measurement page of the Options dialog. Both of these values now respect the new Georeference options. The new Georeference options are applied to the following items (OPTICKS-1303):
- Latitude/longitude layer
- Measurement layer
- Annotation layer latitude/longitude insert object
- Raster layer coordinate status bar values
- Raster layer coordinate tool tip
- GCP Editor
- Zoom and Pan to Point dialog
- Georeference dialog
- Results Exporter options widget
- Capability was added to the Windows/Workspace/Cube page of the Options dialog to set the default crosshair color and size of a spatial data view. (OPTICKS-1317)
- Capability was added to the Spatial Data View tab of the Properties dialog to view/edit the current crosshair color and size of a spatial data view. (OPTICKS-1317)
- Annotation objects containing associated geocoordinates that are copied and pasted will now be positioned based on their geocoordinates instead of pixel coordinates if possible. (OPTICKS-1320)
- The HDF5 importers now support skip factors and subsets for on-disk read only processing of BSQ datasets. (OPTICKS-1360, OPTICKS-1361)
Bug Fixes
- The KML Exporter will no longer fail when any view or layer fails to export provided that at least one view or layer was successfully exported. (OPTICKS-164)
- Fixed the North and East Arrow annotations to point in the correct direction for georeferencing with higher order polynomials. (OPTICKS-808)
- NITF GCPs would occasionally load with incorrect values. This should now be fixed. (OPTICKS-1261, OPTICKS-1338)
- The Import Options dialog now always selects the first data set in the first file if all data sets are not imported by default. (OPTICKS-1263)
- Fixed typo in CMETAA TRE field name. (OPTICKS-1291)
- The pseudocolor layer now displays properly when classes containing only 0 and -1 values are present. (OPTICKS-1298)
- Copyright text for third party dependencies was updated. (OPTICKS-1300)
- The statistics widget in a histogram plot is now properly restored when loading a session. (OPTICKS-1307)
- Plots displaying gridlines are now properly restored in a session. (OPTICKS-1308)
- Specifying a band skip factor on import now correctly selects the last band if applicable. (OPTICKS-1314)
- Annotation layers containing CGM objects are now properly restored in a session. (OPTICKS-1324)
- The Message Log Window no longer reports a failure when GeoMosaic completes successfully. (OPTICKS-1331)
- Docking/undocking certain dock windows no longer activates the first workspace window displayed in the session explorer. (OPTICKS-1332)
- Opticks no longer crashes when loading a FITS file from the MRU. (OPTICKS-1337)
- The active plot in a plot window is now properly restored when loading a session. (OPTICKS-1344)
- The FITS importer will now correctly load data where the primary HDU contains no imagery but subsequent HDUs do contain imagery. This is common in FITS files generated by the Hubble Space Telescope. (OPTICKS-1351)
- Opticks no longer crashes when closing a data set containing a shape file annotation layer that was loaded using ArcGIS. (OPTICKS-1352)
- Images exported with the Pictures exporters (e.g. Bitmap, JPG, PNG) now properly export text that is drawn in the image. (OPTICKS-1362)
- The Chipping Window now works correctly when using skip factors and exporting directly to file. (OPTICKS-1363)
Extension Developer Changes
- If the import options widget in an importer updates the data descriptor of the selected data set in the Import Options dialog, changes to the data descriptor now persist when the Import Options dialog is opened multiple times. (OPTICKS-1217)
- Calling View::setClassification() or DataElement::setClassification() now only notifies the Subject::Modified signal once. Previously it notified twice, the first time where not all of the classification values had been set. (OPTICKS-1217)
- The DesktopServices::WindowRemoved signal is now properly emitted while the window is still fully created when closing a workspace window by clicking the 'X' button. (OPTICKS-1352)
SDK (Software Development Kit) Changes
New Features
- An initial custom layer capability was added. This capability allows developer plug-ins to draw directly in a custom layer within a spatial data view. The drawing and specific information needed by the view (e.g. layer extents) is implemented in a special DrawObject instance that is set into the custom layer. The custom layer also maintains an Any data element, where custom data drawn by the DrawObject can optionally be stored. This capability is demonstrated by the new CustomLayerPlugIn class within the PlugInSamplerQt project. (OPTICKS-504)
- The PlotWindow class has been removed and replaced with a new PlotSetGroup class, which is a widget containing multiple plot sets that can be added either to a dock window or a custom widget. (OPTICKS-541)
- Capability was added to DeskopServices to create and destroy PlotSetGroup instances. (OPTICKS-541)
- HistogramWindow now inherits DockWindow instead of the the obsolete PlotWindow class. (OPTICKS-541)
- The PLOT_WINDOW value in WindowTypeEnum has been removed. Code should be updated to use the DOCK_WINDOW value when calling DesktopServices::getWindow(). (OPTICKS-541)
- A new PlotSet::ViewAssociated signal has been added that is notified when a view is associated with a PlotSet. (OPTICKS-541)
- New const and non-const methods have been added to PlotSet to get the QWidget pointer for the plot set widget. (OPTICKS-541)
- The PlotSet::getAssociatedView() method has been replaced with separate const and non-const overloads. (OPTICKS-541)
- New ViewWindow::AboutToSetWidget and ViewWindow::WidgetSet signals have been added that are notified when a widget or view is set into the window. (OPTICKS-541)
- Const overloads have been added for the DockWindowShell::getAction() and DockWindowShell::getDockWindow() methods. (OPTICKS-541)
- A new DockWindowShell::getDockWindow() convenience method was added to get a pointer to the DockWindow. (OPTICKS-541)
- New signals have been added to DataDescriptor, FileDescriptor, and their subclasses that provide a more defined notification when their internal values change. (OPTICKS-1217)
- The Units class now inherits Subject and has defined signals that notify when the internal values change. (OPTICKS-1217)
- A new ClassificationTextChanged signal has been added to View that notifies only when the View's classification changes such that the displayed text changes. (OPTICKS-1217)
- A new compare() method has been added to DynamicObject and Classification that allows comparison of two objects. (OPTICKS-1217)
- The ClassificationWidget now updates its Classification object as the user changes values in the widget. (OPTICKS-1217)
- New classes SignatureDataDescriptor and SignatureFileDescriptor have been added. The Units map associated with a Signature element and the methods setUnits(), getUnits() and getUnitNames() have been moved to the new classes. The Signature class retains convienance methods for getUnits() and getUnitsNames(), but method setUnits() is only available from the new classes. Signature importers and exporters will have to be updated for this change. (OPTICKS-1256)
- Added OpenCOLLADA as a dependency. (OPTICKS-1288)
- New Georeference::GeocoordType and Georeference::LatLonFormat configuration settings are available to set the default geocoordinate type and latitude/longitude display format. The LatLonLayer::Format, LatLonLayer::GeocoordType, MeasurementLayer::GeoFormat, and MeasurementLayer::GeocoordType configuration settings have been removed, and their values now respect the new Georeference settings. (OPTICKS-1303)
- The GeocoordType::GEOCOORD_GENERAL enum value has been removed. Objects using this value should now check for an invalid enum instead. (OPTICKS-1303)
- A new GeocoordTypeComboBox class is available in PlugInUtilities that provides a combo box widget for users to select a supported geocoordinate type. (OPTICKS-1303)
- New methods are now available in the View class to set and get the crosshair color and size. (OPTICKS-1317)
- The Opticks build system now supports Subversion 1.7 in addition to all previously supported versions. This only affected developers building the Opticks source code and not those using only the SDK. (OPTICKS-1366)
- The means calculated in the Covariance plug-in are now available in a new child RasterElement and output arg. (OPTICKS-1371)