當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


JavaScript ArcGIS CIMSymbol.PrimitiveOverride用法及代碼示例

基本信息

以下是所在類或對象的基本信息。

AMD: require(["esri/symbols/CIMSymbol"], (CIMSymbol) => { /* code goes here */ });

ESM: import CIMSymbol from "@arcgis/core/symbols/CIMSymbol";

類: esri/symbols/CIMSymbol

繼承: CIMSymbol > Symbol > Accessor

自從:用於 JavaScript 4.12 的 ArcGIS API

用法說明

CIMSymbol.PrimitiveOverride函數(或屬性)的定義如下:

PrimitiveOverride Object


表示原始覆蓋。圖元覆蓋允許您使用 Arcade 表達式根據數據值動態更改符號圖層上的屬性。這與 Arcade visualization profile 一起使用,它可以訪問 $feature$view.scale 配置文件變量。這允許您基於當前視圖比例的要素屬性覆蓋符號圖層屬性。

使用 $view.scale以下 JSON 片段顯示了對size具有原始名稱的符號圖層的屬性"symbol-layer-1".基於 Arcade 表達式,符號圖層的大小將隨著視圖比例的變化而更新。

{
   type: "CIMPrimitiveOverride",
   primitiveName: "symbol-layer-1", // the name of the symbol layer we want to override
   propertyName: "Size", // the name of the property on the symbol layer we want to override
   valueExpressionInfo: {
     type: "CIMExpressionInfo",
     title: "Size override",
     // the pixel size at the largest scale
     // 42 represents the pixel size of the
     // circles at the view's largest scale (1:2,311,161)
     expression: "42 * 2311161 / $view.scale",
     returnType: "Default"
   }
}

使用 $feature以下 JSON 片段顯示了對textStringa的屬性標記圖形帶有原始名稱"textGraphic".的值textGraphic將基於的值NAME對於每個函數。

{
 type: "CIMPrimitiveOverride",
 primitiveName: "textGraphic",
 propertyName: "TextString",
 valueExpressionInfo: {
   type: "CIMExpressionInfo",
   title: "Custom",
   expression: "$feature.NAME", // value of textString will be based on the NAME of the feature
   returnType: "Default"
 }
}

屬性:

類型說明
type String

值永遠是"CIMPrimitiveOverride".

primitiveName String

此覆蓋適用的原語名稱。

propertyName String

此覆蓋適用的原語中的屬性名稱(例如"Size")。此值必須為正確大小寫(例如 "Size" 而不是 "size")。

valueExpressionInfo Object

包含 Arcade 表達式,該表達式返回要應用於基元屬性的值。

規格:
type String

值永遠是"CIMExpressionInfo".

title String
可選的

說明表達式的人類可讀文本。

expression String

遵循 Arcade Visualization Profile 定義的規範的 Arcade 表達式。原始覆蓋中的表達式可以使用 $feature 全局變量引用字段值,並且必須返回一個數字或字符串。此表達式返回的值表示指定 propertyName 的值覆蓋。例如,當覆蓋符號圖層的顏色時,您必須返回表示顏色的字符串或數組(例如 [255, 0, 0, 1]"red""#fff" )。覆蓋大小時,您必須返回一個表示符號圖層新大小的數字。

name String
可選的

表達式的名稱。

returnType String
可選的

表達式的返回類型。 "Default" 表示表達式的返回類型由消費者使用表達式確定。

可能的值"Default"|"String"|"Numeric"

相關用法


注:本文由純淨天空篩選整理自arcgis.com大神的英文原創作品 CIMSymbol.PrimitiveOverride。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。