What is New in Dinamica EGO 5.2.0

(Compared to Dinamica EGO 5.1.0)

Application Graphical User Interface (GUI)

Fixed issue in Chart tab of LookupTableEditorPanel when null.

Removed invalid assertion: createFunctor is allowed to fail due to incompatible container.

Added Spell Checker Button to String Editor

Removed unused imports.

Added confirmation Dialog Box to CategorizationEditor.

Fixed ImageExpressionEditor not disabling the identifier buttons when the component is disabled

Fixed StringEditor not disabling the identifier buttons and the spellChecker button when the component is disabled

Added a new name to the developer list; explicitly defining the size of the About window to make sure all developer names are visible.

Added internal input and output port information in GraphFunctorDocumentationPanel

Customize Tab/Group drop down menu using content from other exported ports in SubmodelPortEditorPanel

Added tab/group information for the ports in the SubmodelFunctorExportedPortsDialog

Added type information for the columns in the TableEditorPanel

Placed the Advanced tab as the last tab in functor editor.

Prevent functors created by drag-and-dropping external files to be stacked on the top of each other.

Added type information for the columns in the ConfigureTableColumnsPanel

Removed unused method and unused imports.

Fixed inconsistency in the naming of the Check For Update related buttons.

Added function to get table format from disk file in the ConfigureTableColumnsPanel

Removed unused event handlers.

Added confirmation when importing table format from a table file.

Fixed typo in message.

Fixed bug where the type information was being lost when applying changes in the ConfigureTableColumnsPanel

Fixed bug where the type information was not added to the column label, but to the column text in the ConfigureTableColumnsPanel

Added function to update all submodels in the SubmodelStoreDialog

Added the code to activate the validation when the submodel is imported to a Script Editor

Fixed bug where the UpdateManager could erroneously be invoked on a system other than Windows.

Hide components related to auto updating from being displayed in platforms other than Windows.

Assume that input ports are optional when exporting them as part of a submodel and they have an editor defined

Extend drop area for small and big icon and add icon removal function

Added keystroke to enable/disable showing additional information about a functor on its tooltip.

Fixed bug where the additional information about a submodel was not being displayed on its tooltip.

Fixed bug where the keybindings for some global actions were not working all the time.

Defined keybinding to change the main window size to match 1080p.

Added another shortcut for showing additional debugging information for functors on their tooltips.

Expand groups and subgroups in the Functor Library when a new functor is installed

When creating hook functors, define automatically the editor representing the hook index.

Added release notes to the help menu in the menu bar

Application Core

Remove assertion: It is possible for “result” to be true when the functor found is nullptr.

Removing unused scripts that were previously used to created makefiles from the cmake file.

Adding script to generate makefiles for Visual Studio 2019.

Changes in the instantiation of editors and viewers to avoid the use of raw pointers.

Fixed bug column index out of bounds on AddTableColumn.

Fixing issue in the definiton of defaultEditor for GenericFilenameData.

RasterizeShape now always save Tiff images as BigTiff.

Removed outdated comments.

If possible, performs the copy of image layers in parallel.

Prevent handler from being closed after failing to perform an operation that was only supposed to read data from the underlying image.

Fix bugs causing temporary files to be removed at the wrong time when shared across several tasks; Addition of new test case; Adaptation of existing test cases.

Fix bug in InsertMapLayer that was not informing the copy optimization system that the input layer was also being modified.

Fix implementation of ExtractMapLayer to make sure its behavior is compatible with the copy optimization system; Definition of mode that allows ports to bypass the copy optimization system and explicitly copy the input data only when necessary; Addition of test case showing the problem.

Definition of convenient constructor for ScopedLogLevel.

InputPort::setDataEditor() is now a public method.

GeneticAlgorithmTool optimizations: now the calculations of the fitness values for different individuals in a generation are performed in parallel; Fixed bug where the parameter MaximumLogLevel could be ignored in some cases.

Adding script to install dependences on Linux

Add information about all the tasks that were running concurrently when an assertion was trigged to the corresponding report.

Fix use of sourceLayer by CalcPatchLabelMap to make sure it can run in parallel with other functors.

Fix potential bugs when CalcKernelMap executes concurrently with another functor using the same input map.

Fix intermittent compilation problems when rebuilding the whole project.

Removed outdated files.

Definition of hasNull() for multi-layer maps.

Definition of method translate() to translate the position of a coordinate.

Calc Cost Map can now produce a cost direction map when calculating cost surfaces; refactoring and organization of functor code; update of test cases.

Calc Pathway Map can now also receive a cost direction map; proper use of “copy optimization” for the network map; refactoring and organization of functor code.

Calc Cost Allocation Map can now also receive a cost direction map; proper use of “copy optimization” for the source/allocation map; refactoring and organization of functor code; update of test cases.

Data viewer no longer throws an error when its peer is empty.

Adapted relevant data viewers to comply with new behavior.

Apply virtualization and selective copy optimization to the inputs of Calc Cost Allocation Map.

Additional test case.

Apply virtualization and selective copy optimization to the inputs of Calc Pathway Map.

Fixed bug with the “Merge Network” flag not working properly.

Calc Pathway Map: Ignore path creation when the first cost/direction cell is null.

Fix bug on border analysis in CalcPatchLabel.

Fix a bug where CMakeLists.txt wouldn't work on Windows path's with space.

Fix Eigen3 includes on DetermineTransitionMatrixFunctor.cpp

Fix compile error on MapIOHandler on gcc and clang.

Updated getSharedOwnershipCount() to avoid creation of temporary atomic values when the handler ownership is not being shared.

Avoid assertion when PyUnicode_FromString() fails to convert table cell values to Unicode.

Fixed broken test cases.

Adjusting toTable python function to accept int header on Table.

Taking off print on toTable python function

Definition of methods to return a default value when properties are not defined.

Fixed bug where de detection of the equivalent functor could fail depending on the copy pattern of a script.

Now toString() also includes the list of properties when dumping the content of a script or functor.

Definition of a new memory policy (Aggressive) that keeps input maps in disk and allocates them on memory.

Fixing indentation and comments.

Fixed error in test case.

Fixing Mac's image expression compile library.

Changing Mac's Python Environment location.

Changes on CMakeLists for Mac.

Update getPropertyValueAs function to explicit indicate template argument 'TypeT': Clang and GCC could not infer the template.

Include on Platforms folder the Mac files to build Dinamica.

Update Python lib used by Dinamica on Mac.

Put flag to mac on python location in CMakeLists.

For general information about version 5 of Dinamica EGO, see Whats Is New In Version 5.