dymaptic.GeoBlazor.Pro
dymaptic.GeoBlazor.Pro.Components
FeatureReductionCluster Class
Aggregates and summarizes dense features in a layer to clusters defined in screen space. ArcGIS Maps SDK for JavaScript
public class FeatureReductionCluster : dymaptic.GeoBlazor.Pro.Components.Layers.FeatureReduction
Inheritance System.Object 🡒 Microsoft.AspNetCore.Components.ComponentBase 🡒 MapComponent 🡒 FeatureReduction 🡒 FeatureReductionCluster
Constructors
FeatureReductionCluster() Constructor
Parameterless constructor for use as a Razor Component.
public FeatureReductionCluster();
FeatureReductionCluster(Dimension, Dimension, Dimension, Nullable, Nullable, Nullable, IReadOnlyCollection, IReadOnlyCollection
Constructor for use in code
public FeatureReductionCluster(dymaptic.GeoBlazor.Core.Model.Dimension? clusterMaxSize=null, dymaptic.GeoBlazor.Core.Model.Dimension? clusterMinSize=null, dymaptic.GeoBlazor.Core.Model.Dimension? clusterRadius=null, System.Nullable<bool> labelsVisible=null, System.Nullable<double> maxScale=null, System.Nullable<bool> popupEnabled=null, System.Collections.Generic.IReadOnlyCollection<dymaptic.GeoBlazor.Core.Components.AggregateField>? fields=null, System.Collections.Generic.IReadOnlyCollection<dymaptic.GeoBlazor.Core.Components.Label>? labelingInfo=null, dymaptic.GeoBlazor.Core.Components.Popups.PopupTemplate? popupTemplate=null, dymaptic.GeoBlazor.Core.Components.Renderers.Renderer? renderer=null, dymaptic.GeoBlazor.Core.Components.Symbols.Symbol? symbol=null);
Parameters
clusterMaxSize Dimension
Defines the symbol size of the largest cluster in points (or pixels if specified). default 37.5 ArcGIS Maps SDK for JavaScript
clusterMinSize Dimension
Defines the symbol size of the smallest cluster in points (or pixels if specified). default 9 ArcGIS Maps SDK for JavaScript
clusterRadius Dimension
Defines the radius in points (or pixels if specified) of the area in which multiple features will be grouped and visualized as a single cluster. default 60 ArcGIS Maps SDK for JavaScript
labelsVisible System.Nullable<System.Boolean>
Indicates whether to display labels for the clusters. default true ArcGIS Maps SDK for JavaScript
maxScale System.Nullable<System.Double>
Defines the maximum view scale at which clustering is enabled. default 0 ArcGIS Maps SDK for JavaScript
popupEnabled System.Nullable<System.Boolean>
Indicates whether to display the cluster popup. default true ArcGIS Maps SDK for JavaScript
fields System.Collections.Generic.IReadOnlyCollection<AggregateField>
An array of aggregate fields that summarize layer fields from features contained within each cluster. ArcGIS Maps SDK for JavaScript
labelingInfo System.Collections.Generic.IReadOnlyCollection<Label>
Defines labels for clusters as an array of LabelClass. ArcGIS Maps SDK for JavaScript
popupTemplate PopupTemplate
The PopupTemplate to apply to clustered graphics. ArcGIS Maps SDK for JavaScript
renderer Renderer
The renderer used to override the default style of the clusters. ArcGIS Maps SDK for JavaScript
symbol Symbol
A symbol used to override the default cluster style. ArcGIS Maps SDK for JavaScript
Properties
FeatureReductionCluster.ClusterMaxSize Property
Defines the symbol size of the largest cluster in points (or pixels if specified). Adjusting clusterMaxSize generally should be considered if the clusterRadius is modified. For example, if you prefer cluster icons to not overlap, then the clusterMaxSize should be substantially smaller than the clusterRadius. If a custom renderer is defined for cluster, and that renderer contains a esri/renderers/visualVaribles/SizeVariable, then this property is ignored and cluster sizes are determined using the renderer's size variable. Default Value:37.5
public dymaptic.GeoBlazor.Core.Model.Dimension? ClusterMaxSize { get; set; }
Property Value
FeatureReductionCluster.ClusterMinSize Property
Defines the symbol size of the smallest cluster in points (or pixels if specified). If labeling clusters with a count or some other information in the center of the cluster, then having a clusterMinSize larger than the default is generally preferred. Keep in mind that this size may be smaller than the symbol size of individual non-clustered features in the layer. In that scenario, you should either reduce the size of the symbol(s) in the layer's renderer or increase the clusterMinSize to be larger than the size of individual points to avoid confusion for the end user. This is most likely to happen when cluster size represents feature count. If a custom renderer is defined for cluster, and that renderer contains a esri/renderers/visualVaribles/SizeVariable, then this property is ignored and cluster sizes are determined using the renderer's size variable. Default Value:9
public dymaptic.GeoBlazor.Core.Model.Dimension? ClusterMinSize { get; set; }
Property Value
FeatureReductionCluster.ClusterRadius Property
Defines the radius in points (or pixels if specified) of the area in which multiple points will be grouped and visualized as a single cluster. Adjusting clusterRadius generally should be considered if the clusterMaxSize is modified. For example, if you prefer cluster graphics to not overlap, then the clusterRadius should be substantially larger than the clusterMaxSize. Default Value:60
public dymaptic.GeoBlazor.Core.Model.Dimension? ClusterRadius { get; set; }
Property Value
FeatureReductionCluster.Fields Property
An array of aggregate fields that summarize layer fields from features contained within each cluster. ArcGIS Maps SDK for JavaScript
public System.Collections.Generic.IReadOnlyCollection<dymaptic.GeoBlazor.Core.Components.AggregateField>? Fields { get; set; }
Property Value
System.Collections.Generic.IReadOnlyCollection<AggregateField>
FeatureReductionCluster.LabelingInfo Property
Defines labels for clusters as an array of LabelClass. ArcGIS Maps SDK for JavaScript
public System.Collections.Generic.IReadOnlyCollection<dymaptic.GeoBlazor.Core.Components.Label>? LabelingInfo { get; set; }
Property Value
System.Collections.Generic.IReadOnlyCollection<Label>
FeatureReductionCluster.LabelsVisible Property
Indicates whether to display labels for the clusters. If true, labels will appear as defined in the labelingInfo property. Default Value:true
public System.Nullable<bool> LabelsVisible { get; set; }
Property Value
System.Nullable<System.Boolean>
FeatureReductionCluster.MaxScale Property
Defines the maximum view scale at which clustering is enabled. If the user zooms in beyond the scale specified here, clustering will be disabled and only individual features will be displayed in the view. Once the user zooms out past this scale, clustering will be re-enabled. A value of 0 means clustering is always enabled, and therefore clusters may be visible at any view scale. Default Value:0
public System.Nullable<double> MaxScale { get; set; }
Property Value
System.Nullable<System.Double>
FeatureReductionCluster.PopupEnabled Property
Indicates whether to display the cluster popup. If true, popups will open when the user clicks or taps a cluster. If false, the popup as defined in the popupTemplate will be persisted, but won't be displayed on click/tap. Default Value:true
public System.Nullable<bool> PopupEnabled { get; set; }
Property Value
System.Nullable<System.Boolean>
FeatureReductionCluster.PopupTemplate Property
The PopupTemplate to apply to clustered graphics. ArcGIS Maps SDK for JavaScript
public dymaptic.GeoBlazor.Core.Components.Popups.PopupTemplate? PopupTemplate { get; set; }
Property Value
FeatureReductionCluster.Renderer Property
The renderer used to override the default style of the clusters. ArcGIS Maps SDK for JavaScript
public dymaptic.GeoBlazor.Core.Components.Renderers.Renderer? Renderer { get; set; }
Property Value
FeatureReductionCluster.Symbol Property
A symbol used to override the default cluster style. ArcGIS Maps SDK for JavaScript
public dymaptic.GeoBlazor.Core.Components.Symbols.Symbol? Symbol { get; set; }
Property Value
FeatureReductionCluster.Type Property
The type of Feature Reduction
public override string Type { get; }
Property Value
Methods
FeatureReductionCluster.AddToFields(AggregateField[]) Method
Asynchronously adds elements to the Fields property.
public System.Threading.Tasks.Task AddToFields(params dymaptic.GeoBlazor.Core.Components.AggregateField[] values);
Parameters
values AggregateField[]
The elements to add.
Returns
FeatureReductionCluster.AddToLabelingInfo(Label[]) Method
Asynchronously adds elements to the LabelingInfo property.
public System.Threading.Tasks.Task AddToLabelingInfo(params dymaptic.GeoBlazor.Core.Components.Label[] values);
Parameters
The elements to add.
Returns
FeatureReductionCluster.GetClusterMaxSize() Method
Asynchronously retrieve the current value of the ClusterMaxSize property.
public System.Threading.Tasks.Task<dymaptic.GeoBlazor.Core.Model.Dimension?> GetClusterMaxSize();
Returns
System.Threading.Tasks.Task<Dimension>
FeatureReductionCluster.GetClusterMinSize() Method
Asynchronously retrieve the current value of the ClusterMinSize property.
public System.Threading.Tasks.Task<dymaptic.GeoBlazor.Core.Model.Dimension?> GetClusterMinSize();
Returns
System.Threading.Tasks.Task<Dimension>
FeatureReductionCluster.GetClusterRadius() Method
Asynchronously retrieve the current value of the ClusterRadius property.
public System.Threading.Tasks.Task<dymaptic.GeoBlazor.Core.Model.Dimension?> GetClusterRadius();
Returns
System.Threading.Tasks.Task<Dimension>
FeatureReductionCluster.GetFields() Method
Asynchronously retrieve the current value of the Fields property.
public System.Threading.Tasks.Task<System.Collections.Generic.IReadOnlyCollection<dymaptic.GeoBlazor.Core.Components.AggregateField>?> GetFields();
Returns
System.Threading.Tasks.Task<System.Collections.Generic.IReadOnlyCollection<AggregateField>>
FeatureReductionCluster.GetLabelingInfo() Method
Asynchronously retrieve the current value of the LabelingInfo property.
public System.Threading.Tasks.Task<System.Collections.Generic.IReadOnlyCollection<dymaptic.GeoBlazor.Core.Components.Label>?> GetLabelingInfo();
Returns
System.Threading.Tasks.Task<System.Collections.Generic.IReadOnlyCollection<Label>>
FeatureReductionCluster.GetLabelsVisible() Method
Asynchronously retrieve the current value of the LabelsVisible property.
public System.Threading.Tasks.Task<System.Nullable<bool>> GetLabelsVisible();
Returns
System.Threading.Tasks.Task<System.Nullable<System.Boolean>>
FeatureReductionCluster.GetMaxScale() Method
Asynchronously retrieve the current value of the MaxScale property.
public System.Threading.Tasks.Task<System.Nullable<double>> GetMaxScale();
Returns
System.Threading.Tasks.Task<System.Nullable<System.Double>>
FeatureReductionCluster.GetPopupEnabled() Method
Asynchronously retrieve the current value of the PopupEnabled property.
public System.Threading.Tasks.Task<System.Nullable<bool>> GetPopupEnabled();
Returns
System.Threading.Tasks.Task<System.Nullable<System.Boolean>>
FeatureReductionCluster.GetPopupTemplate() Method
Asynchronously retrieve the current value of the PopupTemplate property.
public System.Threading.Tasks.Task<dymaptic.GeoBlazor.Core.Components.Popups.PopupTemplate?> GetPopupTemplate();
Returns
System.Threading.Tasks.Task<PopupTemplate>
FeatureReductionCluster.GetRenderer() Method
Asynchronously retrieve the current value of the Renderer property.
public System.Threading.Tasks.Task<dymaptic.GeoBlazor.Core.Components.Renderers.Renderer?> GetRenderer();
Returns
System.Threading.Tasks.Task<Renderer>
FeatureReductionCluster.GetSymbol() Method
Asynchronously retrieve the current value of the Symbol property.
public System.Threading.Tasks.Task<dymaptic.GeoBlazor.Core.Components.Symbols.Symbol?> GetSymbol();
Returns
System.Threading.Tasks.Task<Symbol>
FeatureReductionCluster.RegisterChildComponent(MapComponent) Method
Called from dymaptic.GeoBlazor.Core.Components.MapComponent.OnInitializedAsync to "Register" the current component with its parent.
public override System.Threading.Tasks.Task RegisterChildComponent(dymaptic.GeoBlazor.Core.Components.MapComponent child);
Parameters
child MapComponent
The calling, child component to register
Returns
Exceptions
InvalidChildElementException
Throws if the current child is not a valid sub-component to the parent.
Remarks
This method is an implementation detail and should not be called directly by consumers. In future versions, this may be changed to an internal method. If you see no other way to register a child component, please open an issue on GitHub.
FeatureReductionCluster.RemoveFromFields(AggregateField[]) Method
Asynchronously remove an element from the Fields property.
public System.Threading.Tasks.Task RemoveFromFields(params dymaptic.GeoBlazor.Core.Components.AggregateField[] values);
Parameters
values AggregateField[]
The elements to remove.
Returns
FeatureReductionCluster.RemoveFromLabelingInfo(Label[]) Method
Asynchronously remove an element from the LabelingInfo property.
public System.Threading.Tasks.Task RemoveFromLabelingInfo(params dymaptic.GeoBlazor.Core.Components.Label[] values);
Parameters
The elements to remove.
Returns
FeatureReductionCluster.SetClusterMaxSize(Dimension) Method
Asynchronously set the value of the ClusterMaxSize property after render.
public System.Threading.Tasks.Task SetClusterMaxSize(dymaptic.GeoBlazor.Core.Model.Dimension? value);
Parameters
value Dimension
The value to set.
Returns
FeatureReductionCluster.SetClusterMinSize(Dimension) Method
Asynchronously set the value of the ClusterMinSize property after render.
public System.Threading.Tasks.Task SetClusterMinSize(dymaptic.GeoBlazor.Core.Model.Dimension? value);
Parameters
value Dimension
The value to set.
Returns
FeatureReductionCluster.SetClusterRadius(Dimension) Method
Asynchronously set the value of the ClusterRadius property after render.
public System.Threading.Tasks.Task SetClusterRadius(dymaptic.GeoBlazor.Core.Model.Dimension? value);
Parameters
value Dimension
The value to set.
Returns
FeatureReductionCluster.SetFields(IReadOnlyCollection) Method
Asynchronously set the value of the Fields property after render.
public System.Threading.Tasks.Task SetFields(System.Collections.Generic.IReadOnlyCollection<dymaptic.GeoBlazor.Core.Components.AggregateField> value);
Parameters
value System.Collections.Generic.IReadOnlyCollection<AggregateField>
The value to set.
Returns
FeatureReductionCluster.SetLabelingInfo(IReadOnlyCollection
Asynchronously set the value of the LabelingInfo property after render.
public System.Threading.Tasks.Task SetLabelingInfo(System.Collections.Generic.IReadOnlyCollection<dymaptic.GeoBlazor.Core.Components.Label> value);
Parameters
value System.Collections.Generic.IReadOnlyCollection<Label>
The value to set.
Returns
FeatureReductionCluster.SetLabelsVisible(Nullable) Method
Asynchronously set the value of the LabelsVisible property after render.
public System.Threading.Tasks.Task SetLabelsVisible(System.Nullable<bool> value);
Parameters
value System.Nullable<System.Boolean>
The value to set.
Returns
FeatureReductionCluster.SetMaxScale(Nullable) Method
Asynchronously set the value of the MaxScale property after render.
public System.Threading.Tasks.Task SetMaxScale(System.Nullable<double> value);
Parameters
value System.Nullable<System.Double>
The value to set.
Returns
FeatureReductionCluster.SetPopupEnabled(Nullable) Method
Asynchronously set the value of the PopupEnabled property after render.
public System.Threading.Tasks.Task SetPopupEnabled(System.Nullable<bool> value);
Parameters
value System.Nullable<System.Boolean>
The value to set.
Returns
FeatureReductionCluster.SetPopupTemplate(PopupTemplate) Method
Asynchronously set the value of the PopupTemplate property after render.
public System.Threading.Tasks.Task SetPopupTemplate(dymaptic.GeoBlazor.Core.Components.Popups.PopupTemplate? value);
Parameters
value PopupTemplate
The value to set.
Returns
FeatureReductionCluster.SetRenderer(Renderer) Method
Asynchronously set the value of the Renderer property after render.
public System.Threading.Tasks.Task SetRenderer(dymaptic.GeoBlazor.Core.Components.Renderers.Renderer? value);
Parameters
value Renderer
The value to set.
Returns
FeatureReductionCluster.SetSymbol(Symbol) Method
Asynchronously set the value of the Symbol property after render.
public System.Threading.Tasks.Task SetSymbol(dymaptic.GeoBlazor.Core.Components.Symbols.Symbol? value);
Parameters
value Symbol
The value to set.
Returns
FeatureReductionCluster.UnregisterChildComponent(MapComponent) Method
Undoes the "Registration" of a child with its parent.
public override System.Threading.Tasks.Task UnregisterChildComponent(dymaptic.GeoBlazor.Core.Components.MapComponent child);
Parameters
child MapComponent
The child to unregister
Returns
Remarks
This method is an implementation detail and should not be called directly by consumers. In future versions, this may be changed to an internal method.
FeatureReductionCluster.ValidateRequiredGeneratedChildren() Method
Validates source-generated child components.
public override void ValidateRequiredGeneratedChildren();
Implements ValidateRequiredGeneratedChildren()