Skip to content
import LineCallout3D from "@arcgis/core/symbols/callouts/LineCallout3D.js";
Inheritance:
LineCallout3DCallout3DAccessor
Since
ArcGIS Maps SDK 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 PointSymbol3D.symbolLayers, an offset should be defined by setting the PointSymbol3D.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

See also
Example
let 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

Constructor

Constructor
Parameters
ParameterTypeDescriptionRequired
properties
See the properties table for a list of all the properties that may be passed into the constructor.

Properties

Any properties can be set, retrieved or listened to. See the Watch for changes topic.
PropertyTypeClass
declaredClass
readonly inherited
type
readonly
"line"

border

autocast Property
Type
LineCallout3DBorder | null | undefined

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.

color

autocast Property
Type
Color | null | undefined

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

Default value
"black"

declaredClass

readonlyinherited Property
Type
string
Inherited from: Accessor
Since
ArcGIS Maps SDK for JavaScript 4.7

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

size

autocast Property
Type
number

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

type

readonly Property
Type
"line"

Methods

MethodSignatureClass
fromJSON
inherited static
fromJSON(json: any): any
clone(): LineCallout3D
toJSON
inherited
toJSON(): any

fromJSON

inheritedstatic Method
Signature
fromJSON (json: any): any
Inherited from: JSONSupportMixin

Creates a new instance of this class and initializes it with values from a JSON object generated from an ArcGIS product. 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.

Parameters
ParameterTypeDescriptionRequired
json
any

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
any

Returns a new instance of this class.

clone

Method
Signature
clone (): LineCallout3D

Creates a deep clone of the callout.

Returns
LineCallout3D

A deep clone of the object that invoked this method.

toJSON

inherited Method
Signature
toJSON (): any
Inherited from: JSONSupportMixin

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

Returns
any

The ArcGIS portal JSON representation of an instance of this class.