Newbie Developer Questions

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Newbie Developer Questions

Nathan Jennings
I am a recent new comer to the Opticks world.  I am interested in developing some plug-ins that will hopefully work within Opticks.  My hope is that I can add some functionality to Opticks so that I can provide this to students in my Remote Sensing and Digital Image Processing class...something that they can take home and use to supplement my course.  I can program, but my c++ is rusty.  Looking briefly at the developer help and the SDK documents and information, I assume the c++ compiler is Visual Studio.  Something like the GNU compiler won't work, I suppose.   If I can't use a free compiler, then I will need to purchase Visual Studio.  I also found in the mail list a request for some Plug-in documentation and that a "getting started document" request was too broad.  For my connecting the dots to develop a plug-in appears complicated without some kind of example that shows how to properly develop a plug-in.  For example, what are the dependencies of various header files or other "sample" code or interfaces that are needed to properly communicate with Opticks.

I would appreciate a little direction to help me get started.

What compiler do I need and/or what compilers are supported?  I will be developing under Windows.

It looks like various sample sets of code are available to "fill in" with a developer's own code (e.g. a specific image processing algorithm or process).

I would also like to keep posted of any developer documentation that is coming or is being developed.

I appreciate any guidance to get started.

On a specific note, does Opticks have a method or process to use a moving window (kernel) concept?

Thank you in advance.  Upon successful development I will be happy to provide my plug-ins and contribute documentation.

Nate

Nathan Jennings
Sr. GIS Analyst
1000 I. Street #170
Sacramento, CA 95814
[hidden email]

P: 916.808-7857
F: 916.264.7970


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

RE: Newbie Developer Questions

John Prikkel
Newbie Developer Questions
Hi Nate,
 
I agree buying Visual Studio would be a limiting factor. However, I actually think you can use Visual Studio 2005 Express. Updates on the developer guide should be out soon. Kip or Ryan can get you more information.
 
Thanks,
John


From: Nathan Jennings [mailto:[hidden email]]
Sent: Sun 4/6/2008 11:33 PM
To: [hidden email]
Subject: Newbie Developer Questions

I am a recent new comer to the Opticks world.  I am interested in developing some plug-ins that will hopefully work within Opticks.  My hope is that I can add some functionality to Opticks so that I can provide this to students in my Remote Sensing and Digital Image Processing class...something that they can take home and use to supplement my course.  I can program, but my c++ is rusty.  Looking briefly at the developer help and the SDK documents and information, I assume the c++ compiler is Visual Studio.  Something like the GNU compiler won't work, I suppose.   If I can't use a free compiler, then I will need to purchase Visual Studio.  I also found in the mail list a request for some Plug-in documentation and that a "getting started document" request was too broad.  For my connecting the dots to develop a plug-in appears complicated without some kind of example that shows how to properly develop a plug-in.  For example, what are the dependencies of various header files or other "sample" code or interfaces that are needed to properly communicate with Opticks.

I would appreciate a little direction to help me get started.

What compiler do I need and/or what compilers are supported?  I will be developing under Windows.

It looks like various sample sets of code are available to "fill in" with a developer's own code (e.g. a specific image processing algorithm or process).

I would also like to keep posted of any developer documentation that is coming or is being developed.

I appreciate any guidance to get started.

On a specific note, does Opticks have a method or process to use a moving window (kernel) concept?

Thank you in advance.  Upon successful development I will be happy to provide my plug-ins and contribute documentation.

Nate

Nathan Jennings
Sr. GIS Analyst
1000 I. Street #170
Sacramento, CA 95814
[hidden email]

P: 916.808-7857
F: 916.264.7970


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]


This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.
Reply | Threaded
Open this post in threaded view
|

RE: Newbie Developer Questions

Kip Streithorst
Administrator
In reply to this post by Nathan Jennings
You will need Visual Studio 2005.  If you give me a couple of days I can
let you know if Visual Studio 2005 Express will work and some
instructions on how to install it.  If you're not aware, Visual Studio
2005 Express is free to download from Microsoft's site.

Trevor has been working on a "Tutorial" that includes some very simple
plug-ins to get people started.  Dave and I and are in the process of
code reviewing this before it can be integrated into the next build.  In
the meantime, you can browse the plug-ins in Subversion here:

https://opticks.ballforge.net/source/browse/opticks/branches/current/COM
ETIV-1239/Code/application/PlugIns/src/Tutorial/

If you are interested, send me a direct message and I can get you some
compiled versions of this tutorial plug-in along with html tutorial that
goes along with this.

Here are the general steps you'll need to follow:

