The real power of Opticks comes in the form of extensions. This is the place to learn how to create Opticks extensions.
Why Should I Write Extensions For Opticks?
It's free and open-source.
LGPL v2.1 license. This license allows any extensions that you write to be placed under your own license, be it a commercial or open-source.
The Opticks application and the SDK are free and open source. The LGPL v2.1 license always guarantees that. You don't have to worry about someone taking away the source code.
You can build your capability and deploy it to your users without every having to pay a dime. Not a dime for the SDK. Not a dime to deploy it your end users. Try that with competing tools like: ENVI, Remote View, ERDAS Imagine, SOCET GXP.
You can focus on what you do best. You no longer need to spend all your time re-inventing basic visualization capabilities.
You can modify Opticks. If Opticks isn't doing something you need, you can submit a patch and make it. Try that with competing tools.
We eat our own dogfood.
Most of the native functionality provided in Opticks is built as extensions using the same public API you'll be using.
Over 150 extensions included in the core software that are using the same public API you'll be using.
Access to the full source code.
Access to the Opticks source code isn't necessary to start building your own plug-ins. However, the source code is available if you want to extend the core capability or need help understanding Opticks. The source code is available.
What Can Extensions Do?
Import new file formats
Export data into new file formats
Implement new algorithms
Add new data types
Define new ways to georeference your data
Add new mouse modes and keyboard shortcuts
Add new toolbars and right-click menus
Add new windows, both to visualize existing data in new ways or entirely new data types.
Add new drag and drop behavior
Add new wizard items
Add scripting capability in your favorite programming language.
Browse the existing extensions listing to see the power available to extensions.
How Do I Start Making One?
Be familiar with C++. Almost all extensions are written in C++.