|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.esri.arcgis.geodatabase.Representation
public class Representation
A Feature Representation object.
A feature Representation is a feature enabled with representation capabilities. When a new RepresentationClass is created, every feature in the feature class can be represented as individual representation using representation rules and override information present in the attribute fields RuleIDField and OverrideField. Since a single feature class can be asociated with multiple representation classes, a single feature can be rendered differently depending on the current representation class for drawing.
A representation is associated with a single feature in a representation class just like a feature represents a single row within a feature class.
Use IRepresentationClass.GetRepresentation method to get representation of features with respect to different map contexts.
Representations can be displayed using information from any of the following options:
Use IRepresentation interface to manage the properties of a feature representation including creating or modifying its shape overrides.
Use IOverride interface to manage the attribute overrides present for a feature representation. This interface cannot be used to set new attribute overrides. For this purpose, use IRepresentation::Value property along with the correct set of GraphicAttributes and index of the attribute you wish to alter.
Constructor Summary | |
---|---|
Representation(Object obj)
Construct a Representation using a reference to such an object returned from ArcGIS Engine or Server. |
Method Summary | |
---|---|
boolean |
equals(Object o)
Compare this object with another |
IGeometry |
getAllOutlineParts(int type,
int option,
double buffer,
IEnvelope clipEnvelope)
Constructs the entire drawing outline of a graphics. |
IFeature |
getFeature()
The feature associated with this representation. |
IRepresentationGraphics |
getGraphics()
The Graphics object that describes the free representation. |
IMapContext |
getMapContext()
Map context in which the representation is defined. |
IRepresentationClass |
getRepresentationClass()
The representation class to which this representation belongs. |
int |
getRuleID()
Rule ID. |
IGeometry |
getShape()
Representation geometry. |
IGeometry |
getShapeCopy()
Copy of the representation geometry. |
IGeometry |
getShapeEdit()
Representation geometry. |
Object |
getValue(IGraphicAttributes attrs,
int idx)
The value of a representation property. |
int |
hashCode()
the hashcode for this object |
boolean |
hitTest(IPoint point,
double tolerance)
Tests if a point is located on the graphics outline. |
void |
interfaceSupportsErrorInfo(GUID riid)
interfaceSupportsErrorInfo |
boolean |
isHasAttributeOverride()
Indicates if a graphical attribute is overriden. |
boolean |
isHasShapeOverride()
Indicates if the shape is overriden. |
int |
isOverridenWithField(IGraphicAttributes attrs,
int idx)
Checks if the value of a graphical attribute comes from a feature field. |
IGeometry |
nextOutlinePart()
Hands back the next drawing outline part. |
void |
removeOverride(IGraphicAttributes attrs,
int idx)
Removes a given override from the blob. |
void |
removeOverrides()
Removes all attributes overrides from the representation. |
void |
removeShapeOverride()
Removes the shape override. |
void |
reset(int type,
int option,
double buffer,
IEnvelope clipEnvelope)
Resets the collection of drawing outline parts to the beginning, before calling NextOutlinePart. |
void |
setGraphics(IRepresentationGraphics graphics)
The Graphics object that describes the free representation. |
void |
setRuleID(int iD)
Rule ID. |
void |
setShapeByRef(IGeometry shape)
Representation geometry. |
void |
setValue(IGraphicAttributes attrs,
int idx,
Object val)
The value of a representation property. |
void |
updateFeature()
Updates the feature fields with the information contained in the representation. |
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 |
---|
public Representation(Object obj) throws IOException
obj
to Representation
. *
Representation o = (Representation)obj; // will not work
Representation o = new Representation(obj); // Use this constructor instead
* @param obj an object returned from ArcGIS Engine or Server
IOException
- if there are interop problems
Representation theRepresentation = (Representation) obj;
Method Detail |
---|
public boolean equals(Object o)
equals
in class Object
public int hashCode()
hashCode
in class Object
public IRepresentationClass getRepresentationClass() throws IOException, AutomationException
getRepresentationClass
in interface IRepresentation
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IFeature getFeature() throws IOException, AutomationException
getFeature
in interface IRepresentation
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IMapContext getMapContext() throws IOException, AutomationException
getMapContext
in interface IRepresentation
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getRuleID() throws IOException, AutomationException
Use RuleID property to change the representation rule for a feature representation. Setting this property to a different RuleID will not persist the change until UpdateFeature is called and the change for the feature is stored using IFeature::Store method.
If the RuleID does not exist in the collection of RepresentationRules object, then RuleID will return an esriRepresentationError (REP_E_INVALID_REP_RULE_ID).
getRuleID
in interface IRepresentation
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setRuleID(int iD) throws IOException, AutomationException
setRuleID
in interface IRepresentation
iD
- The iD (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGeometry getShape() throws IOException, AutomationException
Shape property returns a reference to either the actual shape of the feature or the overriden shape of the representation depending on whether a shape override exists for the representation.
Use Shape property to create shape override which gets stored into the Override field. UpdateFeature and IFeature::Store methods must be called after the shape is altered to persist the changes.
If IRepresentationClass::RequireShapeOverride returns False then altering the shape of the feature representation will directly alter the feature's shape.
Note: It is necessary to set IRepresentationClass::RequireShapeOverride property to True, if you wish to store the shape overrides into Override field rather than altering the actual feature's shape.
getShape
in interface IRepresentation
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGeometry getShapeEdit() throws IOException, AutomationException
ShapeEdit property returns a reference to the copy of either the shape of the feature or the overriden shape of the representation depending on whether a shape override exists for the representation. Use this property when you wish to edit the attributes of this object.
getShapeEdit
in interface IRepresentation
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGeometry getShapeCopy() throws IOException, AutomationException
ShapeCopy property returns a reference to the clone of either the shape of the feature or the overriden shape of the representation depending on whether a shape override exists for the representation. Use this property when you wish to edit the attributes of this object.
getShapeCopy
in interface IRepresentation
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setShapeByRef(IGeometry shape) throws IOException, AutomationException
setShapeByRef
in interface IRepresentation
shape
- A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isHasShapeOverride() throws IOException, AutomationException
HasShapeOverride property will return True if the feature representation's shape property is overridden. To remove shape override, use RemoveShapeOverride property.
For removing other attribute overrides, use either IOverride::RemoveOverride or IOverride::RemoveOverrides method.
isHasShapeOverride
in interface IRepresentation
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void removeShapeOverride() throws IOException, AutomationException
For removing other attribute overrides, use either IOverride::RemoveOverride or IOverride::RemoveOverrides method.
removeShapeOverride
in interface IRepresentation
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IRepresentationGraphics getGraphics() throws IOException, AutomationException
Use Graphics property to get or set a reference to the graphic object when representation is based on free representation. A free representation (Graphics) has a RepresentationRuleID value equal to -1. For all other representations, the RuleID value is a valid value and always greater than or equal to 1.
Graphics property will return an empty object when the representation is not based on free representation.
How to convert a feature representation into a free representation which uses Graphics for drawing:
getGraphics
in interface IRepresentation
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setGraphics(IRepresentationGraphics graphics) throws IOException, AutomationException
setGraphics
in interface IRepresentation
graphics
- A reference to a com.esri.arcgis.display.IRepresentationGraphics (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void updateFeature() throws IOException, AutomationException
UpdateFeature method must be called after a feature representation's attributes have been altered. In order to store and persist the changes into the feature, IFeature::Store method must be called.
updateFeature
in interface IRepresentation
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public Object getValue(IGraphicAttributes attrs, int idx) throws IOException, AutomationException
getValue
in interface IRepresentation
attrs
- A reference to a com.esri.arcgis.display.IGraphicAttributes (in)idx
- The idx (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setValue(IGraphicAttributes attrs, int idx, Object val) throws IOException, AutomationException
setValue
in interface IRepresentation
attrs
- A reference to a com.esri.arcgis.display.IGraphicAttributes (in)idx
- The idx (in)val
- A Variant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void removeOverride(IGraphicAttributes attrs, int idx) throws IOException, AutomationException
RemoveOverride method can be used to remove override present on a specific graphical attribute given its index. Shape overrides cannot be handled using this method. For removing shape override, use IRepresentation::RemoveShapeOverride method.
removeOverride
in interface IOverride
attrs
- A reference to a com.esri.arcgis.display.IGraphicAttributes (in)idx
- The idx (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int isOverridenWithField(IGraphicAttributes attrs, int idx) throws IOException, AutomationException
isOverridenWithField
in interface IOverride
attrs
- A reference to a com.esri.arcgis.display.IGraphicAttributes (in)idx
- The idx (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void removeOverrides() throws IOException, AutomationException
RemoveOverrides method can be used to remove all overrides (except shape overrides) present on a feature representation.
For removing shape override, use IRepresentation::RemoveShapeOverride method.
removeOverrides
in interface IOverride
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isHasAttributeOverride() throws IOException, AutomationException
HasAttributeOverride property will return True when a feature representation has attribute overrides. To get information on whether or not the representation has shape overrides, use IRepresentation::HasShapeOverride property.
isHasAttributeOverride
in interface IOverride
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean hitTest(IPoint point, double tolerance) throws IOException, AutomationException
hitTest
in interface IGraphicsOutline
point
- A reference to a com.esri.arcgis.geometry.IPoint (in)tolerance
- The tolerance (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGeometry getAllOutlineParts(int type, int option, double buffer, IEnvelope clipEnvelope) throws IOException, AutomationException
getAllOutlineParts
in interface IGraphicsOutline
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)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void reset(int type, int option, double buffer, IEnvelope clipEnvelope) throws IOException, AutomationException
reset
in interface IGraphicsOutline
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)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGeometry nextOutlinePart() throws IOException, AutomationException
nextOutlinePart
in interface IGraphicsOutline
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void interfaceSupportsErrorInfo(GUID riid) throws IOException, AutomationException
Indicates whether the interface supports IErrorInfo.
interfaceSupportsErrorInfo
in interface ISupportErrorInfo
riid
- A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |