ReleaseNotes:Feature Review December 2012: Difference between revisions

From Planimate Knowledge Base
Jump to navigation Jump to search
mNo edit summary
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
This review covers Planimate® versions 5.33d to 5.35r.  
This review covers Planimate® versions 5.33d to 5.35r.  


In 2012, Planimate's capabilities continued to mature and expand, opening up new frontiers of application.  
In 2012, Planimate's capabilities continued to mature and expand, opening up new frontiers of application. This is a brief summary of additions to the platform.  


__TOC__  
__TOC__  
Line 7: Line 7:
== Model Editing  ==
== Model Editing  ==


=== Debug Log Window ===
=== Debug Log Window ===


An event logging system and associated window makes debugging complex models easier as it can collect and display many events during a run. The modeller has the ability to dynamically re-filter the event display in many flexible ways as the order of events, broadcasts, messages and even changes to data is browsed.  
An event logging system and associated window makes debugging complex models easier as it can collect and display many events during a run. The modeller has the ability to dynamically re-filter the event display in many flexible ways as the order of events, broadcasts, messages and even changes to data is browsed.  


=== Broadcast Item Attributes ===
=== Broadcast Item Attributes ===


The item class context menu enbles auto-population of item attributes as needed by a selected system broadcast.  
The item class context menu enbles auto-population of item attributes as needed by a selected system broadcast.  


=== Modeller's Palette ===
=== Modeller's Palette ===


A new modeller customiseable palette enables jump buttons and broadcats to be readily acessable whilst developing a model.  
A new modeller customiseable palette enables jump buttons and broadcats to be readily acessable whilst developing a model.  


=== Flow Editor ===
=== Flow Editor ===


The flow editor has been rewritten and now includes more useful tips, easier to see lines and an undo.
The flow editor has been rewritten and now includes more useful tips, easier to see lines and an undo.  


Dropping a new object over a flow arrow will insert it into the flow.
Dropping a new object over a flow arrow will insert it into the flow.  


=== Broadcast and Message Entry Click Diagnostics ===
=== Broadcast and Message Entry Click Diagnostics ===


Clicking on Entriss shows the last time and source for an event.
Clicking on Entriss shows the last time and source for an event.  


== End User Experience  ==
== End User Experience  ==


Tables hover tracking can now send a broadcast.
=== Table Hover Tracking<br>  ===


Planimate based applications start quicker and the about box can be shown whilst the model is loading.  
Table views already had hover tracking (highlighting as the mouse moves above rows). The modeller can now trigger activity based on which cell is hovered upon, for example updating a detail panel for the item being hovered over.  


The model can now detect the user clicking on items.
=== Faster Planimate Based Application Startup<br>  ===


The names of individual objects can be hidden/shown dynamically. This is useful in zommable map displays. The font scaling for object names can also be set.  
Planimate based applications start quicker and the About Box is shown while the model is loaded rather than after it is loaded, making startup appear even faster to the end user.  


A "Item Follow" mechanism enablesg an item's position on a spatial link/track to be used to adjust the position of a map, effectively keeping the item centred whilst the map moves under it. Map updating has been optimised and is smoother. A new operation can set the position and scaling of an object together.  
=== Object Name Display<br>  ===
 
The names of individual objects can be hidden, shown and scaled dynamically. This is very useful in zommable map displays where it is useful to control the size of the name font and hide the names when the user zooms right out.
 
=== Item Click / Follow<br>  ===
 
The modeller can now act when an item is clicked, for example show additional information or trigger a Follow.<br>
 
The "Item Follow" mechanism enables an item's position on a spatial link/track to be used to adjust the position of a map, effectively keeping the item centred whilst the map moves under it.<br>
 
=== Map View Improvements<br>  ===
 
Map updating has been optimised and is smoother.<br>
 
The new routine operation SetObjectPos() sets the x/y position and x/y scaling of an object (eg:&nbsp;location on a map) in a much more efficient way.
 
Map Views now have an option to read map tile data from a DB&nbsp;file which avoids having to ship/extract thousands of small map tile files onto the user's system.<br>


== Track Modelling  ==
== Track Modelling  ==


Trains and tracks can have length properties. Animation of train length is supported either visual only (no impact on model run which continues to use loop delays) or incorporation of train length into track decision logic.  
=== Train Length<br>  ===
 
Planimate's track's system is being progressed towards display and modelling of train length. Train length is displayed as a "noodle'&nbsp;behind the front of the train that extends back along the track.<br>
 
Animation of train length is supported either visual only (no impact on model run which continues to use loop delays) or actual incorporation of train length into track decision logic.  
 
=== Model Control Over Static Routes<br>  ===
 
