-
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 片段顯示了對textString
a的屬性標記圖形帶有原始名稱"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"
屬性:
-
基本信息
以下是所在類或對象的基本信息。
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
函數(或屬性)的定義如下:
相關用法
- JavaScript ArcGIS CIMSymbol.CIMTextSymbol用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMGeometricEffectJog用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMMarkerPlacementPolygonCenter用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMGeometricEffectDashes用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMSolidStroke用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMMarkerPlacementInsidePolygon用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMMarkerPlacementOnLine用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMMarkerPlacementAtRatioPositions用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMPictureMarker用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMMarkerPlacementAlongLineSameSize用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMGeometricEffectScale用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMGeometricEffectCut用法及代碼示例
- JavaScript ArcGIS CIMSymbol.clone用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMPolygonSymbol用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMGeometricEffectArrow用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMPictureFill用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMGeometricEffectBuffer用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMGeometricEffectOffset用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMColorSubstitution用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMGeometricEffectMove用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMPointSymbol用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMHatchFill用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMVectorMarker用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMMarkerPlacementOnVertices用法及代碼示例
- JavaScript ArcGIS CIMSymbol.CIMGeometricEffectRotate用法及代碼示例
注:本文由純淨天空篩選整理自arcgis.com大神的英文原創作品 CIMSymbol.PrimitiveOverride。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。