Spatial Link

From Planimate Knowledge Base
Revision as of 15:40, 6 March 2009 by Tony.Griffith (talk | contribs)
Jump to navigation Jump to search

Splink Palette Icon.jpg

Spatial links are objects that form a connection between portals.

Spatial Link Objects can be classified as “Logical with Capacity and Process Delay”, as they can hold items, and time passes as they process items.


Spatial links have no capacity limit, however they are restricted in that it is an error to allow an Item to be blocked from leaving a spatial link.


Splink Example.jpg

To send an Item on to a Spatial Link, you assign to it a “Transit Target” and usually a “Transit Time”.

This is usually done by adding Routine operations to a Change Object located inside one of the Portals the Spatial Link is connected to, then sending the Item to a Portal Exit.

See also How to Build a Spatial Link Network.

Transit Target

Upon being assigned a Transit Target, then sent to a Portal Exit, the item will seek to move on to a Spatial Link rather than a normal Item Path in its flow. The Transit Target need not always be a Portal at the other end of the Spatial Links connected to the portal the Item is in. Instead you can set a destination that may require crossing a number of Spatial Links before arriving.

Resolving how to reach the Target

If the Spatial Links network yields alternative routes that could be taken to reach the Transit Target, the system resolves this by selecting the route with the least number of links in it, and the shortest overall screen distance to travel. Each Portal connected to more than one Spatial Link in a network should provide within itself a path for the item to enter and depart the portal, so that it may continue on its journey.

Target Portals must be in the _Model Objects List

For a Portal to be a valid Transit Target, it must be added to the _Model Objects System Label list. This is done as you build your network of links. When you add a Spatial Link between Portals, the system prompts you to provide a name for the Portal, which is added to the _Model Objects list. This list is available for review under Data in the Menu Bar. The system gives an error if a movement to the origin Portal is attempted.


Transit Time

The Transit Time you assign to the Item is the total time it will take moving from the Portal of origin to the Transit Target. If more that one Spatial Link needs to be traversed to reach th Target, the Transit Time across each link is apportioned according to the screen pixel length of each Link, in ratio to the entire Link distance. The animation of an Item’s transit over the links is performed such that the item arrives at the Transit Target in the specified interval.

Dynamic Spatial Links

Spatial links between portals can be added and removed during a model run, using Routine Operations.

When adding, if a link already exists (in either direction) a new one is not added.

When deleting, link(s) in either direction are removed.

No error is given if no links were in place between the 2 portals.

Deleting a spatial link deletes any items on it.

Copy spatial link function enables template spatial links to be copied which is useful for creating spatial link-pipes.

The "Copy From" specifies a spatial link object which has been preconfigued with the required visualisation options.


When you are preparing a number of Spatial Links for use in a Planimate­ Model, you would follow this procedure, whose details are covered elsewhere in this and other pages:

  1. Create dynamic object definition table
  2. Create dynamic objects (restarts engine)
  3. Create links
  4. Create bendpoints (if needed)
  5. Set link costs
  6. Perform run

Spatial Link Bends

Spatial Links can have bends added to them either during editing, or during a run by the model. Splink Bend Points.jpg
The Settings / Display Options in the menu bar has an option "User Can Bend Spatial Links". This enables Model Users to see, move and add/delete bends to spatial links during the run.

A Routine operation Spatial link - Add Spatial Link Bend enables a bend point to be appended to the current bend points of any spatial link going from one designated portal to another. This is intended for models which construct spatial link networks on the fly.

There is no way to remove a bend point; you need to instead re-create the link as required.

Spatial Link color

Spatial link color can be changed. The link colour can by set during editing, or a routine operation can changes color of any link between two objects during a model run. If the link does not exist, nothing happens. A redraw is required after this if the link colour is not being set for a link added in the same routine/epoch. In these cases, an automatic redraw *is* scheduled. Colours once set persist across runs. Saving the model saves the link colours.


Link Cost

This enables the modeller to set the "distance" of the link directly (default 0 uses screen distance).

This is useful where you have a short link connecting nodes but you don't want items to take that link as a "short cut" unless you specifically nominate a Portal connected to that link as a Transit Target.

Link Cost can also be set from a Routine.


Directional spatial links

An option during edit of the spatial link, plus a routine operation enables creation of a directional spatial link. Planimate® enables two spatial links to exist between a pair of objects if they are directional in opposite directions.

Spatial Link Pipe View

This option makes Spatial Links display like Pipe Objects, but without the complicated attribute handling of using pipes.

The basic idea is that the Spatial Link gets divided into a number of sections.

Splink as Pipe Option.jpg

Each section can have its colour set as an item moves through it along the pipe. In addition to the section colours, separate "activity animation" can occur for non-idle sections, to graphically illustrate material flow. Since multiple items can exist in a spatial link, multiple coloured "bands" can simultaneously animate down the "pipe".


For full details refer to this page: Spatial Link Pipe View


Interactive Spatial Links

If you want the Spatial Links in a Panel to respond to mouse clicks, first set the Panel Option "Send Spatial Link Clicks".

This suppresses the normal link information menu.

Thereafter, whenever the modeller or user clicks on a spatial link line a system broadcast called "_Link Clicked" gets sent.


For full details refer to this page: Detecting clicks on spatial links using Link Clicked


Controlling Items on Spatial Links

All spatial links have a control attribute (like a pipe).

This control attribute means you can alter the item transit time, either scaling the transit time, or stopping item movement altogether.

This attribute gives the modeller much control over the use of spatial links to move items.


For full details refer to this page: Controlling Items on Spatial Links


Spatial Link Routine Operations

The following is a list of the routine operations available for working specifically with Spatial Link Objects.

  • AddBendPoint
  • AddDirectionalLink
  • AddSpatialLink
  • ClearSpatialCache
  • CopySpatialLink
  • DeletePanelSpatialLinks
  • RemoveSpatialLink
  • SetItemTransitTarget
  • SetItemTransitTime
  • SetLinkColor
  • SetLinkCost
  • SetSpatialLinkWidth


Note that additional new routine operations may exist since this article was last updated.

If so, they will appear first in the full Routine Operations Listing.



Refer to Editing Object Properties for information about editing properties common to all objects.




Spatial Link Articles



Spatial Link Object Frequently Asked Questions