Dear all,
(Apologies if you get two copies; I've CCd people who I did not know
were on the list.)
Since the ROI meeting in November, I have made a number of changes to
the scijava-roi git repository:
- updated the model to add missing features discussed at the meeting
(still needs some more work, but features such as e.g. labellings have
been added, as have interfaces which implement methods such as contain()
to see if a coordinate is inside or outside a region)
- written a java code generator to generate the java implementation from
the model; the same generator also generates much of the specification
docs, and will also support other languages in the future
- created packages of the sources and a jar file of the compiled classes
The updated specification and code are on the
scijava.org website
(
http://www.scijava.org/roi-model/), and
all of these changes are in the scijava-roi git repo.
Note that the code generator is not yet fully complete; while this
generates all the interfaces, classes etc., not all constructors or
members are yet generated. And the generated methods are in many
cases stubs which need code writing to make them functional. It just
needs further work to complete this.
To get some working code to test the model with, I've written all the
necessary code to get the Line ROI type working. This includes the
Line class (scijava.roi.shape.Line), and the LinePoints3D and Vertex3D
classes used internally by this class (scijava.roi.types.LinePoints3D
and scijava.roi.types.Vertex3D). An example of this is here:
https://github.com/scijava/roi-model/blob/master/test/testline.java
While this is only a very simple example, to demonstrate its use we
have updated OMERO.insight to export ROIs using the above types from
scijava-roi.jar, and to then write out ROIs using the ImageJ binary
format, the Icy XML format and a (currently plaintext) scijava ROI
format. The attached screenshot shows the original line ROI in
OMERO.insight, and the same image and ROI then read and displayed in
ImageJ and Icy.
In the future, once we have a defined scijava ROI format, all the
above clients could use scijava-roi.jar and use a common format for
exchange, as well as having the ability to import and export other
common ROI formats including their own native formats.
Regards,
Roger
--
Dr Roger Leigh -- Open Microscopy Environment
Wellcome Trust Centre for Gene Regulation and Expression,
College of Life Sciences, University of Dundee, Dow Street,
Dundee DD1 5EH Scotland UK Tel: (01382) 386364
The University of Dundee is a registered Scottish Charity, No: SC015096