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


JavaScript ArcGIS OpacitySlider.fromVisualVariableResult用法及代碼示例


基本信息

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

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

ESM: import OpacitySlider from "@arcgis/core/widgets/smartMapping/OpacitySlider";

類: esri/widgets/smartMapping/OpacitySlider

繼承: OpacitySlider > SmartMappingSliderBase > Widget > Accessor

自從:用於 JavaScript 4.12 的 ArcGIS API

用法說明

OpacitySlider.fromVisualVariableResult函數(或屬性)的定義如下:

fromVisualVariableResult (visualVariableResult, histogramResult) {OpacitySlider} static


用於從createVisualVariable 方法的result 創建OpacitySlider 小部件實例的便捷函數。

此方法設置滑塊停止點、最小值、最大值和 histogramConfig。為其分配適當的容器和任何其他可選屬性仍然是開發人員的責任。

參數:

類型說明
visualVariableResult VisualVariableResult

createVisualVariable 方法的結果對象。

histogramResult HistogramResult
可選的

histogram 方法的結果直方圖對象。

返回:

類型 說明
OpacitySlider 返回 OpacitySlider 實例。在您為它分配一個有效的容器之前,它不會呈現。

例子:

const params = {
  layer: layer,
  basemap: map.basemap,
  valueExpression: "( $feature.POP_POVERTY / $feature.TOTPOP_CY ) * 100",
  view: view
};

let vvResult = null;

opacityVariableCreator
  .createVisualVariable(params)
  .then(function(response) {
    vvResult = response;
    const renderer = layer.renderer.clone();
    renderer.visualVariables = [ vvResult.visualVariable ]
    layer.renderer = renderer;

    return histogram({
      layer: layer,
      valueExpression: params.valueExpression,
      view: view,
      numBins: 70
    });
  })
   .then(function(histogramResult) {

     const opacitySlider = OpacitySlider.fromVisualVariableResult(vvResult, histogramResult);
     opacitySlider.container = "slider";

     // when the user slides the handle(s), update the renderer
     // with the updated opacity stops

     opacitySlider.on(["thumb-change", "thumb-drag"], function() {
       const renderer = layer.renderer.clone();
       const opacityVariable = renderer.visualVariables[0].clone();
       opacityVariable.stops = opacitySlider.stops;
       renderer.visualVariables = [ opacityVariable ];
       layer.renderer = renderer;
     });
   })
   .catch(function(error) {
     console.log("there was an error: ", error);
   });

相關用法


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