Reference 〉Hook

spatialAgentClick( list[Agent] agents, SpatialPlot plot, int t )

Runs when an agent is clicked in the SpatialPlot plot.

Required Parameters

  • agents list[Agent]

    The live agent(s) that were clicked on, possibly multiple if there are overlapping agents in the current map. Note that, if clicking on a historical map state (i.e. having scrubbed the time bar backward), the clicked agent may be dead, in which case None will be passed instead of an agent object.

  • plot SpatialPlot

    The SpatialPlot object that was clicked on.

  • t int

    The time currently displayed on the time slider. This may not match the current model time if the time slider has been scrubbed backward.

Notes and Examples

  1. charwick

    Feb 10, 2021 at 4:24

    Usually it will be desirable only to take an action if an agent is clicked while the current model time is displayed in the visualizer, since any actions taken will affect the current model state rather than the historical state. The third parameter can be used to ensure that the action is only taken when the visualization is current.

    @heli.hook
    def spatialAgentClick(agents, plot, t):
    	if t != heli.t: return
    
    	#Take an action here that affects the model state
  2. Contribute a Note

    Your email address will not be published. Required fields are marked *

    You may use limited HTML for formatting. Please embed blocks of code in <pre><code> </code></pre> tags.