com.esri.arcgis.display
Class DotDensityFillSymbol

java.lang.Object
  extended by com.esri.arcgis.display.DotDensityFillSymbol
All Implemented Interfaces:
IDotDensityFillSymbol, IDotDensityFillSymbol2, IDotDensityMasking, IFillSymbol, IMapLevel, ISymbol, ISymbolArray, com.esri.arcgis.interop.RemoteObjRef, IClone, IPersist, IPersistStream, IPropertySupport, Externalizable, Serializable

public class DotDensityFillSymbol
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IDotDensityFillSymbol, IDotDensityFillSymbol2, IDotDensityMasking, ISymbolArray, IMapLevel, ISymbol, IPropertySupport, IPersistStream, IPersist, IClone, Externalizable

Defines a dot density fill symbol, a data driven symbol commonly used with the dot density renderer.

Description

Data driven fill symbol used with the DotDensityRenderer.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

See Also:
Serialized Form

Constructor Summary
DotDensityFillSymbol()
          Constructs a DotDensityFillSymbol using ArcGIS Engine.
DotDensityFillSymbol(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
DotDensityFillSymbol theDotDensityFillSymbol = (DotDensityFillSymbol) obj;
 
Method Summary
 void addSymbol(ISymbol symbol)
          Adds a symbol to the array.
 boolean applies(Object pUnk)
          Indicates if the receiver can apply the given object at any given time.
 Object apply(Object newObject)
          Applies the given property to the receiver and returns the old object.
 void assign(IClone src)
          Assigns the properties of src to the receiver.
 boolean canApply(Object pUnk)
          Indicates if the receiver can apply the given object at that particular moment.
 void clearSymbols()
          Removes all symbols from the array.
 void deleteSymbol(ISymbol symbol)
          Delete the given symbol.
 void draw(IGeometry geometry)
          Draws the specified shape.
 boolean equals(Object o)
          Compare this object with another
 IClone esri_clone()
          Clones the receiver and assigns the result to *clone.
 IColor getBackgroundColor()
          The background color.
 void getClassID(GUID[] pClassID)
          getClassID
static String getClsid()
          getClsid.
 IColor getColor()
          Fill color.
 Object getCurrent(Object pUnk)
          The object currently being used.
 int getDotCount(int index)
          The number of dots used to fill.
 double getDotSize()
          The size of dots used to fill.
 double getDotSpacing()
          The distance between dot centers, expressed as a percentage of dot size.
 int getMapLevel()
          Current map level for drawing multi-level symbols.
 IGeometry getMaskGeometry()
          The geometry used for masking (can be a geometry collection).
 ILineSymbol getOutline()
          Line symbol of fill outline.
 Object getRandomSeed()
          Defines how the random generator is initialized to draw dots randomly.
 int getROP2()
          Raster operation code for pixel drawing.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 ISymbol getSymbol(int index)
          The symbol at the index position.
 int getSymbolCount()
          The number of symbols.
 int hashCode()
          the hashcode for this object
 void isDirty()
          isDirty
 boolean isEqual(IClone other)
          Indicates if the receiver and other have the same properties.
 boolean isExcludeMask()
          Indicates if the dots are to be excluded from the mask area.
 boolean isFixedPlacement()
          Indicates if the dots are always placed at the same location (the alternative is random placement).
 boolean isIdentical(IClone other)
          Indicates if the receiver and other are the same object.
 boolean isUseMasking()
          Indicates if masking is used.
 void load(IStream pstm)
          load
 void moveSymbol(ISymbol symbol, int toIndex)
          Moves the given symbol to new index position.
 void queryBoundary(int hDC, ITransformation displayTransform, IGeometry geometry, IPolygon boundary)
          Fills an existing polygon with the boundary of the specified symbol.
 void readExternal(ObjectInput in)
           
 void resetDC()
          Restores DC to original state.
 void save(IStream pstm, int fClearDirty)
          save
 void setBackgroundColor(IColor color)
          The background color.
 void setColor(IColor color)
          Fill color.
 void setDotCount(int index, int dotCount)
          The number of dots used to fill.
 void setDotSize(double dotSize)
          The size of dots used to fill.
 void setDotSpacing(double dotSpacing)
          The distance between dot centers, expressed as a percentage of dot size.
 void setExcludeMask(boolean excludeMask)
          Indicates if the dots are to be excluded from the mask area.
 void setFixedPlacement(boolean fixedPlacement)
          Indicates if the dots are always placed at the same location (the alternative is random placement).
 void setMapLevel(int mapLevel)
          Current map level for drawing multi-level symbols.
 void setMaskGeometryByRef(IGeometry geometry)
          The geometry used for masking (can be a geometry collection).
 void setOutline(ILineSymbol outlineSym)
          Line symbol of fill outline.
 void setRandomSeed(Object seed)
          Defines how the random generator is initialized to draw dots randomly.
 void setROP2(int drawMode)
          Raster operation code for pixel drawing.
 void setSymbolByRef(int index, ISymbol symbol)
          The symbol at the index position.
 void setupDC(int hDC, ITransformation transformation)
          Prepares the DC for drawing the symbol.
 void setUseMasking(boolean useMasking)
          Indicates if masking is used.
 void writeExternal(ObjectOutput out)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

DotDensityFillSymbol

public DotDensityFillSymbol()
                     throws IOException,
                            UnknownHostException
Constructs a DotDensityFillSymbol using ArcGIS Engine.

Throws:
IOException - if there are interop problems
UnknownHostException - if there are interop problems

DotDensityFillSymbol

public DotDensityFillSymbol(Object obj)
                     throws IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
DotDensityFillSymbol theDotDensityFillSymbol = (DotDensityFillSymbol) obj;

Construct a DotDensityFillSymbol using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to DotDensityFillSymbol.

Parameters:
obj - an object returned from ArcGIS Engine or Server
Throws:
IOException - if there are interop problems
Method Detail

getClsid

public static String getClsid()
getClsid.


equals

public boolean equals(Object o)
Compare this object with another

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

getDotSize

public double getDotSize()
                  throws IOException,
                         AutomationException
The size of dots used to fill.

Description

The size of the dots used for filling symbols. Decrease the DotSize for a less dense map, or increase for a more dense map. This value overrides the size values of all of the dot symbols set through ISymbolArray.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDotSize in interface IDotDensityFillSymbol
Returns:
The dotSize
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDotSize

public void setDotSize(double dotSize)
                throws IOException,
                       AutomationException
The size of dots used to fill.

Description

The size of the dots used for filling symbols. Decrease the DotSize for a less dense map, or increase for a more dense map. This value overrides the size values of all of the dot symbols set through ISymbolArray .

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setDotSize in interface IDotDensityFillSymbol
Parameters:
dotSize - The dotSize (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDotCount

public int getDotCount(int index)
                throws IOException,
                       AutomationException
The number of dots used to fill.

Product Availability

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

Specified by:
getDotCount in interface IDotDensityFillSymbol
Parameters:
index - The index (in)
Returns:
The dotCount
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDotCount

public void setDotCount(int index,
                        int dotCount)
                 throws IOException,
                        AutomationException
The number of dots used to fill.

Product Availability

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

Specified by:
setDotCount in interface IDotDensityFillSymbol
Parameters:
index - The index (in)
dotCount - The dotCount (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDotSpacing

public double getDotSpacing()
                     throws IOException,
                            AutomationException
The distance between dot centers, expressed as a percentage of dot size.

Description

DotSpacing is expressed as a percentage of dot size, where 100% means that dots can just touch and 0% means that dots can completely overlap. The default is 0%.

You can set a DotSpacing of greater than 100% to enforce a gap between dots.

Remarks

set_DotSpacing is currently not implemented .

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDotSpacing in interface IDotDensityFillSymbol
Returns:
The dotSpacing
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDotSpacing

public void setDotSpacing(double dotSpacing)
                   throws IOException,
                          AutomationException
The distance between dot centers, expressed as a percentage of dot size.

Description

DotSpacing is expressed as a percentage of dot size, where 100% means that dots can just touch and 0% means that dots can completely overlap. Default is 0%.

You can set a DotSpacing of greater than 100% to enforce a gap between dots.

Remarks

set_DotSpacing is currently not implemented.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setDotSpacing in interface IDotDensityFillSymbol
Parameters:
dotSpacing - The dotSpacing (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isFixedPlacement

public boolean isFixedPlacement()
                         throws IOException,
                                AutomationException
Indicates if the dots are always placed at the same location (the alternative is random placement).

Description

Specifies whether or not dots will be drawn at their same positions upon successive redraws. If True, then the dots will be fixed in place on successive redraws. If False, then dots will be placed randomly.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isFixedPlacement in interface IDotDensityFillSymbol
Returns:
The fixedPlacement
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFixedPlacement

public void setFixedPlacement(boolean fixedPlacement)
                       throws IOException,
                              AutomationException
Indicates if the dots are always placed at the same location (the alternative is random placement).

Description

Use this property to control whether dots are placed randomly upon successive redraws, or whether their location is fixed. If True, then dot location is fixed.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setFixedPlacement in interface IDotDensityFillSymbol
Parameters:
fixedPlacement - The fixedPlacement (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBackgroundColor

public IColor getBackgroundColor()
                          throws IOException,
                                 AutomationException
The background color.

Description

The color drawn behind the dots. A DotDensityFillSymbol has no true background fill symbol.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getBackgroundColor in interface IDotDensityFillSymbol
Returns:
A reference to a com.esri.arcgis.display.IColor
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setBackgroundColor

public void setBackgroundColor(IColor color)
                        throws IOException,
                               AutomationException
The background color.

Description

The color drawn behind the dots. A DotDensityFillSymbol has no true background fill symbol.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setBackgroundColor in interface IDotDensityFillSymbol
Parameters:
color - A reference to a com.esri.arcgis.display.IColor (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getColor

public IColor getColor()
                throws IOException,
                       AutomationException
Fill color.

Description

Color is the color for a FillSymbol object. Any IColor object can be used.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getColor in interface IFillSymbol
Returns:
A reference to a com.esri.arcgis.display.IColor
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setColor

public void setColor(IColor color)
              throws IOException,
                     AutomationException
Fill color.

Description

Color is the color for a FillSymbol object. Any IColor object can be used.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setColor in interface IFillSymbol
Parameters:
color - A reference to a com.esri.arcgis.display.IColor (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getOutline

public ILineSymbol getOutline()
                       throws IOException,
                              AutomationException
Line symbol of fill outline.

Description

Outline is the border for a FillSymbol object. Any ILineSymbol object can be used.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getOutline in interface IFillSymbol
Returns:
A reference to a com.esri.arcgis.display.ILineSymbol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setOutline

public void setOutline(ILineSymbol outlineSym)
                throws IOException,
                       AutomationException
Line symbol of fill outline.

Description

Outline is the border for a FillSymbol object. Any ILineSymbol object can be used.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setOutline in interface IFillSymbol
Parameters:
outlineSym - A reference to a com.esri.arcgis.display.ILineSymbol (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getRandomSeed

public Object getRandomSeed()
                     throws IOException,
                            AutomationException
Defines how the random generator is initialized to draw dots randomly.

Remarks

The random seed for dot generation a 32-bit unsigned integer value.

Specifies the random seed used for generation of placement position. If FixedPlacement is True, then the dots will be fixed in place on successive redraws based on the random seed, which will not be modified. If FixedPlacement is False, then dots will be placed randomly as the random seed will be updated each draw.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getRandomSeed in interface IDotDensityFillSymbol2
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRandomSeed

public void setRandomSeed(Object seed)
                   throws IOException,
                          AutomationException
Defines how the random generator is initialized to draw dots randomly.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setRandomSeed in interface IDotDensityFillSymbol2
Parameters:
seed - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMaskGeometryByRef

public void setMaskGeometryByRef(IGeometry geometry)
                          throws IOException,
                                 AutomationException
The geometry used for masking (can be a geometry collection).

Description

The geometry used for masking. This usually comes from IDotDensityRenderer.ControlLayer.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setMaskGeometryByRef in interface IDotDensityMasking
Parameters:
geometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaskGeometry

public IGeometry getMaskGeometry()
                          throws IOException,
                                 AutomationException
The geometry used for masking (can be a geometry collection).

Description

The geometry used for masking. This usually comes from IDotDensityRenderer.ControlLayer.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getMaskGeometry in interface IDotDensityMasking
Returns:
A reference to a com.esri.arcgis.geometry.IGeometry
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isUseMasking

public boolean isUseMasking()
                     throws IOException,
                            AutomationException
Indicates if masking is used.

Description

Specifies whether or not dot density masking is used. If True , then the MaskGeometry is used to control the placement of dots within polygon features of the rendered layer.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isUseMasking in interface IDotDensityMasking
Returns:
The useMasking
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseMasking

public void setUseMasking(boolean useMasking)
                   throws IOException,
                          AutomationException
Indicates if masking is used.

Description

P>Controls whether masking is used. If True, then the MaskGeometry is used to control the placement of dots.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setUseMasking in interface IDotDensityMasking
Parameters:
useMasking - The useMasking (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isExcludeMask

public boolean isExcludeMask()
                      throws IOException,
                             AutomationException
Indicates if the dots are to be excluded from the mask area.

Description

Specifies whether or not dots are only to be placed outside the polygons of the layer specified in IDotDensityRenderer::ControlLayer, or whether or not they are only to be placed inside these polygons.

Remarks

To turn dot density masking on or off set UseMasking.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isExcludeMask in interface IDotDensityMasking
Returns:
The excludeMask
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setExcludeMask

public void setExcludeMask(boolean excludeMask)
                    throws IOException,
                           AutomationException
Indicates if the dots are to be excluded from the mask area.

Description

If UseMasking is True, then this property controls whether dots are placed either inside or outside the features in the masking layer. If True, then dots are only placed outside the masked area.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setExcludeMask in interface IDotDensityMasking
Parameters:
excludeMask - The excludeMask (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSymbolCount

public int getSymbolCount()
                   throws IOException,
                          AutomationException
The number of symbols.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSymbolCount in interface ISymbolArray
Returns:
The count
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSymbol

public ISymbol getSymbol(int index)
                  throws IOException,
                         AutomationException
The symbol at the index position.

Product Availability

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

Specified by:
getSymbol in interface ISymbolArray
Parameters:
index - The index (in)
Returns:
A reference to a com.esri.arcgis.display.ISymbol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSymbolByRef

public void setSymbolByRef(int index,
                           ISymbol symbol)
                    throws IOException,
                           AutomationException
The symbol at the index position.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setSymbolByRef in interface ISymbolArray
Parameters:
index - The index (in)
symbol - A reference to a com.esri.arcgis.display.ISymbol (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addSymbol

public void addSymbol(ISymbol symbol)
               throws IOException,
                      AutomationException
Adds a symbol to the array.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
addSymbol in interface ISymbolArray
Parameters:
symbol - A reference to a com.esri.arcgis.display.ISymbol (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

deleteSymbol

public void deleteSymbol(ISymbol symbol)
                  throws IOException,
                         AutomationException
Delete the given symbol.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
deleteSymbol in interface ISymbolArray
Parameters:
symbol - A reference to a com.esri.arcgis.display.ISymbol (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

moveSymbol

public void moveSymbol(ISymbol symbol,
                       int toIndex)
                throws IOException,
                       AutomationException
Moves the given symbol to new index position.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
moveSymbol in interface ISymbolArray
Parameters:
symbol - A reference to a com.esri.arcgis.display.ISymbol (in)
toIndex - The toIndex (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

clearSymbols

public void clearSymbols()
                  throws IOException,
                         AutomationException
Removes all symbols from the array.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
clearSymbols in interface ISymbolArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMapLevel

public int getMapLevel()
                throws IOException,
                       AutomationException
Current map level for drawing multi-level symbols.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getMapLevel in interface IMapLevel
Returns:
The mapLevel
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMapLevel

public void setMapLevel(int mapLevel)
                 throws IOException,
                        AutomationException
Current map level for drawing multi-level symbols.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setMapLevel in interface IMapLevel
Parameters:
mapLevel - The mapLevel (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setupDC

public void setupDC(int hDC,
                    ITransformation transformation)
             throws IOException,
                    AutomationException
Prepares the DC for drawing the symbol.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setupDC in interface ISymbol
Parameters:
hDC - The hDC (A COM typedef) (in)
transformation - A reference to a com.esri.arcgis.geometry.ITransformation (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

resetDC

public void resetDC()
             throws IOException,
                    AutomationException
Restores DC to original state.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
resetDC in interface ISymbol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

draw

public void draw(IGeometry geometry)
          throws IOException,
                 AutomationException
Draws the specified shape.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
draw in interface ISymbol
Parameters:
geometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryBoundary

public void queryBoundary(int hDC,
                          ITransformation displayTransform,
                          IGeometry geometry,
                          IPolygon boundary)
                   throws IOException,
                          AutomationException
Fills an existing polygon with the boundary of the specified symbol.

Remarks

Valid input Geometries are as follows:

For MarkerSymbols, the Geometry must be an IPoint.

For Fill Symbols, the Geometry can be either an IPolygon or an IEnvelope.

For Line Symbols, the Geometry must be an IPolyline.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
queryBoundary in interface ISymbol
Parameters:
hDC - The hDC (A COM typedef) (in)
displayTransform - A reference to a com.esri.arcgis.geometry.ITransformation (in)
geometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
boundary - A reference to a com.esri.arcgis.geometry.IPolygon (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getROP2

public int getROP2()
            throws IOException,
                   AutomationException
Raster operation code for pixel drawing.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getROP2 in interface ISymbol
Returns:
A com.esri.arcgis.display.esriRasterOpCode constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setROP2

public void setROP2(int drawMode)
             throws IOException,
                    AutomationException
Raster operation code for pixel drawing.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setROP2 in interface ISymbol
Parameters:
drawMode - A com.esri.arcgis.display.esriRasterOpCode constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

applies

public boolean applies(Object pUnk)
                throws IOException,
                       AutomationException
Indicates if the receiver can apply the given object at any given time.

Remarks

Applies indicates whether the specified object can be applied to the current object. For instance, we might want to ask our CircleElement whether a Color object applies to it. If it does, then we can use the Apply method to update our CircleElement with the new Color object.

CanApply differs from Applies in that it is a check for the editability of the object at any given time. Applies indicates whether an object can be applied at all, while CanApply indicates whether an object can be applied at that particular moment.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
applies in interface IPropertySupport
Parameters:
pUnk - A reference to another Object (IUnknown) (in)
Returns:
The applies
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

canApply

public boolean canApply(Object pUnk)
                 throws IOException,
                        AutomationException
Indicates if the receiver can apply the given object at that particular moment.

Remarks

CanApply indicates whether the specified object can be applied to the current object. For instance, we might want to ask our CircleElement whether a Color object applies to it. If it does, then we can use the Apply method to update our CircleElement with the new Color object.

CanApply differs from Applies in that it is a check for the editability of the object at any given time. Applies indicates whether an object can be applied at all, while CanApply indicates whether an object can be applied at that particular moment.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
canApply in interface IPropertySupport
Parameters:
pUnk - A reference to another Object (IUnknown) (in)
Returns:
The canApply
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCurrent

public Object getCurrent(Object pUnk)
                  throws IOException,
                         AutomationException
The object currently being used.

Product Availability

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

Specified by:
getCurrent in interface IPropertySupport
Parameters:
pUnk - A reference to another Object (IUnknown) (in)
Returns:
A reference to another Object (IUnknown)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

apply

public Object apply(Object newObject)
             throws IOException,
                    AutomationException
Applies the given property to the receiver and returns the old object.

Remarks

Apply will apply the specified object to the current object. For instance, I might apply a Color object to my RectangleElement. When I execute Apply, the object I replace (the old object) is returned.

Use the Applies and CanApply methods to determine if an Apply can be used on an object.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
apply in interface IPropertySupport
Parameters:
newObject - A reference to another Object (IUnknown) (in)
Returns:
A reference to another Object (IUnknown)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isDirty

public void isDirty()
             throws IOException,
                    AutomationException
isDirty

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isDirty in interface IPersistStream
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

load

public void load(IStream pstm)
          throws IOException,
                 AutomationException
load

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
load in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

save

public void save(IStream pstm,
                 int fClearDirty)
          throws IOException,
                 AutomationException
save

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
save in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
fClearDirty - The fClearDirty (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSizeMax

public void getSizeMax(_ULARGE_INTEGER[] pcbSize)
                throws IOException,
                       AutomationException
getSizeMax

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSizeMax in interface IPersistStream
Parameters:
pcbSize - A Structure: com.esri.arcgis.system._ULARGE_INTEGER (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassID

public void getClassID(GUID[] pClassID)
                throws IOException,
                       AutomationException
getClassID

Description

IPersist is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getClassID in interface IPersist
Parameters:
pClassID - A Structure: com.esri.arcgis.support.ms.stdole.GUID (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

esri_clone

public IClone esri_clone()
                  throws IOException,
                         AutomationException
Clones the receiver and assigns the result to *clone.

Product Availability

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

Specified by:
esri_clone in interface IClone
Returns:
A reference to a com.esri.arcgis.system.IClone
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

assign

public void assign(IClone src)
            throws IOException,
                   AutomationException
Assigns the properties of src to the receiver.

Description

Use Assign method to assign the properties of source object to receiver object. Both objects need to have the same CLSIDs. Both source and receiver objects need to be instantiated.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
assign in interface IClone
Parameters:
src - A reference to a com.esri.arcgis.system.IClone (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isEqual

public boolean isEqual(IClone other)
                throws IOException,
                       AutomationException
Indicates if the receiver and other have the same properties.

Description

IsEqual returns True if the receiver and the source have the same properties. Note, this does not imply that the receiver and the source reference the same object.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isEqual in interface IClone
Parameters:
other - A reference to a com.esri.arcgis.system.IClone (in)
Returns:
The equal
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isIdentical

public boolean isIdentical(IClone other)
                    throws IOException,
                           AutomationException
Indicates if the receiver and other are the same object.

Description

IsIdentical returns true if the receiver and the source reference the same object.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isIdentical in interface IClone
Parameters:
other - A reference to a com.esri.arcgis.system.IClone (in)
Returns:
The identical
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Throws:
IOException

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Throws:
IOException
ClassNotFoundException