Category Archives: Bio7

Bio7 1.7 for Windows Released!

07.08.2013

A new Windows version of Bio7 is available. This version comes with a lot of new features and improvements for Java, R and ImageJ. One highlight is that you can now interpret Jython (Python) code with Bio7. In addition a new console implementation is available which offers access to a native shell, different Java interpreted languages, etc.

Below you find new videos about some new features of Bio7 1.7, a general feature overview and installation details.

Videos:

Compile Java with Bio7 1.7

Create a custom JavaFX view

The new Bio7 Console

Particle Analysis with ImageJ, R and the Points panel

Plot data with R and ImageJ

Interpret Python scripts in Blender interactively

New features:

General

  • Updated RCP platform to Eclipse 3.8.2
  • Custom views can now be created with ID’s for Custom views inside of Bio7.
  • Updated ImageJ
  • Updated R
  • Updated Rserve
  • Changed the OpenOffice API and actions to LibreOffice
  • New file wizards available (Jython, Html, Knitr, JavaFX, etc.)
  • Removed the BeanShell menu (see section scripts)
  • Removed the BeanShell console (now available as part of the Bio7 console)
  • Extended the console of Bio7 (see section Scripts)
  • Added Console options and typical commands
  • Added console text options
  • Integrated a new webeditor (JavaFX) which can be opened as a regular editor in Bio7
  • Added new libraries for the support for e.g. serial communication (useful for Arduino boards)
  • New examples available (serial examples, Jython, Multiple classes, etc.)
  • Added native shell access to the Bio7 console (see image below)

nativeconsole

  • Added command templates to the shell menu
  • Improved R console messages
  • Updated embedded scientific Java libraries
  • Now an Bio7 editor can add code snippets from selections to the Snippets view
  • Rearranged the Image-Methods view
  • Improved the Linux R output
  • Startup scripts are now interpreted by Groovy for a custom startup of Bio7 (if enabled in the preferences)
  • Added some new API methods (e.g. function to write to the new console).
  • Rearranged and renamed some preferences for an improved overview.
  • Added editor menus for the language specific preferences.
  • Cleaned up the popup menu in the Navigator view and removed old BeanShell actions
  • Native Python execution from the shell, Jython editor and the Flow editor can be enabled in the Bio7 preferences
  • Native R execution from the shell, R editor, some R actions and Flow can be enabled in the Bio7 preferences
  • Updated all native execution methods to use the recommended ProcessBuilder for Java >=1.7.21
  • Resolved and fixed bugs
  • Added preferences for Python, R and Blender to execute native R, Python, Blender Python scripts if enabled in the Bio7 preferences.
  • Added default options for Python, Blender and R.
  • Added new examples for Bio7 1.7

 Java

  • Dynamic compilation support for multiple Java classes and subclasses
  • Compilation to *.class files is now supported for multiple Java classes
  • If a *.class is selected and a main method is available it can be executed with a new action in the context menu of the Navigator view.
  • Error indication support for multiple classes
  • Drag and drop support for full classes stored along with grid definitions
  • Added a new option to compile Java classes or classbody files in the Bio7 preferences
  • JRE ext directory can be used to extend the Java classpath with external Java libs
  • JavaFX support for Bio7
  • *.fxml files can now be created in the Bio7 workspace (along with a main Java file and a Controller file for the free available JavaFX Scene Builder from Oracle, see image below)

