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