… is now developped under Linux
(no change for win32 users).
GStand under Step is an interface.
GTCStand is introduced : a stand with a redefinable TreeCollection inside. Usable for models with tree list (MADD, MAID…).
GPlot and GCell become interfaces.
RectangularPlot is composed of SquareCells. They replace the original implementations of GPlot ans GCell. They support stuff for neighbourhood (Mountain module).
PolygonalPlot and PolygonalCell are introduced. They are polygons with their vertices in 3D coordinates.
Groups are redefined. They are sets of parametered filters. They can apply on Filtrable object. GStand and GPlot are Filtrable objects. Groups can be used in DataExtractors and StandViewers.
Extensions now concerns Interveners (thinners…), StandViewers, DataExtractors, DataRenderers, Filters, GenericTools and IOFormats.
Filters select elements in filtrable objects. There is a mouse driven filter to select trees in a spatialized stand. Other filters are provided for GStand and GPlot.
IOFormats are some classes to make match some GStand implementation (memory) with some file formats. They can be used for input, output or input/output.
MethodProviders are introduced (package capsis.util.methodprovider). They allow to write computation methods for some dendrometric data for the modules. Some can be inherited, everyone can be rewritten, some new can be added.
DataExtractors and DataRenderers replace Outputs and OutputBrowsers. They are more configurable, more robust, use MethodProviders, are redimensionable, a table renderer can do cut & paste to clipboard (Excel, editors…)… and we can do more (it's a difficult zone
.
Projects can be created or opened directly without being in a session. An untitled session is created on the fly.
Command pattern is used to define main interface commands (package capsis.gui.command).
Some threads have been used in the interactive pilot (gui) to let the graphics refresh during some computation (evolution, pre & post intervention processes). These computations are defined in modules and their duration can not be estimated.
Contracts between generic and specific pilots have been reinforced.
Extension interfaces have been reviewed (more robust).
SVSimple is a StandViewer with zoom, translation, filtering, and introspection capabilities on the trees it represents in a graphical display. It can be subclassed to create specific viewers for modules (see SVMoutain and SVVentoux).