Sets/Changes the size of graphics in a MOLE layer (Force Element or Tactical Graphic)
[C#]
///<summary>Sets/Changes the size of graphics in a MOLE layer (Force Element or Tactical Graphic)</summary> /// ///<param name="cachedGraphicLayer">An ICachedGraphicLayer interface that is a MOLE layer.</param> ///<param name="symbolSize">A System.Double that is the size of graphics (in map units). Example: 0.5</param> ///<param name="textSize">A System.Double that is size of labels of graphics in the layer (in map units) only used if a Tactical Graphic layer is provided. Example: 0.5</param> /// ///<returns>A System.Boolean where true if successful, false otherwise.</returns> /// ///<remarks></remarks> public System.Boolean SetMoleLayerSize(ESRI.ArcGIS.DefenseSolutions.ICachedGraphicLayer cachedGraphicLayer, System.Double symbolSize, System.Double textSize) { // Important: // The consumer of this procedure must still call // MapControl.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeography, cachedGraphicLayer, null); // (or the equivalent) in order for the size change to appear on the map. System.Boolean success = false; if (cachedGraphicLayer == null) return false; ESRI.ArcGIS.DefenseSolutions.IForceElementLayer forceElementLayer = cachedGraphicLayer as ESRI.ArcGIS.DefenseSolutions.IForceElementLayer; if (forceElementLayer != null) { forceElementLayer.Size = symbolSize; forceElementLayer.SizeIsRatio = false; success = true; } else { ESRI.ArcGIS.DefenseSolutions.ITacticalGraphicLayer tacticalGraphicLayer = cachedGraphicLayer as ESRI.ArcGIS.DefenseSolutions.ITacticalGraphicLayer; if (tacticalGraphicLayer == null) return false; // failed tacticalGraphicLayer.TextSize = textSize; ESRI.ArcGIS.DefenseSolutions.ICachedGraphicLayer2 cachedGraphicLayer2 = tacticalGraphicLayer as ESRI.ArcGIS.DefenseSolutions.ICachedGraphicLayer2; cachedGraphicLayer2.Size = symbolSize; success = true; } cachedGraphicLayer.Refresh(); return success; }
[Visual Basic .NET]
'''<summary>Sets/Changes the size of graphics in a MOLE layer (Force Element or Tactical Graphic)</summary> ''' '''<param name="cachedGraphicLayer">An ICachedGraphicLayer interface that is a MOLE layer.</param> '''<param name="symbolSize">A System.Double that is the size of graphics (in map units). Example: 0.5</param> '''<param name="textSize">A System.Double that is size of labels of graphics in the layer (in map units) only used if a Tactical Graphic layer is provided. Example: 0.5</param> ''' '''<returns>A System.Boolean where true if successful, false otherwise.</returns> ''' '''<remarks></remarks> Public Function SetMoleLayerSize(ByVal cachedGraphicLayer As ESRI.ArcGIS.DefenseSolutions.ICachedGraphicLayer, ByVal symbolSize As System.Double, ByVal textSize As System.Double) As System.Boolean ' Important: ' The consumer of this procedure must still call ' MapControl.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeography, cachedGraphicLayer, Nothing); ' (or the equivalent) in order for the size change to appear on the map. Dim success As System.Boolean = False If cachedGraphicLayer Is Nothing Then Return False End If If TypeOf cachedGraphicLayer Is ESRI.ArcGIS.DefenseSolutions.IForceElementLayer Then Dim forceElementLayer As ESRI.ArcGIS.DefenseSolutions.IForceElementLayer = CType(cachedGraphicLayer, ESRI.ArcGIS.DefenseSolutions.IForceElementLayer) ' Explicit Cast forceElementLayer.Size = symbolSize forceElementLayer.SizeIsRatio = False success = True Else Dim tacticalGraphicLayer As ESRI.ArcGIS.DefenseSolutions.ITacticalGraphicLayer = CType(cachedGraphicLayer, ESRI.ArcGIS.DefenseSolutions.ITacticalGraphicLayer) ' Explicit Cast tacticalGraphicLayer.TextSize = textSize Dim cachedGraphicLayer2 As ESRI.ArcGIS.DefenseSolutions.ICachedGraphicLayer2 = CType(tacticalGraphicLayer, ESRI.ArcGIS.DefenseSolutions.ICachedGraphicLayer2) ' Explicit Cast cachedGraphicLayer2.Size = symbolSize success = True End If cachedGraphicLayer.Refresh() Return success End Function