Opticks 4.7.0 has been released on June 17th, 2011.
This release is intended to replace 4.6.0 as the recommended release.
The Opticks 4.7.0 release is binary incompatible with any 4.6.X release. Any extensions built for Opticks 4.6.X will need to be re-built against 4.7.0 in order to work with any 4.7.X release. Once an extension has been built against 4.7.0, it will continue to work without changes on any later 4.7.X release.
View complete list of new features and fixed bugs.
Application Changes
New Features
- There are two new NITF TRE parsers available; one for SENSRB and one for ENGRDA. (OPTICKS-1133)
- There is a ENGRDA NITF TRE tab which appears in the element properties dialog when that TRE is present. (OPTICKS-1133)
- There is a new wizard item which generates an AOI from a RasterElement given threshold parameters. It can be used to generate a thresholded mask similar to converting a threshold layer to an AOI. It works in batch and interactive mode. (OPTICKS-1134)
- The metadata viewer by default sorts in ascending order by key instead of descending order by key. (OPTICKS-1135)
- The metadata viewer columns have been reordered to show key, value, and type instead of key, type, and value. (OPTICKS-1135)
- The IGM georeference plug-in now supports latitude/longitude IGM files as well as UTM IGM files. (OPTICKS-1150)
- The Wavelength Text Exporter can now save files in two-column or four-column format when running from within a wizard. (OPTICKS-1171)
- PCA now allows the user to set the minimum value for the output data. (OPTICKS-1074)
Bug Fixes
- The splash screen no longer covers the "no log directory" error on startup. (OPTICKS-112)
- The user now receives a warning when comma-space is entered with a vector<string> Wizard Item. (OPTICKS-879)
- NITF images using VQ compression now load properly again. (OPTICKS-939)
- The ENVI Exporter now correctly saves the "geo points" field in the header file such that it can be properly read by the ENVI application. (OPTICKS-1026)
- Selecting true color bands to display on import now works properly when specifying a subset of bands. (OPTICKS-1032)
- Selecting the "Run Flicker Tools when done" option in the Data Fusion wizard now correctly opens the Flicker Controls dock window. (OPTICKS-1049)
- The ENVI Library Exporter now saves the correct "reflectance scale factor" value in the header file. (OPTICKS-1050)
- Opening and closing the Properties dialog for a data set with a large amount of metadata is much faster than in previous releases. (OPTICKS-1054)
- PCA now properly outputs signed and floating point data. (OPTICKS-1074)
- Layers hidden during session save are now hidden properly during session restore. (OPTICKS-1095)
- Minimized and maximized windows are now restored properly during session restore. (OPTICKS-1096)
- The histogram plots for a data set are now properly destroyed when creating a new session. (OPTICKS-1127)
- Restoring a session in which a measurement object was added to a view object in a Product Window no longer causes a crash. (OPTICKS-1155)
- Closing a data set when saving a session before the Progress dialog is displayed, either via auto-save or from the File menu, no longer crashes the application. (OPTICKS-1143)
- GCPs are no longer offset by half a pixel in each direction. (OPTICKS-1128)
- PCA no longer prompts the user once the algorithm has started. (OPTICKS-918, OPTICKS-1131)
- The top-level element in a metadata XML file (the Metadata Exporter) is now correct and the metadata XML files will validate against the Opticks XSD. (OPTICKS-1139)
- The names of the Pass Area options on the threshold layer histogram plot context menu are now the same as the option names in the threshold layer properties dialog. (OPTICKS-1141)
- A spelling error was corrected in a Band Math warning message. (OPTICKS-1160)
- The DOM error which appeared in the message log when the application was started for the first time is now gone. (OPTICKS-1065)
- The ENVI importer now places GCPs correctly. Previously, they were placed half a pixel off their actual location. (OPTICKS-1170 )
- Selecting a nested data set in the Import Options dialog and loading it now creates the element with the correct hierarchy. (OPTICKS-1186)
- The copyright symbol is now shown properly when running the Opticks batch executable. (OPTICKS-1137)
- Performance has been improved in some cases when adding and removing large numbers of annotation/aoi objects. (OPTICKS-1055)
Extension Developer Changes
- Several potential memory leaks were fixed throughout the application. (OPTICKS-1169)
- Performance has been improved in some cases when adding and removing large numbers of graphic objects. (OPTICKS-1055)
SDK (Software Development Kit) Changes
New Features
- Three new signals were added to MessageLogMgr: (OPTICKS-440)
- LogPathChanged
- LogAdded
- LogRemoved
- The MessageLogMgr::getLog(const std::string&) method is now const and no longer creates a new log if a log with the given name does not exist. A new log can be created by calling a new MessageLogMgr::createLog() method. To maintain existing functionality, the StepResource and MessageResource objects still create a message log if a log with the given name does not exist. (OPTICKS-440)
- There is a framework for writing properties/viewer widgets for NITF TREs. See the EngrdaWidget class for an example. (OPTICKS-1133)
- A new getGcpList() protected method has been added to RasterElementImporterShell. (OPTICKS-1148)
- The following virtual protected methods have been added to RasterElementImporterShell: (OPTICKS-1148)
- createRasterLayer()
- createGcpLayer()
- createLatLonLayer()
- The code in RasterElementImporterShell::execute() to create the GCP layer and the latitude/longitude layer has been moved to RasterElementImporterShell::createView(). (OPTICKS-1148)
- Added a new shell class for custom NITF importers. (OPTICKS-1149)
- A new plug-in input argument has been added to the Wavelength Text Exporter to indicate whether band numbers should be saved. (OPTICKS-1171)
- Opticks is now built using Visual Studio 2010 SP1 on Windows. Plug-ins can be built against either Visual Studio 2010 or Visual Studio 2010 SP1, either will be binary compatible with Opticks. (OPTICKS-1178)
Bug Fixes
- RasterUtilities::findBandWavelengthMatch() now works properly when a data set has been loaded with a subset of bands and properly returns partial wavelength matches. (OPTICKS-1032, OPTICKS-1129)
- A successful run of the SampleGeoref plug-in now finalizes the message log with success instead of an error. (OPTICKS-1083)
- The internal Workspace class now subclasses QMdiArea instead of the deprecated QWorkspace class which changes some widget parenting and deletion order; no Opticks interface changes were required, however, some of the underlying functionality (e.g.: default window size) changed. (OPTICKS-1096)
- The MessageLog::getLogName() method is now const. (OPTICKS-440)
- The MessageLogMgr::getLog() method is now const. (OPTICKS-440)