Reusable Accessible Mapping Platform

API Docs for: 5.3.1
Show:

DistanceTool Class

Computes the area and perimeter length of a selected area. When the user draws a polygon, the area and length will be displayed in the bottom right corner.

Imports RAMP Modules:

Map
GlobalStorage
BaseTool

Methods

activate

() private

Inherited from BaseTool but overwritten in src/js/RAMP/Tools/distanceTool.js:115

Activates the Tool. This method is passed to the initToggle method and is triggered by the BaseTool logic.

clearMap

() private

Clears the map. This method is passed to the initToggle method as the defaultAction to be triggered by the BaseTool logic when the float-default-button is clicked.

computeAreaAndLength

(
  • evtObj
)
private

Compute the area and length of a specified polygon.

Parameters:

  • evtObj Object

    an object representing the event.

deactivate

() private

Inherited from BaseTool but overwritten in src/js/RAMP/Tools/distanceTool.js:127

Deactivates the Tool. This method is passed to the initToggle method and is triggered by the BaseTool logic.

displayOutput

() private

Inherited from BaseTool but overwritten in src/js/RAMP/Tools/distanceTool.js:151

Displays the tool's output by calling BaseTool's displayOutput function.

displayTemplateOutput

(
  • templateData
  • [templateName]
)
chainable

Generates output to be injected into the tool's float given a template's name and data object.

Parameters:

  • templateData Object

    data to be put inside the specified template

  • [templateName] String optional

    template name to be completed with provided data; if not supplied, "toolOutputTemplate" property of the options object will be used

Returns:

this tool

init

()

Initialize the population tool

initToggle

(
  • selector
  • d
  • [options]
)
chainable

Initializes the tool and sets up popup to handle activating/deactivating of the tool. Tools should call this function on init, unless they employ a different workflow and then need to handle all function activation/deactivation/working themselves.

Parameters:

  • selector JObject

    a target selector that serves as a toggle for the tool

  • d JObject

    a Deferred object to be resolved after tool initiates

  • [options] Object optional

    Additional options

    • [target] JObject optional

      Target where the tool's float should be appended to

    • [outputFloatTemplate] String optional

      Template name to generate the float container with

    • [outputFloatData] Object optional

      Data payload to be passed to the template engine when generate the float container

    • [workingLabelTemplate] String optional

      Template name to generate the busy label

    • [workingLabelData] Object optional

      Data payload to be passed to the template engine when generate the busy label

    • [activate] Function optional

      an activate function to be called when the toggle is clicked

    • [deactivate] Function optional

      a deactivate function to be called when the toggle is clicked

    • [defaultAction] Function optional

      Function to be executed when the float-default-button is clicked

Returns:

this tool

outputAreaAndLength

(
  • evtObj
)
private

Display the calculated area and length on the map.

Parameters:

  • evtObj Object

    an object representing the event.

working

(
  • state
)
chainable

Sets the tool into a specified state; if the tool is working, a working label is placed beside the cursor and injected into the tool output float.

Parameters:

  • state Boolean

    indicates the state of the tool: working, idle

Returns:

This tool

Properties

event

Object

Event names published by the BaseTool

Default: null

Example:

 {
     ACTIVATE: "basetool-activate",
     DEACTIVATE: "basetool-deactivate"
 }

handle

JObject

Handle (popup handle) that triggers opening/closing of the tool.

Default: null

name

String

Name of the tool so AdvancedToolbar can distinguish between them.

Default: BaseTool

node

JObject

Node (button) the handle is attached too.

Default: null

options

Object private

Stored options passed to the BaseTool.

Default: null

outputFloat

JObject

Node representing the tool output float container.

Default: templates/tools_template.json:base_tool_float

Example:

 <div class='advanced-output-section-container'>
     <div class='advanced-output-section'>
         <section class='float-content'></section>
         <button class='button button-none float-default-button' >
             <i class='fa fa-trash-o'></i><span class='on-right'>{%= o.clearMapButton %}</span>
         </button>
         <div class='clear'></div>
     </div>
 </div>

template

Object

Stringified and parsed templates

Default: templates/tools_template.json

tooltip

JObject

Tooltip node that appears by the mouse cursor when tools is activated.

Default: $("#mainMap.map > .tooltip")

workingLabel

String

Template string representing working label shown when the tool is in busy state.

Default: templates/tools_template.json:working_label

Example:

 <span class='tool-tooltip'><i class='fa fa-cog fa-spin'></i>{%= o.workingLabel %}</span>

Events

ACTIVATE

Published whenever a Tool is activated.

Event Payload:

DEACTIVATE

Published whenever a Tool is deactivated.

Event Payload: