The 3D Parametric Modelling Project is based upon the proposition that a parameterised, hierarchical modelling approach can be applied to all kinds of objects. So far, the objects modelled include harbours embedded in terrain, buildings and various types of ships.
The user is provided with two applications:
A prototype called ChurchBuilder was developed before ThingBuilder and ScenarioBuilder were developed. More information about ChurchBuilder can be found on the ChurchBuilder page.
ThingBuilder is the object modelling tool. It includes a collection of libraries, each library being dedicated to creating one kind of object e.g. steam locomotives, sailing ships, paddle steamers, scenario scenes (including terrain, railway track, sea and harbours).
The models created with ThingBuilder have behaviours as well as geometrical attributes. The behaviours, like the geometry, are controlled by parameters e.g. turning circle radius of a ship.
Making a Lancashire & Yorkshire Railway steam locomotive
Making a side wheel paddle steamer
Modelling a dock in a scenario scene
The interface in each case consists of three sections:
a tree structure showing the hierarchy of the model components
a parameter panel where the selected component’s parameters can be modified
a 3D view (which can be changed to a 2D view when appropriate)
It was recognised that the hierarchical, parametric approach lent itself to much duplication of code with modifications. Consequently we have created a tool which
reads an XML based description of a parameterised, hierarchical model that specifies component hierarchy, component attributes and animation of components
generates automatically the bulk of the Java code for the tool that can create such a model implemented as a library
adds the new library to the collection of libraries within the ThingBuilder application
adds a class representing the model in ScenarioBuilder.
The developer then modifies by hand the Java code that determines from the parameters:
the geometry of the object
the behaviour of the object
Object behaviour is relevant to how it appears in narrative visualisations developed with ScenarioBuilder.
A class association diagram is shown on the left to illustrate the component hierarchy for a scenario scene.
A fragment of the corresponding XML definition is shown on the left.
In ScenarioBuilder we are developing an application that can visualise a textual narrative. The visualisation makes use of knowledge of the geometry and behaviour of the objects within the narrative as defined in ThingBuilder.
Here are two videos of the visualisation of scenario Liverpool Scenario 1 running in ScenarioBuilder.
Liverpool Scenario 1: Three schooners setting sail
We see the Albert Dock from across the Mersey then watch three schooners setting sail.
Liverpool Scenario 1: Swing Bridges and the 2D View
The Time Slider is dragged to put the paddle steamer which is the platform of the current viewpoint into the docks and about to pass through a gap spanned by a swing bridge. The swing bridge opens to allow the ship to pass. Finally we see the 2D view and the simulation being fast forwarded by dragging the Time Slider.
Next we have two videos showing locomotives being built in ThingBuilder and run in ScenarioBuilder.
Building and running a Lancashire & Yorkshire Railway Rapid Shunter
This is the first model that the children made from engineering drawings of the locomotive in the trial at St Anne’s RC Primary School, Ormskirk in June 2014. This class of locomotive was chosen because it has visible, external cylinders which the children had learned about and seen on video clips. It also does not have the complication of leading or trailing wheels.
Building and running a Lancashire & Yorkshire Aspinall 0-6-0 tender engine
The children were shown how a locomotive with a tender and inside cylinders was built and operated. The Aspinall 0-6-0 A class was chosen for this.
More details can be found in the report on the trial at St Anne’s school on the Education page.
More videos of ScenarioBuilder visualisations can be found on the Heritage page.