A modeller can add and remove static routes for a track model&nbsp; using the new AddStaticRoute() and RemoveStaticRoute() operations.<br>


A modeller can add and remove static routes under model control )AddStaticRoute(), RemoveStaticRoute()).  
Planimate has reached the point where a track model can be completely built from table data.  


== Graphics  ==
== Graphics  ==


Log Driven Graphs have an option to only show overlays in their configuration table.  
=== Smooth Graph Updates (Deferred Drawing)<br>  ===
 
All graph types now support optional double-buffered drawing where changes to the graph are drawn off-screen and updated flicker-free to the display. Unnecessary recalculation of graph data has been removed to speed up graph update further.  
 
=== New Properties &amp; Features  ===


All graph types now support double-buffered drawing where changes to the graph are drawn offscreen and updated flicker-free to the display. Unnecessary recalculation of graph data has been minimised to speed up graph update.  
Graph scale ranges for Gantt and Train Graphs can be set using a TableViewProperty.  


Scale ranges for gantt and traingraphs can be using a TableViewProperty. The Log Driven Graph RHS scale can be set when RHS scales are in use.  
The Log Driven Graph RHS scale range can set by the model.  


Graphs fully support RGB colours.  
Graphs fully support RGB colours.  


Improvements to editing column overlay graphs. Mode enhancements including side-by-side vertical bar.  
Log Driven Graphs have an option to only show overlays in their configuration table.
 
Creating and editing overlays in Column Overlay graphs is improved.  
 
Column Overlay Graphs have a new side-by-side vertical bar mode, useful for comparing data.  


Gantt Views support layer-ordering of blocks and the offsetting/sizing of individual bars, enabling sophisticated event views to be generated.  
Gantt Views support layer-ordering of blocks and the offsetting/sizing of individual bars, enabling sophisticated event views to be generated.  


<br> The Map View Paint object can now fetch its tiles from a DB file, avoiding the need to distribute thousands of small tile files.
== Run Engine  ==


== Run Engine  ==
=== More Advaned Pipe Support ===


Pipes support additional logging of load/unload quantities which is useful for flow control and collecting operational statistics.  
Pipes have two additional sets of load/unload accumulator logging references which are useful for material flow control and collecting operational statistics.  


Pipe event broadcasts have been enhanced and are generated in a manner that doesn't overwhelm the model.  
Pipe event broadcasts have been enhanced and are generated in a manner that doesn't overwhelm the model.  
Line 71: Line 103:
Managing multiple pipes is simplified by the s.PipeTableRow and "OBJID Column" pipe setting which Planimate uses to to map a pipe to a row in a pipe configuration table.  
Managing multiple pipes is simplified by the s.PipeTableRow and "OBJID Column" pipe setting which Planimate uses to to map a pipe to a row in a pipe configuration table.  


It is possible to call a DLL function from within an expression. This is very useful when used with the Distribution Dialog's new "Expression" mode as it enables use of externally provided number distributions.  
=== DLL Functions in Expresions ===
 
It is possible to call a Planimate-callable DLL function from within an expression. This is very useful when used with the Distribution Dialog's new "Expression" mode as it enables use of externally provided number distributions.  
 
=== Other Engine Enhancements ===


A separate Panel Visible broadcast enables a panel to know when it becomes visible including when it is in a viewport or popup window.  
A separate Panel Visible broadcast enables a panel to know when it becomes visible including when it is in a viewport or popup window.  
Line 81: Line 117:
<br>  
<br>  


== Platform Founddation ==
== Platform Foundation ==


