com.esri.arcgis.display
Interface IDynamicSymbolProperties2

All Superinterfaces:
IDynamicSymbolProperties, Serializable
All Known Implementing Classes:
DynamicDisplay, IDynamicSymbolProperties2Proxy

public interface IDynamicSymbolProperties2
extends IDynamicSymbolProperties, Serializable

Provides access to dynamic symbol properties.

Description

This interface is new at ArcGIS 9.3. It supersedes IDynamicSymbolProperties.

Remarks

The Dynamic Display has four internal Dynamic Symbols that are being used to determine how the Dynamic Items are to be rendered. These internal Dynamic Symbols are:

Dynamic Marker Symbol

Dynamic Line Symbol

Dynamic Fill Symbol

Dynamic Text Symbol

The IDynamicSymbolProperties2 interface is used in order to set these four Dynamic Symbolsí Properties.

Each Dynamic Item that is rendered will be affected by the current state of the Internal Dynamic Symbols. For example, when DrawPolygon method is being called, the polygonís fill will be rendered according to the current state of the internal Dynamic Fill Symbol, and the Polygonís outline will be rendered according to the current state of the internal Dynamic Line Symbol.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


Method Summary
 void getOffset(int dynamicSymbolType, float[] offsetX, float[] offsetY)
          Offsets the dynamic symbol.
 int getTextBoxHorizontalAlignment()
          Indicates the text box horizontal alignment for the dynamic text symbol.
 void getTextBoxMargins(float[] left, float[] top, float[] right, float[] bottom)
          Indicates the text box margins for the dynamic text symbol.
 float getTextCharacterSpacing()
          Indicates an additional space that is added to each character beyond what is defined by its character box in the TextGlyph.
 float getTextLeading()
          Indicates the text leading for the dynamic text symbol.
 void getTextSize(String text, float[] sizeX, float[] sizeY)
          The text size in pixel screen coordinates.
 float getTextWordSpacing()
          Indicates an additional space that is added between words of the text string.
 boolean isLineContinuePattern()
          Indicates whether the line pattern is continued or restarted, for multi parts lines drawing.
 boolean isTextBoxUseDynamicFillSymbol()
          Indicates whether to use the dynamic fill symbol when drawing the text.
 boolean isTextBoxUseDynamicLineSymbol()
          Indicates whether to use the dynamic line symbol when drawing the text.
 boolean isTextRightToLeft()
          Indicates whether the text is drawn from right to left for the dynamic text symbol.
 boolean isUseReferenceScale(int dynamicSymbolType)
          Indicates whether the specified dynamic symbol will conform to map reference scale.
 void setLineContinuePattern(boolean continuePattern)
          Indicates whether the line pattern is continued or restarted, for multi parts lines drawing.
 void setOffset(int dynamicSymbolType, float offsetX, float offsetY)
          Offsets the dynamic symbol.
 void setTextBoxHorizontalAlignment(int textBoxHorizontalAlignment)
          Indicates the text box horizontal alignment for the dynamic text symbol.
 void setTextBoxMargins(float left, float top, float right, float bottom)
          Indicates the text box margins for the dynamic text symbol.
 void setTextBoxUseDynamicFillSymbol(boolean use)
          Indicates whether to use the dynamic fill symbol when drawing the text.
 void setTextBoxUseDynamicLineSymbol(boolean use)
          Indicates whether to use the dynamic line symbol when drawing the text.
 void setTextCharacterSpacing(float characterSpacing)
          Indicates an additional space that is added to each character beyond what is defined by its character box in the TextGlyph.
 void setTextLeading(float leading)
          Indicates the text leading for the dynamic text symbol.
 void setTextRightToLeft(boolean rightToLeft)
          Indicates whether the text is drawn from right to left for the dynamic text symbol.
 void setTextWordSpacing(float wordSpacing)
          Indicates an additional space that is added between words of the text string.
 void setUseReferenceScale(int dynamicSymbolType, boolean useReferenceScale)
          Indicates whether the specified dynamic symbol will conform to map reference scale.
 