1) Download and Install Opticks - go to
https://opticks.ballforge.net/servlets/ProjectProcess?tab=1
2) Download and Unzip the SDK somewhere on your computer -
https://opticks.ballforge.net/servlets/ProjectProcess?tab=1
3) Install Python 2.5 if you don't already have it -
http://www.python.org/download/
4) Download and Unzip the SDK dependencies -
https://opticks.ballforge.net/servlets/ProjectDocumentList?folderID=33&e
xpandFolder=33&folderID=2
5) Run "python dependencies.py" on your unzipped SDK dependencies.
6) Download the open-source Qt (version 4.3.1) from Trolltech -
(qt-win-opensource-src-4.3.1.zip from ftp://ftp.trolltech.com/qt/source/
)
7) Follow our build instructions for Qt, which can be found inside the
general Opticks build instructions
-(https://opticks.ballforge.net/source/browse/opticks/trunk/current/Code
/README.windows?view=markup )
8) Create a new environment variable called OPTICKSDEPENDENCIES and
point it to your Unzipped SDK dependencies that includes Qt.
9) Attempt to compile the tutorial plug-ins and follow the tutorial.
(e-mail if you want a early build of this)

Please provide feedback as you're going through this process, I'd like
to know where the rough patches are so that I can try to smooth things
over.

Thanks,
Kip


-----Original Message-----
From: Nathan Jennings [mailto:[hidden email]]
Sent: Sunday, April 06, 2008 11:34 PM
To: [hidden email]
Subject: Newbie Developer Questions

I am a recent new comer to the Opticks world.  I am interested in
developing some plug-ins that will hopefully work within Opticks.  My
hope is that I can add some functionality to Opticks so that I can
provide this to students in my Remote Sensing and Digital Image
Processing class...something that they can take home and use to
supplement my course.  I can program, but my c++ is rusty.  Looking
briefly at the developer help and the SDK documents and information, I
assume the c++ compiler is Visual Studio.  Something like the GNU
compiler won't work, I suppose.   If I can't use a free compiler, then I
will need to purchase Visual Studio.  I also found in the mail list a
request for some Plug-in documentation and that a "getting started
document" request was too broad.  For my connecting the dots to develop
a plug-in appears complicated without some kind of example that shows
how to properly develop a plug-in.  For example, what are the
dependencies of various header files or other "sample" code or
interfaces that are needed to properly communicate with Opticks.

I would appreciate a little direction to help me get started.

What compiler do I need and/or what compilers are supported?  I will be
developing under Windows.

It looks like various sample sets of code are available to "fill in"
with a developer's own code (e.g. a specific image processing algorithm
or process).

I would also like to keep posted of any developer documentation that is
coming or is being developed.

I appreciate any guidance to get started.

On a specific note, does Opticks have a method or process to use a
moving window (kernel) concept?

Thank you in advance.  Upon successful development I will be happy to
provide my plug-ins and contribute documentation.

Nate

Nathan Jennings
Sr. GIS Analyst
1000 I. Street #170
Sacramento, CA 95814
[hidden email]

P: 916.808-7857
F: 916.264.7970


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]




This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

RE: Newbie Developer Questions

tclarke
Administrator
In reply to this post by Nathan Jennings
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Opticks does not have a convolution kernel plug-in but this is not a
difficult thing to implement. There are a few ways to go about this
depending on your final goal.

If you want to convolve the visible channels and view the results, you
can write a Cg shader. This will not modify the data but is quite fast.
It also requires a fairly modern graphics card with support for fragment
shaders. There's not much documentation on getting started with shaders
on opticks but if this is the route you'd like to take, I can write some
intro documentation for you.

If you want to modify the actual data in the cube, you can write a
convolution plug-in. You can store the results either in a different
data cube (to be displayed in a separate window or a separate layer in
the same window) or you can modify the existing data. The in-progress
tutorial that Kip mentioned in his reply has some information on using
DataAccessor. This is how you access the cube data.

- -----Original Message-----
From: Nathan Jennings [mailto:[hidden email]]
Sent: Sunday, April 06, 2008 11:34 PM
To: [hidden email]
Subject: Newbie Developer Questions

...

On a specific note, does Opticks have a method or process to use a
moving window (kernel) concept?
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (MingW32)

iD8DBQFH+iD3+xUTKUxH/LkRAv+0AJ0V3wcQcN/A2Q3qXHNEI3TCWtTLDwCfUWjb
5OPCY4GM3wbBf8Xr3LwYLq0=
=oSsh
-----END PGP SIGNATURE-----



This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]