Python Scripting Extension 1.2.0 has been released on November 30th, 2010.
This version of the Python Scripting Extension only supports Opticks 4.5.X. If you want a version of Python Scripting extension for use with Opticks 4.4.X, you must download an earlier version of this extension.
View complete list of new features and fixed bugs.
Download Python Scripting Extension
New Features
- The opticks module has been collapsed. This means that all of the sub-modules under opticks have been removed and the classes and types in the sub-modules have been moved into the opticks module. Because of this change, the opticks_q module has been removed. If you were using the opticks_q module, you can replace with the opticks module. This change is source breaking. (EXTRAS-101)
- The RasterElement class provides better support for NumPy arrays and using the extended slice syntax. Please see the data_array read-write property. This change is source breaking. (EXTRAS-99)
- The API was changed so that directly using RasterElementArgs, DataPointerArgs and DataAccessorArgs is no longer necessary, resulting in more compact code. In addition, the existing constructors were made to have a single purpose with new class methods added to those classes that had a dual purpose constructor. This change is source breaking. (EXTRAS-100)
- This release has been updated to work with the new changes to the Scripting Window. (EXTRAS-115)
- The existing "Python Interpreter" wizard item is now deprecated, please use "Run Interpreter Commands".
- You can now paste multi-line commands into the Scripting Window
- Error and output text from Python are now displayed in the Scripting Window, previously only error text would have been shown if both were printed out.
- When executing Python code in a wizard the error return code was set depending on whether any error text was printed. Now, the error return code is set based upon whether a Python exception was raised.
- When executing Python code from the configured "User File" or in a wizard, extraneous empty lines to separate blocks are no longer required.
- When executing Python code in a wizard, the python code is now executed with its own local scope and any created variables will not interact with variables created in the Scripting Window, unless the "global" statement has been used. This change is source breaking.
Bug Fixes
- The classes, types, method and properties have been renamed to follow the Python coding standard (PEP 8). In this process of doing this conversion, some names were shortened or a more compact name was chosen. This change is source breaking. (EXTRAS-92)
- In general, no argument functions or methods were replaced with properties to maintain a consistent style in the API. This change is source breaking. (EXTRAS-91)
- The API was changed so that functions and methods return the appropriate leaf class (e.g. RasterLayer, ThresholdLayer) instead of the common base class (e.g. Layer) in order to remain consistent with Python conventions. (EXTRAS-96)
Supported Opticks Versions
- This extension is supported in any version of Opticks 4.5.X that is Opticks 4.5.0 or later.