Methods inherited from interface com.esri.arcgis.display.IDynamicSymbolProperties
getColor, getDynamicGlyph, getHeading, getRotationAlignment, getScale, getTextHorizontalAlignment, getTextVerticalAlignment, isSmooth, setColor, setDynamicGlyphByRef, setHeading, setRotationAlignment, setScale, setSmooth, setTextHorizontalAlignment, setTextVerticalAlignment
 

Method Detail

getOffset

void getOffset(int dynamicSymbolType,
               float[] offsetX,
               float[] offsetY)
               throws IOException,
                      AutomationException
Offsets the dynamic symbol.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
dynamicSymbolType - A com.esri.arcgis.display.esriDynamicSymbolType constant (in)
offsetX - The offsetX (in/out: use single element array)
offsetY - The offsetY (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setOffset

void setOffset(int dynamicSymbolType,
               float offsetX,
               float offsetY)
               throws IOException,
                      AutomationException
Offsets the dynamic symbol.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
dynamicSymbolType - A com.esri.arcgis.display.esriDynamicSymbolType constant (in)
offsetX - The offsetX (in)
offsetY - The offsetY (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isUseReferenceScale

boolean isUseReferenceScale(int dynamicSymbolType)
                            throws IOException,
                                   AutomationException
Indicates whether the specified dynamic symbol will conform to map reference scale.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
dynamicSymbolType - A com.esri.arcgis.display.esriDynamicSymbolType constant (in)
Returns:
The useReferenceScale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseReferenceScale

void setUseReferenceScale(int dynamicSymbolType,
                          boolean useReferenceScale)
                          throws IOException,
                                 AutomationException
Indicates whether the specified dynamic symbol will conform to map reference scale.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
dynamicSymbolType - A com.esri.arcgis.display.esriDynamicSymbolType constant (in)
useReferenceScale - The useReferenceScale (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTextBoxMargins

void getTextBoxMargins(float[] left,
                       float[] top,
                       float[] right,
                       float[] bottom)
                       throws IOException,
                              AutomationException
Indicates the text box margins for the dynamic text symbol.

Remarks

The Text Box Margins values, indicates a margin around the text in all four directions.

This also affects the anchor point of the text, along with the TextHorizontalAlignment and TextVerticalAlignment properties.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
left - The left (in/out: use single element array)
top - The top (in/out: use single element array)
right - The right (in/out: use single element array)
bottom - The bottom (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTextBoxMargins

void setTextBoxMargins(float left,
                       float top,
                       float right,
                       float bottom)
                       throws IOException,
                              AutomationException
Indicates the text box margins for the dynamic text symbol.

Remarks

The Text Box Margins values, indicates a margin around the text in all four directions.

This also affects the anchor point of the text, along with the TextHorizontalAlignment and TextVerticalAlignment properties.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
left - The left (in)
top - The top (in)
right - The right (in)
bottom - The bottom (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTextBoxHorizontalAlignment

int getTextBoxHorizontalAlignment()
                                  throws IOException,
                                         AutomationException
Indicates the text box horizontal alignment for the dynamic text symbol.

Remarks

This property controls the Horizontal Alignment of the text inside the text box, while supporting multi lines text (using carriage return on each line end).

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
A com.esri.arcgis.display.esriTextHorizontalAlignment constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTextBoxHorizontalAlignment

void setTextBoxHorizontalAlignment(int textBoxHorizontalAlignment)
                                   throws IOException,
                                          AutomationException
Indicates the text box horizontal alignment for the dynamic text symbol.

Remarks

This property controls the Horizontal Alignment of the text inside the text box, while supporting multi lines text (using carriage return on each line end).

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
textBoxHorizontalAlignment - A com.esri.arcgis.display.esriTextHorizontalAlignment constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isTextBoxUseDynamicFillSymbol

boolean isTextBoxUseDynamicFillSymbol()
                                      throws IOException,
                                             AutomationException
Indicates whether to use the dynamic fill symbol when drawing the text.

Remarks

When true, text will be rendered with a background Fill, using the current internal Dynamic Fill Symbol State.

When false, text will be rendered with no background Fill.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
The use
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTextBoxUseDynamicFillSymbol

void setTextBoxUseDynamicFillSymbol(boolean use)
                                    throws IOException,
                                           AutomationException
Indicates whether to use the dynamic fill symbol when drawing the text.

Remarks

When true, text will be rendered with a background Fill, using the current internal Dynamic Fill Symbol State.

When false, text will be rendered with no background Fill.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
use - The use (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isTextBoxUseDynamicLineSymbol

boolean isTextBoxUseDynamicLineSymbol()
                                      throws IOException,
                                             AutomationException
Indicates whether to use the dynamic line symbol when drawing the text.

Remarks

When true, text will be rendered with an outline around the text box, using the current internal Dynamic Line Symbol State.

When false, text will be rendered with no outline around the text box.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
The use
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTextBoxUseDynamicLineSymbol

void setTextBoxUseDynamicLineSymbol(boolean use)
                                    throws IOException,
                                           AutomationException
Indicates whether to use the dynamic line symbol when drawing the text.

Remarks

When true, text will be rendered with an outline around the text box, using the current internal Dynamic Line Symbol State.

When false, text will be rendered with no outline around the text box.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
use - The use (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTextLeading

float getTextLeading()
                     throws IOException,
                            AutomationException
Indicates the text leading for the dynamic text symbol.

Remarks

Text Leading specifies the spacing in pixels, between the multiple lines of a text box, when drawing text.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
The leading
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTextLeading

void setTextLeading(float leading)
                    throws IOException,
                           AutomationException
Indicates the text leading for the dynamic text symbol.

Remarks

Text Leading specifies the spacing in pixels, between the multiple lines of a text box, when drawing text.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
leading - The leading (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTextCharacterSpacing

float getTextCharacterSpacing()
                              throws IOException,
                                     AutomationException
Indicates an additional space that is added to each character beyond what is defined by its character box in the TextGlyph.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
The characterSpacing
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTextCharacterSpacing

void setTextCharacterSpacing(float characterSpacing)
                             throws IOException,
                                    AutomationException
Indicates an additional space that is added to each character beyond what is defined by its character box in the TextGlyph.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
characterSpacing - The characterSpacing (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTextWordSpacing

float getTextWordSpacing()
                         throws IOException,
                                AutomationException
Indicates an additional space that is added between words of the text string.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
The wordSpacing
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTextWordSpacing

void setTextWordSpacing(float wordSpacing)
                        throws IOException,
                               AutomationException
Indicates an additional space that is added between words of the text string.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
wordSpacing - The wordSpacing (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isTextRightToLeft

boolean isTextRightToLeft()
                          throws IOException,
                                 AutomationException
Indicates whether the text is drawn from right to left for the dynamic text symbol.

Remarks

RightToLeft defines whether the text is to be displayed in a right to left manner. The default value is false, meaning Left To Right manner.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
The rightToLeft
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTextRightToLeft

void setTextRightToLeft(boolean rightToLeft)
                        throws IOException,
                               AutomationException
Indicates whether the text is drawn from right to left for the dynamic text symbol.

Remarks

RightToLeft defines whether the text is to be displayed in a right to left manner. The default value is false, meaning Left To Right manner.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
rightToLeft - The rightToLeft (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTextSize

void getTextSize(String text,
                 float[] sizeX,
                 float[] sizeY)
                 throws IOException,
                        AutomationException
The text size in pixel screen coordinates.

Remarks

Returns the size of a given text, according to the current state of the internal Dynamic Symbols.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
text - The text (in)
sizeX - The sizeX (in/out: use single element array)
sizeY - The sizeY (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLineContinuePattern

void setLineContinuePattern(boolean continuePattern)
                            throws IOException,
                                   AutomationException
Indicates whether the line pattern is continued or restarted, for multi parts lines drawing.

Remarks

Taking drawing a polyline as an example, if you need to render a continuous pattern, and canít have the pattern restarted in each of the polylineís vertices, you should set this property to true.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
continuePattern - The continuePattern (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isLineContinuePattern

boolean isLineContinuePattern()
                              throws IOException,
                                     AutomationException
Indicates whether the line pattern is continued or restarted, for multi parts lines drawing.

Remarks

Taking drawing a polyline as an example, if you need to render a continuous pattern, and canít have the pattern restarted in each of the polylineís vertices, you should set this property to true.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
The continuePattern
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.