@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
57 lines (55 loc) • 2.77 kB
TypeScript
import type { ClonableMixin } from "../core/Clonable.js";
import type { JSONSupport } from "../core/JSONSupport.js";
import type { IdealEdgeLengthType } from "./types.js";
export interface OrganicLayoutSettingsProperties extends Partial<Pick<OrganicLayoutSettings, "absoluteIdealEdgeLength" | "autoRepulsionRadius" | "computationBudgetTime" | "idealEdgeLengthType" | "multiplicativeIdealEdgeLength" | "repulsionRadiusMultiplier">> {}
/**
* Settings for organic layout calculations.
*
* @since 4.32
* @see [Web Map Specification | Link chart organic layout settings](https://developers.arcgis.com/web-map-specification/objects/linkChartOrganicLayoutSettings/)
*/
export default class OrganicLayoutSettings extends OrganicLayoutSettingsSuperclass {
constructor(properties?: OrganicLayoutSettingsProperties);
/**
* The value, in degrees, to use for the ideal edge length during layout calculations when the [idealEdgeLengthType](https://developers.arcgis.com/javascript/latest/references/core/linkChart/OrganicLayoutSettings/#idealEdgeLengthType) is `absolute-value`.
* Only used for geographic layouts.
*
* @default 1
*/
accessor absoluteIdealEdgeLength: number;
/**
* Determines whether the repulsion radius should be calculated automatically (`true`), or computed according to `repulsionRadiusMultiplier` (`false`).
*
* @default true
*/
accessor autoRepulsionRadius: boolean;
/**
* The maximum amount of time in seconds to spend on the layout calculation.
*
* @default 2
*/
accessor computationBudgetTime: number | null | undefined;
/**
* Determines which property to use to compute the ideal edge length. Only used for geographic layouts.
* When the value is `absolute-value`, the `absoluteIdealEdgeLength` property is used.
* When the value is `multiplier`, the `multiplicativeIdealEdgeLength` property is used.
*
* @default "multiplier"
*/
idealEdgeLengthType: IdealEdgeLengthType;
/**
* Value used to multiply the default edge length to determine the ideal edge length during layout calculations, when the [idealEdgeLengthType](https://developers.arcgis.com/javascript/latest/references/core/linkChart/OrganicLayoutSettings/#idealEdgeLengthType) is `multiplier`.
* Only used for geographic layouts.
*
* @default 1
*/
accessor multiplicativeIdealEdgeLength: number;
/**
* Value to be used for the repulsion radius multiplier in organic layout calculations.
* The repulsion radius is calculated by multiplying the repulsionRadiusMultiplier by the actual ideal edge length.
*
* @default 1
*/
accessor repulsionRadiusMultiplier: number | null | undefined;
}
declare const OrganicLayoutSettingsSuperclass: typeof JSONSupport & typeof ClonableMixin