require(["esri/symbols/callouts/LineCallout3D"], function(LineCallout3D) { /* code goes here */ });
Class: esri/symbols/callouts/LineCallout3D
Inheritance: LineCallout3D Callout3D Accessor
Since: ArcGIS API for JavaScript 4.4

This type of callout displays a line to connect a symbol or a label with its actual location in the scene. For example when displaying points of interest in a city, visualizing them with a callout line helps to understand where the points are actually located:

symbol3D-line-callout

This visualization can be created on a PointSymbol3D or a LabelSymbol3D. After defining the symbolLayers, an offset should be defined by setting the verticalOffset property. The symbols are now shifted vertically, but we still need to add the callout, otherwise it can be very confusing to understand where the points are located:

symbol3D-line-callout

Setting the callout property of type line on the symbol will create the line that connects the symbol with its actual position:

symbol3D-line-callout

Autocasting support

As of version 4.5 of the ArcGIS API for JavaScript, autocasting is universally supported for all renderers, symbols, and symbol layers in the API. So there is no need to include this module in the require() and define() module loaders of your application unless you intend to use the static method(s) of this module.

See also:
Example:
var symbol = {
  type: "point-3d",  // autocasts as new PointSymbol3D()
  symbolLayers: [{
    type: "icon",  // autocasts as new IconSymbol3DLayer()
    resource: {
      href: "CityHall.svg"
    },
    size: 20
  }],
  verticalOffset: {
    screenLength: 40,
    maxWorldLength: 100,
    minWorldLength: 20
  },
  callout: {
    type: "line", // autocasts as new LineCallout3D()
    size: 1.5,
    color: "white",
    border: {
      color: "black"
    }
  }
});

Constructors

new LineCallout3D(properties)
Parameter:
properties Object
optional

See the properties for a list of all the properties that may be passed into the constructor.

Property Overview

Any properties can be set, retrieved or listened to. See the Working with Properties topic.
NameTypeSummaryClass
Accessor

The border settings of the callout line.

more details
more detailsLineCallout3D
Color

The color of the callout line.

more details
more detailsLineCallout3D
String

The name of the class.

more details
more detailsAccessor
Number

The width of the callout line in points.

more details
more detailsLineCallout3D
String

For LineCallout3D the type is always line.

more details
more detailsLineCallout3D

Property Details

borderAccessor

The border settings of the callout line. The border of the callout line can be used to improve the contrast of the callout line color against various background colors. If the border is null, then no border will be visible.

Property:
color Color
optional
Default Value:white

The color of the callout line border. This can be autocast with a named string, hex string, array of rgb or rgba values, an object with r, g, b, and a properties, or a Color object.

Autocasts from Object|Number[]|String

The color of the callout line. This can be autocast with a named string, hex string, array of rgb or rgba values, an object with r, g, b, and a properties, or a Color object.

Default Value:black
declaredClassStringreadonly inherited
Since: ArcGIS API for JavaScript 4.7

The name of the class. The declared class name is formatted as esri.folder.className.

Autocasts from Number|String

The width of the callout line in points. This value may be autocast with a string expressing size in points or pixels (e.g. 12px).

Default Value:1px
typeString

For LineCallout3D the type is always line.

Method Overview

NameReturn TypeSummaryClass
LineCallout3D

Creates a deep clone of the callout.

more details
more detailsLineCallout3D
*

Creates a new instance of this class and initializes it with values from a JSON object generated from a product in the ArcGIS platform.

more details
more detailsCallout3D
Object

Converts an instance of this class to its ArcGIS portal JSON representation.

more details
more detailsCallout3D

Method Details

clone(){LineCallout3D}

Creates a deep clone of the callout.

Returns:
TypeDescription
LineCallout3DA deep clone of the object that invoked this method.
fromJSON(json){*}static

Creates a new instance of this class and initializes it with values from a JSON object generated from a product in the ArcGIS platform. The object passed into the input json parameter often comes from a response to a query operation in the REST API or a toJSON() method from another ArcGIS product. See the Using fromJSON() topic in the Guide for details and examples of when and how to use this function.

Parameter:
json Object

A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects.

Returns:
TypeDescription
*Returns a new instance of this class.
toJSON(){Object}inherited

Converts an instance of this class to its ArcGIS portal JSON representation. See the Using fromJSON() topic in the Guide for more information.

Returns:
TypeDescription
ObjectThe ArcGIS portal JSON representation of an instance of this class.

API Reference search results

NameTypeModule
Loading...