Planimate now compiles with three compilers under Windows (Visual Studio '98, Visual Studio 2008 and gcc). A command line version of Planimate (no UI, batch runs only) runs under Linux and Android.  
Planimate now compiles with three compilers under Windows (Visual Studio '98, Visual Studio 2008 and gcc). A command line version of Planimate (no UI, batch runs only) compiles and runs under Linux and Android. Having the one codebase work with different compilers is beneficial to maintaining a quality codebase for Planimate.  


This enables future applictions in both handheld devices and cloud based model runs.  
Future applictions in both handheld devices and cloud based model runs are on the horizon.  


Multi-monitor setups where the monitors have different sizes are better supported particularly with viewports.  
Multi-monitor setups where the monitors have different sizes are better supported particularly with viewports.  


The Windows 8 preview exposed an issue with list views which has been fixed.  
The Windows 8 preview exposed an issue with list views which has been fixed. Planimate runs well under Windows 8.  


<br>
[[Category:Release Note]]

Latest revision as of 00:25, 6 July 2021

This review covers Planimate® versions 5.33d to 5.35r.

In 2012, Planimate's capabilities continued to mature and expand, opening up new frontiers of application. This is a brief summary of additions to the platform.

Model Editing

Debug Log Window

An event logging system and associated window makes debugging complex models easier as it can collect and display many events during a run. The modeller has the ability to dynamically re-filter the event display in many flexible ways as the order of events, broadcasts, messages and even changes to data is browsed.

Broadcast Item Attributes

The item class context menu enbles auto-population of item attributes as needed by a selected system broadcast.

Modeller's Palette

A new modeller customiseable palette enables jump buttons and broadcats to be readily acessable whilst developing a model.

Flow Editor

The flow editor has been rewritten and now includes more useful tips, easier to see lines and an undo.

Dropping a new object over a flow arrow will insert it into the flow.

Broadcast and Message Entry Click Diagnostics

Clicking on Entriss shows the last time and source for an event.

End User Experience

Table Hover Tracking

Table views already had hover tracking (highlighting as the mouse moves above rows). The modeller can now trigger activity based on which cell is hovered upon, for example updating a detail panel for the item being hovered over.

Faster Planimate Based Application Startup

Planimate based applications start quicker and the About Box is shown while the model is loaded rather than after it is loaded, making startup appear even faster to the end user.

Object Name Display

The names of individual objects can be hidden, shown and scaled dynamically. This is very useful in zommable map displays where it is useful to control the size of the name font and hide the names when the user zooms right out.

Item Click / Follow

The modeller can now act when an item is clicked, for example show additional information or trigger a Follow.

The "Item Follow" mechanism enables an item's position on a spatial link/track to be used to adjust the position of a map, effectively keeping the item centred whilst the map moves under it.

Map View Improvements

Map updating has been optimised and is smoother.

The new routine operation SetObjectPos() sets the x/y position and x/y scaling of an object (eg: location on a map) in a much more efficient way.

Map Views now have an option to read map tile data from a DB file which avoids having to ship/extract thousands of small map tile files onto the user's system.

Track Modelling

Train Length

Planimate's track's system is being progressed towards display and modelling of train length. Train length is displayed as a "noodle' behind the front of the train that extends back along the track.

Animation of train length is supported either visual only (no impact on model run which continues to use loop delays) or actual incorporation of train length into track decision logic.

Model Control Over Static Routes

A modeller can add and remove static routes for a track model  using the new AddStaticRoute() and RemoveStaticRoute() operations.

Planimate has reached the point where a track model can be completely built from table data.

Graphics

Smooth Graph Updates (Deferred Drawing)

All graph types now support optional double-buffered drawing where changes to the graph are drawn off-screen and updated flicker-free to the display. Unnecessary recalculation of graph data has been removed to speed up graph update further.

New Properties & Features

Graph scale ranges for Gantt and Train Graphs can be set using a TableViewProperty.

The Log Driven Graph RHS scale range can set by the model.

Graphs fully support RGB colours.

Log Driven Graphs have an option to only show overlays in their configuration table.

Creating and editing overlays in Column Overlay graphs is improved.

Column Overlay Graphs have a new side-by-side vertical bar mode, useful for comparing data.

Gantt Views support layer-ordering of blocks and the offsetting/sizing of individual bars, enabling sophisticated event views to be generated.

Run Engine

More Advaned Pipe Support

Pipes have two additional sets of load/unload accumulator logging references which are useful for material flow control and collecting operational statistics.

Pipe event broadcasts have been enhanced and are generated in a manner that doesn't overwhelm the model.

Managing multiple pipes is simplified by the s.PipeTableRow and "OBJID Column" pipe setting which Planimate uses to to map a pipe to a row in a pipe configuration table.

DLL Functions in Expresions

It is possible to call a Planimate-callable DLL function from within an expression. This is very useful when used with the Distribution Dialog's new "Expression" mode as it enables use of externally provided number distributions.

Other Engine Enhancements

A separate Panel Visible broadcast enables a panel to know when it becomes visible including when it is in a viewport or popup window.

The model can now query the stop time of the previous run using s.LastRunStopTime

Modeller can set a pause after an advance to time.


Platform Foundation

Planimate now compiles with three compilers under Windows (Visual Studio '98, Visual Studio 2008 and gcc). A command line version of Planimate (no UI, batch runs only) compiles and runs under Linux and Android. Having the one codebase work with different compilers is beneficial to maintaining a quality codebase for Planimate.

Future applictions in both handheld devices and cloud based model runs are on the horizon.

Multi-monitor setups where the monitors have different sizes are better supported particularly with viewports.

The Windows 8 preview exposed an issue with list views which has been fixed. Planimate runs well under Windows 8.