javafx

  • Support for JavaFX Java source files
  • JavaFX Scenes can be embedded into custom views
  • Fullscreen support for JavaFX views (F1 = Fullscreen, F2= Fullscreen frame, F3=Fullscreen frame secondary monitor, F4= Fullscreen frame tertiary monitor, F5= Fullscreen frame quartiary monitor)
  • If Fullscreen is activated an info message appears in the view which is in Fullscreen mode.
  • Java files and subfiles can be instantiated and packages will be recognized, too (only if the file is opened in the Java editor and compiled with the editor action. Compilation from the context menu is available, too (without package recognition!)
  • New Java wizards available (JavaFX, etc.)
  • The main class of a Java project (which possible consists of multiple dependent subclasses) can be dragged in the Flow editor for execution.
  • Added an action to compile multiple Java classes (context menu Navigator view)
  • Added several compiler options to the Bio7 Java Preferences
  • Added an editor context submenu to open the Java preferences faster
  • The Constructor of a Java file is executed after compilation if available.
  • If a main method of a regular Java class is available (not extending the Model class of Bio7!) it will be called after the compilation and instantiated.

 Scripts

  • Extended the default console to accept input for different Script interpreters
  • BeanShell, Groovy and Jython commands can be evaluated in the new console
  • Added a function to show a history of past commands (arrow keys)
  • Bio7 now supports the  Jython interpreter
  • New Jython editor available (see image below)

jythoneditor

  • Added new icons for the different editors
  • Removed the old BeanShell console
  • Removed the old BeanShell menu in the main menubar of Bio7
  • Jython scripts can now be evaluated in the Flow editor
  • Jython scripts can use the Bio7 API
  • New file wizards for the different scripting languages available
  • Python scripts can be executed if the native execution is enabled in the Bio7 preferences and the path to Python has been specified in the preferences
  • Blender Python scripts can be executed if the native execution is enabled in the Bio7 preferences and the path to Blender has been specified in the preferences.

R

  • Knitr support to compile knitr files (*.html, *.latex, etc.)  in the Navigator of Bio7 (context menu)
  • Knitr support in the Flow editor of Bio7 (for example to generate a report of simulation results, see image below)

knitrflow

  • Plots can be created interactively with the shell or the editor and are opened in ImageJ (as a plot display)
  • New option in the Bio7 Rserve preferences to change the definition of the default plotting device.
  • Added a new option to start Rserve automatically after Bio7 startup
  • Experimental support to activate plots (Keys: Alt+a) in a blocking job as long as plots are opened (the R script for this functionality can be accessed and if necessary improved).
  • Support for the interaction with commands (Windows) which require console commands (e.g. scan() – if the console requires input the textfield will be marked with a different color).
  • Faster „Image“ plot in the plot section of the R-Shell view.
  • Added a custom menu for scripts (R, Groovy, Jython, BeanShell) in the R-Shell view menu . Scripts which can be dropped in a special Bio7 folder
  • Added a submenu in the context menu of the R editor to open the R preferences faster
  • Added R package skeleton action in the context menu of the Navigator view to create R packages (with Rserve).
  • Added R package built and install actions (with the native shell).
  • Added R action to create *.pdf files out of *.Rd files (with the native shell)
  • Added options in the Bio7 preferences for the built package commands
  • Added native R access without the necessity to use Rserve. The editor, the shell and the Flow editor can be used with this new feature.
  • Added fast workspace transfer function (F1-Key) from Rserve to the native R workspace
  • Added Drag and Drop *.Rdata file feature for the native R access.
  • Added Bio7 preferences options to enable the use of the native startup of R
  • Added R and Rserve startup arguments in the Bio7 preferences.
  • Added a submenu in the packages tab of the R-Shell view to refresh the view of available packages.
  • Rearranged the R perspective and added the Editor Area, FileNavigator and Console view (ImageJ will be opened, too if a plot command occurs, see images below)

newrperspectivenewrplot

  • If a plot command occurs the ImageJ-View will be opened with the plot as a default plotting device.

R – ImageJ

  • Added a new method to transfer multiple selections from all or selected slices of a Stack (see image below)

stackselection

  • Splitted the pixel selection transfer action into two different actions for a better usability.
  • Improved the Particles transfer method. Now uses the default ImageJ options.

Points view

  • Points panel is now updated when Reset field action etc. is pressed.

Webeditor

  • Added a new web editor with source and GUI support (the GUI part uses the JavaFX web editor)

htmleditornew

  • Webeditor is now a regular Bio7 editor
  • New file wizards available to create *.html files along with *javascript files
  • Added action in the GUI to open the created file in the system web browser

Flow editor

  • Gridsize for the layout can be configured
  • Flow editor can now execute  Jython scripts
  • Flow editor can now execute either native python or Blender python scripts (if enabled in the preferences)
  • Flow editor can now execute knitr *.Rhtml reports
  • Flow editor can now execute knitr *.Rtex reports
  • Flow editor can now execute a Java main class (dependant subclasses will automatically compiled, too)

WorldWind

  • Improved the warnings for the access of the WorldWind API (if the WorldWind view is not active).
  • Updated WorldWind to version 2.0 (using JOGL 2.0)
  • Added a function to capture an animation to an ImageJ stack in a Bio7 job.
  • Added options to adjust the framerate and the amount of frames to be rendered.
  • Added WorldWind GeoTIFF import (coordinates will be set to the textfields)

geotiff

  • Added a „Go to” function for the GeoTIFF
  • Added a first WorldWind Shapefile import

3d View

  • Updated OpenGL library to JOGL 2.0
  • Updated all Bio7 OpenGL examples to be compatible with JOGL 2.0

jogl20

Bug Fixes

  • Improved overall stability
  • Fixed memory bugs with SWT

 

Installation Windows

The installation of Bio7 is similar to the installation of the Eclipse environment. Simply decompress the downloaded *.zip file in a preferred location on your file system. After decompressing with a standard zip-tool (like WinZip, Win Rar) the typical file-structure of an Eclipse based application will be created.

To start the application simply double click on the Bio7.exe (Windows) .

Optional R packages

In Bio7 1.7 please install the R package rgdal which is needed for some import and export scripts and knitr to use the report features with R.

For further information please read the Bio7 documentation on the Bio7 website.

Info about system requirements

It is recommended that your computer should have at least 2048 mb ram and a 1 ghz processor. A 3d Graphics Card which is OpenGL enabled (only necessary for the “Spatial” view and the embedded “WorldWind” view. To use the LibreOffice feature of Bio7 an installation of OpenOffice (LibreOffice) >= 2.0 is required. The path to LibreOffice can be adjusted in the Bio7 preferences to the default path.

 

 

 

 

 

 

Bio7 Upcoming Features

19.09.2012

In the next Bio7 release it will be possible to create custom GUI’s with the JavaFX Builder or with the new JavaFX API. I already integrated an API to load and compile a *.fxml file into a custom view of Bio7. GUI interfaces can easily be created with the new available JavaFX Scene Builder from Oracle and saved  in a project of the Bio7 workspace. Objects and actions are accessible by means of Dependency Injection using the @FXML annotation.

Furthermore in the next release several custom views can be created side by side (i removed the tab implementation) e.g. to combine several custom GUI’s and panels. In the screenshot below an example shows the created GUI of the Scene Builder (screenshot above)  side by side with three other custom views (processing API examples).

Bio7 1.6 for Windows and Linux released!

01.08.2012

Finally i released a new version of Bio7 with many improvements and new features. Updated tutorials are available, too. The new Bio7 1.6 release can be downloaded here. Please also download the examples *.zip file from the sourceforge website which contains new examples for Bio7 1.6 (e.g. an example to cluster an image folder with ImageJ and R).

New Features:

 Bio7 General

– Bio7 1.6 is now based on Eclipse 3.8.0.

– The option “Always run in background”  is now selected by default.

– Integrated new Bio7 grid file format to import or export formatted spreadsheet data (for images and fonts, etc.).

– Updated the integrated Java Libraries.

– Added the application API from “Processing”  (a few programming examples are available in the examples for Bio7 1.6).

– The main “Processing” panel can be embedded in the “Custom” view of Bio7 for integration (see screenshot below)).

– Updated WorldWind to the latest version.

– Integrated more syntax coloring options for the editors of Bio7.

– Now fonts for selected syntax types can be adjusted in the Bio7 editors, too.

– Added drag and drop text support for the different Bio7 editors.

– Double-Click in brackets selects the code in the brackets of the editors.

– Added some default Update sites for Bio7 (e.g. EGit).

– Updated links in the Bio7 browser.

– Updated the Bio7 API description!

– Refactored several plugins.

– Updated and improved many Bio7 API methods.

– Created new Bio7 API methods for the Bio7 grid.

– Added update support for the Bio7 plugins with the integrated p2 Update Manager (see screenshot below).

– Fixed some bugs.

– Reorganized the file wizard of Bio7 (see screenshot below).

Java Compiler

– Added Java 7 support for the Java compiler and editor.

– Bio7 now uses the standard Java compiler to compile Java source (with the support of the Janino API).

– Improved the error messages for a Java compilation (if errors occur).

– Compilation errors are now marked within the Java editor (selectable – see screenshot and video tutorial below).

– In the Outline view selected members of a Java class are now shown (created from the “Abstact Syntax Tree” (AST)).

Video Tutorial: http://bio7.org/flash/createjava.htm

– Now a complete Java classes can be compiled with the Java compiler dynamically (context menu Navigator view). If a main method is available it will be invoked automatically after compilation (see screenshot below).

– If a class extends the “Model” class it will be compiled like the default Java classbody (ecomain method can be invoked!).

– New option to switch between classbody AST parsing and class AST parsing (for the display of the Outline view) .

– New Wizards are available for Java files and ImageJ files, etc.

– New rearranged Wizard Pages are available for an improved overview.

R Specific

– Update to R 2.15.1.

– Update to Rserve 0.6.8.

– Added text drag and drop support for the R editor.

– Added more source formatting options for the editor.

– Added a display for the loaded packages (use the “Update” method in the R-Shell view to see the current loaded packages).

– Added a simple Sweave support for Bio7 (installation of e.g. MikeTex necessary!  The actions for Sweave are available in the context menu of the  Navigator view if a Sweave or Latex file is selected!)

R + ImageJ

– Added a new image transfer option to transfer RGB image values to R in one shot (as raw vectors or as a  R, G, B integer matrix – see screenshot below).

– Added a new transfer mode to transfer selected pixels (all pixels within an area selection). If the ROI Manager in ImageJ is active all ROI image data (selected pixels)  for all opened images (every roi is applied to all opened images regardless in which image the ROI was created!) is transferred to R (also recognizes now the transfer type adjustments!). For e.g. supervised classification purposes a signature is added to each selection matrix, too. If the ROI manager is not active the standard transfer method is invoked (see screenshots below – for an explanation please follow the video tutorial link below the images).

Video tutorial: http://bio7.org/flash/roiselections.htm

– Added a new API to transfer images to R with ImageJ in a windowless mode for the purpose of batch computing of images (see examples).

Video demonstration: http://bio7.org/flash/batchimagejr.htm

– Added a new API to transfer R image vector data as an ImageJ float image in place e.g. for gridded simulations in R (and in silent mode without printing evaluation messages).

ImageJ

– Updated the integrated ImageJ application to the latest ImageJ version 1.47a.

– ImageJ Plugins can now be compiled dynamically with the integrated dynamic Java compiler. The action is available in the context menu of the Navigator view if a Java file is selected. The action compiles the active Java file in  the editor. For this action it is not necessary anymore to put the class file in the plugins directory of ImageJ. Classfiles and *.jar archives can be created with available actions in the Navigator view, too.

3d view

– Added speed adjustments for the 3d view in z-direction.

– Added a “Reset View” button.

Bio7 examples

– Added a few examples for the new image API methods.

– Added a Swarm example (for the OpenGL 3d view).

– Added Java Processing examples.

Installation

System requirements:

It is recommended that your computer should have at least 1024 mb ram and a 1 ghz processor.
A 3d Graphics Card which is OpenGL enabled (only necessary for the “Spatial” view and the embedded “WorldWind” view.
To use the OpenOffice (LibreOffice) feature of Bio7 an installation of OpenOffice (LibreOffice) >= 2.0 is
required. The path to OpenOffice will be automatically fetched by Bio7 from the registry (Windows) or can be adjusted in the Bio7 preferences (Windows, Linux, MacOSX) to the default path.
For the MacOSX version a JRE >=1.6.0 has to be installed if not available on the OS by default (For Windows and Linux a JRE is bundled in the Bio7 installation package).

Installation Windows, MacOSX and Linux:

The installation of Bio7 is similar to the installation of the Eclipse environment. Simply decompress the downloaded *.zip file in a preferred location on your file system.
After decompressing with a standard zip-tool (like WinZip, Win Rar) the typical file-structure of an Eclipse based application will be created.
To start the application simply double click on the Bio7.exe (Windows) or Bio7 (Linux, MacOSX) file.

R Windows specific:

Because Windows Vista, Windows 7, etc. is very sensitive to user rights etc. the package installation was reorganized in Bio7 1.4 for installable add-on packages inside of Bio7. The default add-on package location in a Bio7 release is now:

“Bio7\plugins\Bundled_R_x.xx.xx\R\site-library”

At this location inside of Bio7 the packages will be installed by default (if not changed!).

Windows only (if needed)!:

To write the R package location path to the Windows registry please start Bio7 with the enabled
option “Install path at startup” to set the registry path to the bundled R location. By default this option is disabled not to harm any default user installation of R.
In Bio7 x.x please install the R package rgdal which is needed for some spatial import and export scripts.
Please note that the import scripts for spatial data can have problems with special text encoded filenames. If an rgdal import script produces an error the Rserver will probably die and you have to restart Rserve.

R Linux specific:

To use R from Bio7 please install R with a package manager.
Also the installation of the Rserve library is required. This can be easily done inside R by typing:

> install.packages(“Rserve”, dependencies=TRUE)

in the R console.

After the installation of R the path to the R (if not using the default path) application has to be
adjusted inside of Bio7 (“Preferences->Preferences Bio7”). In addition the path to the (add-on) packages
install location has to be adjusted, too (“Preferences->Preferences Bio7->RServe Preferences”).
Please also set the user rights for the folder. This is sometimes necessary if you would like to install packages with the Bio7 interface and you don’t have the user rights. (Start Rserve with a shell for an analysis if problems occur!  ->  R->Preferences->Rserve preferences->Start with shell)
Since Bio7 1.4 default paths are set which are usually correct for a Linux distribution.
If Rserve is running you can then easily install the package rgdal with the Bio7 interface which is needed
for the import/export scripts (you can also install it beforehand with R!).

Linux (only 32bit): Scanner with Sane:

If the Sane interface is not running by default please set a symbolic link (the shared library has to be found!):
ln -s /usr/lib/libsane.so.1 /usr/lib/libsane.so

R MacOSX specific

To use R from Bio7 please install the latest R. After the installation of R start R and install the Rserve package:

> install.packages(“Rserve”, dependencies=TRUE)

The default installation paths of Bio7 are pointing to a standard installation of R but can be adjusted in the
preferences of Bio7 (“Preferences->Preferences Bio7”). In addition the path to the (add-on) packages install location can be adjusted, too if necessary (“Preferences->Preferences Bio7->RServe Preferences”). If Rserve is running you can then easily install the package rgdal with the Bio7 interface which is needed for the import/export rgdal scripts (you can also install them beforehand with R!).

Examples

On the Bio7 SourceForge website you can download examples for the Bio7 application (recommended!). In addition the examples can
be accessed on github. To install the Bio7 examples please import the examples from the Examples.zip file.

“File->Import->Existing Projects into Workspace”.

Select the archive file “Examples.zip” and the two projects “Bio7 Examples” and “Ecological Modelling”. Press “Finish” to import them into Bio7 (they will be imported to the workspace location).

Increased Java memory

Windows and Linux

For an increased Java heap space open the Bio7.ini file in the install directory of Bio7. In the file you can change the default memory settings e.g. the initial heap size -Xms and the maximum heap space -Xmx.

MacOSX

For an increased Java heap space open the Bio7 package (context menu if you click on the icon) then go to Contents->MacOS and open the Bio7.ini file with a texteditor. In the file you can change the default memory settings e.g. the initial heap size -Xms and the maximum heap space -Xmx.

Install Eclipse, R, ImageJ Plugins or Packages in Bio7

18.03.2012

Bio7 can be extended in several different ways with Eclipse plugins, R packages, ImageJ plugins and custom scripts (scripts to extend a menu or executed at startup).

1. To install (suitable) Eclipse plugins the Update-Manager can be used to install plugins from a remote website. An How-To was already posted with the GIT plugin as an example, see: http://bio7.org/?p=1066

2. R packages can be added in two different ways. One way is to use the package installer GUI of Bio7:
http://www.uni-bielefeld.de/biologie/Oekosystembiologie/bio7app/flashtut/rpackagesinstall.htm
Additionally the command line in R can be used to install packages.

3. ImageJ plugins (*.class or *.jar files) have to be installed in the plugins folder of the ImageJ Eclipse plugin which is e.g.: Bio7/plugins/com.eco.bio7.image_1.45.1/plugins.
Note: In the ImageJ Eclipse plugin the typical ImageJ folder structure can be found!

4. Groovy, BeanShell and R scripts, as well as ImageJ macros can be dropped to special folders to extend the default Bio7 menu (startup) functionality. The folders which are scanned by default are:

Path to folders: Bio7/plugins/com.eco.bio7_1.5.0/

Folder Default (see Preferences!)
Script Type Menu Bio7 Component
export_scripts BeanShell,Groovy File->Export-Scripts Main Menu
import_scripts BeanShell,Groovy File->Import-Scripts Main Menu
image_scripts ImageJ Macros Scripts->ImageJ-Macros Main Menu
scripts BeanShell,Groovy Scripts->General-Scripts Main Menu
r_scripts R scripts Scripts->R-Scripts Main Menu
spatial_scripts BeanShell,Groovy Scripts->Spatial-Scripts Main Menu
grid_scripts BeanShell,Groovy Scripts Table View Menu
startup_scripts BeanShell,Groovy Scripts executed at startup if folder available!  –

Enable Git for Bio7

08.11.2011

Bio7 is based on the Eclipse platform and integrates the powerful Eclipse Update Manager. Using the Update Manager it is possible to install many useful Eclipse plugins which are compatible with the Bio7 environment. One of this useful plugins is the EGit plugin.

“EGit is an Eclipse Team provider for the Git version control system. Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code, making queries
against the history very fast and versatile.” (source: http://eclipse.org/egit/)

To install the plugin it is necessary to add two Update Sites to the configuration dialog (Select menu: Help->Install New Software…) of the Update Manager of Bio7 (in a regular Eclipse installation the first site below is default available!):

http://download.eclipse.org/releases/helios
http://download.eclipse.org/egit/updates-1.2

The Helios site has already access to the EGit plugin (see screenshot 3 below) but with the second link the latest version of the EGit plugin can be installed (see this website!)

After you’ve added the repository (plugin location) to the Update Manager select the Eclipse EGit and Eclipse JGit plugin (see second screenshot below) and accept the license agreement (see third screenshot below).

Please restart the application after the installation process has finished (confirm the restart dialog). After the restart there are new actions available in the menubar and in the toolbar. To share a Git project select the project and use e.g. the context menu in the Bio7 Navigator view.

To clone an existing repository use the import action of the Bio7 platform. For instance the Bio7 examples can be fetched from GitHub: https://github.com/Bio7/Bio7.git (Read-only. No password required!)


If you have a regular Git repository availabe Git actions will e.g. show up in the context menu.

Beside the different actions there will be also new views availabe for different Git tasks.

For the documentation of the EGit plugin visit: http://eclipse.org/egit/.
Free Git repositories (with some limitations)  can be created e.g. on GitHub, Gitorious or on Google Code.