http://imagej.273.s1.nabble.com/Fiji-Jython-Interpreter-how-does-it-work-tp3692998p3693000.html
least that is my impression of it. I also found some information about
>
>
>
> maringa wrote:
>> I am familiar with ImageJ, I can write macros and I know the basics of
> Java. To make my software more userfriendly I wanted to write plugins
> instead, and I am now using Fiji (much more extensive!). I read that
> Jython was a very easy language to use, and that Fiji had a Jython
> Interpreter. My problem is, that I have no idea how to use it and I
> haven't found any tutorials. I tried to write MacroJ in the Interpreter,
> didn't work, I tried to write Java in the Interpreter, didn't work. And
> how do I save the code, seems like the interpreter just runs and
> compiles at once?
>>
>> I would really appreciate some basic introduction, my main questions:
>> - what language can I use?
>
>
> The language is python. The documentation is that for python 2.5, as
> available in the python.org website:
>
>
http://www.python.org/doc/2.5.4/>
> In addition to python's modules, classes and built-in functions, you may
> access java classes directly. Hence all classes as described in the java
> documentation and the ImageJ documentation are valid:
>
> Java standard library documentation:
>
http://java.sun.com/j2se/1.5.0/docs/api/>
> ImageJ Java classes documentation:
>
http://rsb.info.nih.gov/ij/developer/api/index.html>
>
> To see how it compares to Java code, see the scripting comparisons page,
> which will give you a reasonable idea:
>
>
http://pacific.mpi-cbg.de/wiki/index.php/Scripting_comparisons>
>
>> - where can I save the code? copy-paste into a textdocument and save
> as .java?
>
> The interpreter is meant for dynamic interaction with ImageJ.
> Keybindings for the interpreter are listed here:
>
http://pacific.mpi-cbg.de/wiki/index.php/Scripting_Help>
> To save the code, you may do either of:
> * Select the text on the interpreter running screen and choose "Copy"
> from the popup menu.
>
> * Write jython code directly to a text file, save it as a file with an
> underscore in its name and with extension .py, and drop it into fiji
> plugins folder or subfolder. Then run "Plugins > Scripting > Refresh
> Jython Scripts" and it will appear as new menu item, like any other
> plugin.
>
> Read this section in detail:
>
http://pacific.mpi-cbg.de/wiki/index.php/Jython_Scripting#Workflow_for_creating_Jython_scripts>
>
>> - tutorials?
>
>
> There is a brief jython for ImageJ tutorial here:
>
http://albert.rierol.net/jython_imagej_examples.html>
> The Jython Scripting page also contains some examples:
>
http://pacific.mpi-cbg.de/wiki/index.php/Jython_Scripting>
> The tutorials above assumes you know a bit of python the language. If
> you need a deep introduction to python the language, see the python
> tutorial:
>
http://www.python.org/doc/2.5.4/tut/tut.html>
>
> There are numerous python scripts in the plugins/Examples folder of
> fiji. You will identify them by their '.py' file name extension.
>
>
> Also, the Jython developers have a page with documentation and examples:
>
>
http://www.jython.org/Project/>
> ... particularly here:
>
http://www.jython.org/Project/userguide.html#interaction-with-java-packages> and here on accessing properties of an object instance:
>
http://www.jython.org/Project/userguide.html#javabean-properties> and here on java arrays:
>
http://www.jython.org/Project/userguide.html#java-arrays> and here on creating your own classes derived from java classes:
>
http://www.jython.org/Project/userguide.html#subclassing-java-classes-in-jython> and here on accessing databases:
>
http://www.jython.org/Project/userguide.html#database-connectivity-in-jython>
>
>
>> - how does the interpreter work
>
> Details on key bindings are here:
>
http://pacific.mpi-cbg.de/wiki/index.php/Scripting_Help>
> Basically: type text at the prompt (bottom text area), then push enter
> to execute it.
> To recall previously executed text, use the up/down arrows.
> To type in multilines, use shift+enter to open a new line within the
> prompt text area.
> To move up and down multilines, use shift+up arrow and shift+down arrow.
>
> If you mean how does it work internally, it's just a python language
> engine written in pure Java, which gets compiled on the fly to bytecode.
> But you shouldn't worry about that.
>
>
> As I said, the interpreter is for dynamic interaction with ImageJ. Here
> is an example.
>
> First open an image, then, from the Jython interpreter:
>
> >>> imp = IJ.getImage()
> >>> print imp
> imp[AuPbSn40.jpg 600x412x1]
> >>> print imp.width, imp.height
> 600 412
> >>> radius = 100
> >>> roi = OvalRoi( imp.width/2 - radius/2, imp.height/2 -radius/2,
> radius, radius )
> >>> imp.setRoi(roi)
>
>
> ... and observe how now your image has an oval ROI centered on it.
>
> If something goes wrong, you'll get a printout of an Exception.
> The first and second lines of the Exception stack trace are usually the
> most useful ones.
>
>
>> Thanks in advance!
>
>
> You are welcome.
>
> Albert
> --
> Albert Cardona
>
http://albert.rierol.net>
>
> ______________________________________
>
> This email is a reply to your post @
>
http://n2.nabble.com/Fiji---Jython-Interpreter%2C-how-does-it-work--tp2614733p2615111.html> You can reply by email or by visting the link above.
>
>