com.esri.arcgis.display
Class LineStroke

java.lang.Object
  extended by com.esri.arcgis.display.LineStroke
All Implemented Interfaces:
IDrawingOutline, IGraphicAttributes, IGraphicAttributes2, ILineStroke, com.esri.arcgis.interop.RemoteObjRef, IDocumentVersionSupportGEN, IPersist, IPersistStream, ISupportErrorInfo, Externalizable, Serializable

public class LineStroke
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, ILineStroke, IGraphicAttributes, IGraphicAttributes2, IDrawingOutline, IPersist, IPersistStream, ISupportErrorInfo, IDocumentVersionSupportGEN, Externalizable

A line stroke object.

Remarks

A line stroke is used to represent linear shapes using a BasicLineSymbol.

A linestroke has the following GraphicAttributes:

Product Availability

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

See Also:
Serialized Form

Constructor Summary
LineStroke()
          Constructs a LineStroke using ArcGIS Engine.
LineStroke(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
LineStroke theLineStroke = (LineStroke) obj;
 
Method Summary
 Object convertToSupportedObject(int docVersion)
          Convert the object to another object that is supported.
 void draw(IOutputContext context, IGeometry geometry, IEnvelope envelope)
          Draws the line stroke.
 boolean equals(Object o)
          Compare this object with another
 IGeometry getAllOutlineParts(IGeometry geometry, int type, int option, double buffer, IEnvelope clipEnvelope)
          Constructs the entire drawing outline of a drawing rule.
 String getCaption(int attrId)
          Caption of the graphic attribute.
 String getClassCaption(int geomType)
          Caption of the object containing the graphic attributes.
 void getClassID(GUID[] pClassID)
          getClassID
 String getClassName()
          Class name of the graphic attribute.
static String getClsid()
          getClsid.
 int getGraphicAttributeCount()
          Number of graphic attributes.
 int getID(int attrIndex)
          ID of graphic attributes.
 int getIDByName(String name)
          ID of the graphic attribute, given its name.
 String getName(int attrId)
          Name of the graphic attribute.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 IGraphicAttributeType getType(int attrId)
          Type of the graphic attribute.
 Object getValue(int attrId)
          Value of the graphic attribute.
 int hashCode()
          the hashcode for this object
 boolean hitTest(IGeometry geometry, IPoint point, double tolerance)
          Tests if a point is located on the drawing outline.
 void interfaceSupportsErrorInfo(GUID riid)
          interfaceSupportsErrorInfo
 void isDirty()
          isDirty
 boolean isSupportedAtVersion(int docVersion)
          Is this object valid at the given document version.
 void load(IStream pstm)
          load
 IGeometry nextOutlinePart()
          Retrieves the next part of the outline.
 void readExternal(ObjectInput in)
           
 void reset(IGeometry geometry, int type, int option, double buffer, IEnvelope clipEnvelope)
          Resets the outline part enumeration.
 void save(IStream pstm, int fClearDirty)
          save
 void setValue(int attrId, Object val)
          Value of the graphic attribute.
 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

LineStroke

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

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

LineStroke

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

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

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

draw

public void draw(IOutputContext context,
                 IGeometry geometry,
                 IEnvelope envelope)
          throws IOException,
                 AutomationException
Draws the line stroke.

Product Availability

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

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

getGraphicAttributeCount

public int getGraphicAttributeCount()
                             throws IOException,
                                    AutomationException
Number of graphic attributes.

Product Availability

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

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

getID

public int getID(int attrIndex)
          throws IOException,
                 AutomationException
ID of graphic attributes.

Product Availability

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

Specified by:
getID in interface IGraphicAttributes
Parameters:
attrIndex - The attrIndex (in)
Returns:
The attrId
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getName

public String getName(int attrId)
               throws IOException,
                      AutomationException
Name of the graphic attribute.

Product Availability

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

Specified by:
getName in interface IGraphicAttributes
Parameters:
attrId - The attrId (in)
Returns:
The name
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getType

public IGraphicAttributeType getType(int attrId)
                              throws IOException,
                                     AutomationException
Type of the graphic attribute.

Product Availability

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

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

getValue

public Object getValue(int attrId)
                throws IOException,
                       AutomationException
Value of the graphic attribute. To erase override, set value to NULL or to original value.

Product Availability

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

Specified by:
getValue in interface IGraphicAttributes
Parameters:
attrId - The attrId (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setValue

public void setValue(int attrId,
                     Object val)
              throws IOException,
                     AutomationException
Value of the graphic attribute. To erase override, set value to NULL or to original value.

Product Availability

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

Specified by:
setValue in interface IGraphicAttributes
Parameters:
attrId - The attrId (in)
val - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getIDByName

public int getIDByName(String name)
                throws IOException,
                       AutomationException
ID of the graphic attribute, given its name.

Product Availability

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

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

getClassName

public String getClassName()
                    throws IOException,
                           AutomationException
Class name of the graphic attribute.

Product Availability

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

Specified by:
getClassName in interface IGraphicAttributes
Returns:
The name
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCaption

public String getCaption(int attrId)
                  throws IOException,
                         AutomationException
Caption of the graphic attribute.

Product Availability

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

Specified by:
getCaption in interface IGraphicAttributes2
Parameters:
attrId - The attrId (in)
Returns:
The caption
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassCaption

public String getClassCaption(int geomType)
                       throws IOException,
                              AutomationException
Caption of the object containing the graphic attributes.

Product Availability

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

Specified by:
getClassCaption in interface IGraphicAttributes2
Parameters:
geomType - A com.esri.arcgis.geometry.esriGeometryType constant (in)
Returns:
The caption
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

hitTest

public boolean hitTest(IGeometry geometry,
                       IPoint point,
                       double tolerance)
                throws IOException,
                       AutomationException
Tests if a point is located on the drawing outline.

Product Availability

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

Specified by:
hitTest in interface IDrawingOutline
Parameters:
geometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
point - A reference to a com.esri.arcgis.geometry.IPoint (in)
tolerance - The tolerance (in)
Returns:
The hit
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAllOutlineParts

public IGeometry getAllOutlineParts(IGeometry geometry,
                                    int type,
                                    int option,
                                    double buffer,
                                    IEnvelope clipEnvelope)
                             throws IOException,
                                    AutomationException
Constructs the entire drawing outline of a drawing rule.

Product Availability

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

Specified by:
getAllOutlineParts in interface IDrawingOutline
Parameters:
geometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
type - A com.esri.arcgis.display.esriOutlineType constant (in)
option - A com.esri.arcgis.display.esriOutlineOption constant (in)
buffer - The buffer (in)
clipEnvelope - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
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.

reset

public void reset(IGeometry geometry,
                  int type,
                  int option,
                  double buffer,
                  IEnvelope clipEnvelope)
           throws IOException,
                  AutomationException
Resets the outline part enumeration.

Product Availability

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

Specified by:
reset in interface IDrawingOutline
Parameters:
geometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
type - A com.esri.arcgis.display.esriOutlineType constant (in)
option - A com.esri.arcgis.display.esriOutlineOption constant (in)
buffer - The buffer (in)
clipEnvelope - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

nextOutlinePart

public IGeometry nextOutlinePart()
                          throws IOException,
                                 AutomationException
Retrieves the next part of the outline.

Product Availability

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

Specified by:
nextOutlinePart in interface IDrawingOutline
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.

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.

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.

interfaceSupportsErrorInfo

public void interfaceSupportsErrorInfo(GUID riid)
                                throws IOException,
                                       AutomationException
interfaceSupportsErrorInfo

Description

Indicates whether the interface supports IErrorInfo.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
interfaceSupportsErrorInfo in interface ISupportErrorInfo
Parameters:
riid - A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isSupportedAtVersion

public boolean isSupportedAtVersion(int docVersion)
                             throws IOException,
                                    AutomationException
Is this object valid at the given document version.

Remarks

Use IsSupportedAtVersion to identify if a particular object should be saved to the ObjectStream. This result is based on the esriArcGISVersion enumeration. In some instances, if the object is not supported at a particular ArcGIS version, the object may support conversion to another similar object; use IDocumentVersionSupportGEN::ConvertToSupportedObject to accomplish this.

Product Availability

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

Specified by:
isSupportedAtVersion in interface IDocumentVersionSupportGEN
Parameters:
docVersion - A com.esri.arcgis.system.esriArcGISVersion constant (in)
Returns:
The supported
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

convertToSupportedObject

public Object convertToSupportedObject(int docVersion)
                                throws IOException,
                                       AutomationException
Convert the object to another object that is supported.

Remarks

This method should be used when IDocumentVersionSupportGEN::IsSupportedAtVersion returns FALSE. Calling ConvertToSupportedObject will return an IUnknown pointer to a relevant object supported at the particular ArcGIS version. Not all objects will return a supported object; in these cases a null pointer will be returned.

Product Availability

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

Specified by:
convertToSupportedObject in interface IDocumentVersionSupportGEN
Parameters:
docVersion - A com.esri.arcgis.system.esriArcGISVersion constant (in)
Returns:
A Variant
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