com.esri.arcgis.editor
Class Editor

java.lang.Object
  extended by com.esri.arcgis.editor.Editor
All Implemented Interfaces:
IActiveViewEvents, IAttributeTransferType, IEditAnnotationProperties, IEditAttributeProperties, IEditLayers, IEditor, IEditor2, IEditor3, IEditorZ, IEditProperties, IEditProperties2, IEditProperties3, IEditProperties4, IEditSketch, IEditSketch2, IEditSketch3, IEditTaskSearch, ISnapEnvironment, ISnapEnvironment2, ISnapEnvironment3, com.esri.arcgis.interop.RemoteObjRef, IExtension, IExtensionAccelerators, IExtensionManager, IPersist, IPersistStream, ISupportErrorInfo, Externalizable, Serializable, EventListener

public class Editor
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IEditor, IEditor2, IEditor3, IEditSketch, IEditSketch2, IEditSketch3, IExtension, IActiveViewEvents, ISnapEnvironment, ISnapEnvironment2, ISnapEnvironment3, IEditLayers, IEditProperties, IEditProperties2, IEditProperties3, IEditProperties4, IAttributeTransferType, IExtensionManager, IExtensionAccelerators, IPersist, IPersistStream, ISupportErrorInfo, IEditAnnotationProperties, IEditAttributeProperties, IEditTaskSearch, IEditorZ, Externalizable

The Object Editor Extension.

Remarks

The Editor object represents the Editor extension to ArcMap - it is the main editing component and the focal point for all other objects in the Editor object model. Although the Editor object is not cocreateable, the Editor object is automatically created whenever a new ArcMap session starts; in fact, all ArcMap extension objects are automatically instantiated when ArcMap is first started.
The Editor object is used to provide a common editing environment for features stored in the ESRI vector geographic datasets: geodatabases, coverages, and shapefiles. Use the Editor object to: create edit operations, create and manage an edit sketch, set the current task, set the target layer, establish a snapping environment, and respond to editor events.
To get a reference to the Editor extension, use IApplication::FindExtensionByCLSID or IApplication::FindExtensionByName.
The Editor manages a collection of related objects including snap agents, edit tasks, and editor extension. References to these objects are provided by the various Editor members. For example, IEditor::Task provides a reference to a specific task given a index.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

See Also:
IWorkspaceEdit, ISpatialCacheManager, IWorkspaceEditEvents, Editor, IFeatureClass.createFeature(), Serialized Form

Field Summary
 
Fields inherited from interface com.esri.arcgis.system.IExtension
IID, IID7f657ec9_dbf1_11d2_9f2f_00c04f6bc69e, xxDummy
 
Constructor Summary
Editor(Object obj)
          Construct a Editor using a reference to such an object returned from ArcGIS Engine or Server.
 
Method Summary
 void abortOperation()
          Aborts an edit operation.
 void addIEditEvents2Listener(IEditEvents2 theListener)
          addIEditEvents2Listener.
 void addIEditEvents3Listener(IEditEvents3 theListener)
          addIEditEvents3Listener.
 void addIEditEvents4Listener(IEditEvents4 theListener)
          addIEditEvents4Listener.
 void addIEditEvents5Listener(IEditEvents5 theListener)
          addIEditEvents5Listener.
 void addIEditEventsListener(IEditEvents theListener)
          addIEditEventsListener.
 void addPoint(IPoint point, boolean allowUndo)
          Adds a point to the edit sketch.
 void addSnapAgent(ISnapAgent snapAgent)
          Adds a new snap agent to the snap environment.
 void addTemplates(IArray editTemplateArray)
          Adds the specified edit template.
 void afterDraw(IActiveViewEventsAfterDrawEvent theEvent)
          Fired after the specified phase is drawn.
 void afterItemDraw(IActiveViewEventsAfterItemDrawEvent theEvent)
          Fired after an individual view item is drawn.
 void applyZ(IPoint point)
          Applies editor's Z-capture logic to point if it isn't already z-aware.
 void clearSelectedVertices()
          Clears selected vertices.
 void clearSnapAgents()
          Removes all snap agents.
 void clearWYSIWYGSketchSymbol()
          Clears the WYSIWYG Sketch symbol and its properties.
 void contentsChanged(IActiveViewEventsContentsChangedEvent theEvent)
          Fired when the contents of the view changes.
 void contentsCleared(IActiveViewEventsContentsClearedEvent theEvent)
          Fired when the contents of the view is cleared.
 void createAccelerators()
          Called to create the keyboard accelerators for this extension.
 IGeometry createSearchShape(IPoint point)
          Creates a geometry using the point and the current search tolerance.
 void delayEvents(boolean delay)
          Used to batch operations together and minimize notifications.
 void drapeGeometry(IGeometry geometry, boolean addVertices, IGeometry[] outputGeometry)
          Drapes a geometry to the current surface..
 void enableUndoRedo(boolean enabled)
          Enable/disable the undo/redo capabilities.
 boolean equals(Object o)
          Compare this object with another
 void finalizeZs(IGeometry geometry)
          Resolves NaN Zs to definite values.
 IExtension findExtension(IUID extensionID)
          Finds the extension given an id.
 IExtension findExtension(Object nameOrID)
          Finds the extension by CLSID (IUID) or name (String).
 void finishSketch()
          Completes the current edit sketch.
 void finishSketchPart()
          Completes a part for the current edit sketch.
 void focusMapChanged(IActiveViewEventsFocusMapChangedEvent theEvent)
          Fired when a new map is made active.
 boolean fullPointSnap(IPoint point)
          Always attempts to snap the point using the current snap environment.
 IMarkerSymbol getActiveSelectedVertexSymbol()
          Symbol used to draw the selected active vertex of the edit sketch.
 IMarkerSymbol getActiveSketchVertexSymbol()
          Symbol used to draw the selected vertices of the edit sketch.
 double getAngularCorrectionOffset()
          Angular Correction Offset.
 int getAngularUnitPrecision()
          Precision used to display angular units.
 ISet getAttributeEditClasses()
          The list of applicable feature classes.
 IAttributeTransfer getAttributeTransfer()
          The current attribute type.
 IAnchorPoint getAuxiliarySelectionAnchor()
          The auxiliary selection anchor.
 void getClassID(GUID[] pClassID)
          getClassID
 IFeatureLayer getCurrentLayer()
          Indicates the editor's target layer which new features are added to.
 int getCurrentSubtype()
          The sub type for new features in the CurrentLayer.
 IEditTask getCurrentTask()
          The current edit task.
 IEditTemplate getCurrentTemplate()
          The current edit template.
 double getCurrentZ()
          Current Z value for the edit sketch.
 int getDirectionType()
          Direction Type.
 int getDirectionUnits()
          Direction Units.
 IScreenDisplay getDisplay()
          Reference to the current display.
 double getDistanceCorrectionFactor()
          Distance Correction Factor.
 IEnumFeature getEditSelection()
          The selected features which are editable.
 IEditSketchExtension getEditSketchExtension()
          The current edit sketch extension.
 int getEditState()
          The editor's current edit state.
 IWorkspace getEditWorkspace()
          Reference to the workspace being edited.
 IExtension getExtension(int index)
          The extension at the specified index.
 IUID getExtensionCLSID(int index)
          The CLSID of the extension at the specified index.
 int getExtensionCount()
          The number of extensions loaded in the application.
 IGeometry getGeometry()
          Geometry stored in the edit sketch.
 int getGeometryType()
          Type of the geometry stored in the edit sketch.
 IPoint getLastPoint()
          The last point in the edit sketch.
 ICallout getLeaderSymbol()
          Symbol used to draw a leader.
 IPoint getLocation()
          The last known location of the mouse.
 IMap getMap()
          Reference to the map being edited.
 int getMultiuserEditSessionMode()
          The multiuser session mode that is used when editing.
 ISymbol getMultiWordSelectionSymbol()
          Symbol used to draw selected words in multiword annotation.
 String getName()
          The name of the extension.
 INotifyZFinalize getNotifyZFinalize()
          Callback used to notify if ZCapture mode fails.
 IApplication getParent()
          Reference to the parent application.
 int getPart()
          The index of the current part of the sketch.
 int getReportPrecision()
          Controls the number of decimal places the editor reports numbers with.
 IWorkspace getScratchWorkspace()
          Reference to the editor's scratch workspace.
 int getSegment()
          The index of the current segment of the sketch.
 int getSelectedVertexCount()
          The number of selected vertices.
 IMarkerSymbol getSelectedVertexSymbol()
          Symbol used to draw the active vertex of the edit sketch.
 IAnchorPoint getSelectionAnchor()
          The selection anchor point.
 int getSelectionCount()
          The number of selected features which are editable.
 IShapeConstructor getShapeConstructor()
          The currently activated Shape Constructor.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 ILineSymbol getSketchSymbol()
          Symbol used to draw the lines of the edit sketch.
 IMarkerSymbol getSketchVertexSymbol()
          Symbol used to draw the vertices of the edit sketch.
 ISnapAgent getSnapAgent(int index)
          A snap agent at the given index.
 int getSnapAgentCount()
          The number of active snap agents.
 IMarkerSymbol getSnapSymbol()
          Symbol used to draw the snap location.
 double getSnapTolerance()
          The snap tolerance, measured in pixels or map units.
 int getSnapToleranceUnits()
          The units used for the snap tolerance.
 double getSnapZTolerance()
          The snap tolerance used for z-values, measured in map units.
 int getStickyMoveTolerance()
          Controls the sticky move tolerance.
 int getStreamGroupingCount()
          Controls the number of points to group together when streaming.
 double getStreamTolerance()
          Controls the streaming tolerance, measured in map units.
 IFunctionalSurface getSurface()
          Surface used for Z capture.
 IEditTask getTask(int index)
          An edit task by index.
 IEditTask getTaskByUniqueName(String uniqueName)
          An edit task by unique name.
 int getTaskCount()
          The number of edit tasks.
 IEditTemplate getTemplate(int index)
          The edit template for the specified index.
 int getTemplateCount()
          The number of edit templates.
 int getVertex()
          The index of the current vertex of the sketch.
 ISymbol getWYSIWYGSketchSymbol()
          The WYSIWYG symbol for the sketch.
 int getZCaptureType()
          Determines method used for z-capture.
 double getZDrapingTolerance()
          Determines the allowable error from the surface when draping.
 double getZOffset()
          Determines offset applied to z-value when new vertex is added to edit sketch.
 IMarkerSymbol getZSnapSymbol()
          Symbol used to indicate when vertex is snapped in Z.
 boolean hasEdits()
          Indicates whether edits have been made during the session.
 int hashCode()
          the hashcode for this object
 IFeatureConstruction initializeFeatureConstruction()
          Initialize a FeatureConstruction object that will use the Editor's ZEnvironment settings.
 void interfaceSupportsErrorInfo(GUID riid)
          interfaceSupportsErrorInfo
 void invertAgent(IPoint loc, int hdc)
          Draws the editor's snapping agent.
 boolean isAttributeEditAll()
          Indicates if the pre-populate attributes dialog is used for all layers or just the selected layers.
 boolean isAutoReconcileConflictsByAttribute()
          Indicates whether conflicts will be detected and resolved by attributes.
 boolean isAutoReconcileEditSessionWins()
          Indicates whether conflicts are resolved in favor of the edit session.
 boolean isAutoSaveChecksConflicts()
          Indicates whether the editor checks if conflicts were detected during auto reconciliation prior to automatically saving.
 boolean isAutoSaveOnVersionRedefined()
          Indicates whether the stop editing process should automatically reconcile an edit session and save the version without notification.
 boolean isAuxiliarySelectionAnchorEnabled()
          Indicates whether the selection anchor is drawn.
 boolean isClassicSnapping()
          Indicates whether the classic editing snapping will be used.
 void isDirty()
          isDirty
 boolean isDraping()
          Indicates whether sketches are draped onto the surface.
 boolean isEditable(IFeatureLayer layer)
          Determines if a specific feature layer is editable.
 boolean isMAware()
          Indicates if the edit sketch geometry will contain Ms.
 boolean isNonversionedAttributionEnabled()
          Indicates if the attribute query for newly created features is enabled.
 boolean isPartComplete()
          Indicates whether FinishPart has been called on the edit sketch.
 boolean isShowAnnoHandles()
          Indicates whether the edit annotation tool will show the resize and rotate handles.
 boolean isShowConstructionToolbars()
          Indicates whether construction toolbars will be displayed while drawing a sketch.
 boolean isSketchSymbolIsWYSIWYG()
          Indicates whether the sketch symbol is WYSIWYG.
 boolean isSketchSymbolRespectsRefScale()
          Indicates whether the sketch symbol should respect the map's reference scale.
 boolean isSnapTips()
          Indicates whether to show the snap tips.
 boolean isSnapToSketch()
          Indicates whether the sketch will be added to the snapping cache.
 boolean isStretchGeometry()
          Indicates if the edit sketch is stretched when one of its vertices is moved.
 boolean isUseFollowLineFeatureMode()
          Indicates whether the edit annotation tool will use follow feature mode when moving annotation related to lines.
 boolean isUseFollowPolygonFeatureMode()
          Indicates whether the edit annotation tool will use follow feature mode when moving annotation related to polygons.
 boolean isUseGroundToGrid()
          Indicates whether to use Ground to Grid.
 boolean isUseSnapZTolerance()
          Indicates whether the SnapZTolerance property is used when Z snapping.
 boolean isUseWYSIWYGSketchSymbol()
          Indicates whether the sketch is drawn with WYSIWYG symbology.
 boolean isUseZDrapingTolerance()
          Indicates whether the ZDrapingTolerance property is used when adding segments to the edit sketch.
 boolean isUseZOffset()
          Indicates whether new z-values are modified by the ZOffset property.
 boolean isVertexSelected(int part, int vertex)
          Is a vertex selected.
 boolean isZAware()
          Indicates if the edit sketch geometry will contain Zs.
 void itemAdded(IActiveViewEventsItemAddedEvent theEvent)
          Fired when an item is added to the view.
 void itemDeleted(IActiveViewEventsItemDeletedEvent theEvent)
          Fired when an item is deleted from the view.
 void itemReordered(IActiveViewEventsItemReorderedEvent theEvent)
          Fired when a view item is reordered.
 void load(IStream pstm)
          load
 void modifySketch()
          Call to notify listeners that the sketch has been changed.
 void readExternal(ObjectInput in)
           
 void redoOperation()
          Redo an edit operation.
 void refreshSketch()
          Invalidates the portion of the display that is occupied by the sketch.
 void removeAllTemplatesInLayer(ILayer layer)
          Removes all templates from the specified layer.
 void removeAllTemplatesInMap(IMap map)
          Removes all templates from the specified map.
 void removeIEditEvents2Listener(IEditEvents2 theListener)
          removeIEditEvents2Listener.
 void removeIEditEvents3Listener(IEditEvents3 theListener)
          removeIEditEvents3Listener.
 void removeIEditEvents4Listener(IEditEvents4 theListener)
          removeIEditEvents4Listener.
 void removeIEditEvents5Listener(IEditEvents5 theListener)
          removeIEditEvents5Listener.
 void removeIEditEventsListener(IEditEvents theListener)
          removeIEditEventsListener.
 void removeSnapAgent(int index)
          Removes the snap agent at the given index.
 void removeTemplate(IEditTemplate editTemplate)
          Removes the specified edit template.
 void resetAuxiliarySelectionAnchorLocation()
          Places the auxiliary selection anchor near the main anchor.
 void save(IStream pstm, int fClearDirty)
          save
 IEnumFeature searchSelection(IPoint point)
          Searches the edit selection using the given location.
 void selectionChanged(IActiveViewEventsSelectionChangedEvent theEvent)
          Call this function to fire the selection changed event.
 void selectVertex(int part, int vertex)
          Selects a vertex.
 void setActiveSelectedVertexSymbolByRef(IMarkerSymbol symbol)
          Symbol used to draw the selected active vertex of the edit sketch.
 void setActiveSketchVertexSymbolByRef(IMarkerSymbol symbol)
          Symbol used to draw the selected vertices of the edit sketch.
 void setAngularCorrectionOffset(double angOffset)
          Angular Correction Offset.
 void setAngularUnitPrecision(int auPrecision)
          Precision used to display angular units.
 void setAttributeEditAll(boolean pFlag)
          Indicates if the pre-populate attributes dialog is used for all layers or just the selected layers.
 void setAttributeEditClassesByRef(ISet ppClasses)
          The list of applicable feature classes.
 void setAttributeTransferType(String rhs1)
          The current attribute type.
 void setAutoReconcileConflictsByAttribute(boolean byatt)
          Indicates whether conflicts will be detected and resolved by attributes.
 void setAutoReconcileEditSessionWins(boolean editWins)
          Indicates whether conflicts are resolved in favor of the edit session.
 void setAutoSaveChecksConflicts(boolean checksConflicts)
          Indicates whether the editor checks if conflicts were detected during auto reconciliation prior to automatically saving.
 void setAutoSaveOnVersionRedefined(boolean stretch)
          Indicates whether the stop editing process should automatically reconcile an edit session and save the version without notification.
 void setAuxiliarySelectionAnchorEnabled(boolean auxSelAnchorEnabled)
          Indicates whether the selection anchor is drawn.
 void setClassicSnapping(boolean snap)
          Indicates whether the classic editing snapping will be used.
 void setCurrentLayer(IFeatureLayer layer, int subtype)
          The editor's target layer and subtype for new features.
 void setCurrentTaskByRef(IEditTask task)
          The current edit task.
 void setCurrentTemplateByRef(IEditTemplate editTemplate)
          The current edit template.
 void setCurrentZ(double z)
          Current Z value for the edit sketch.
 void setDirectionType(int dirType)
          Direction Type.
 void setDirectionUnits(int dirUnits)
          Direction Units.
 void setDistanceCorrectionFactor(double distFactor)
          Distance Correction Factor.
 void setDraping(boolean useDraping)
          Indicates whether sketches are draped onto the surface.
 void setEditSketchExtensionByRef(IEditSketchExtension extension)
          The current edit sketch extension.
 void setGeometryByRef(IGeometry geometry)
          Geometry stored in the edit sketch.
 void setGeometryType(int geomType)
          Type of the geometry stored in the edit sketch.
 void setLeaderSymbolByRef(ICallout callout)
          Symbol used to draw a leader.
 void setMAware(boolean aware)
          Indicates if the edit sketch geometry will contain Ms.
 void setMultiuserEditSessionMode(int esm)
          The multiuser session mode that is used when editing.
 void setMultiWordSelectionSymbolByRef(ISymbol symbol)
          Symbol used to draw selected words in multiword annotation.
 void setNonversionedAttributionEnabled(boolean pFlag)
          Indicates if the attribute query for newly created features is enabled.
 void setNotifyZFinalizeByRef(INotifyZFinalize callback)
          Callback used to notify if ZCapture mode fails.
 void setReportPrecision(int numDecs)
          Controls the number of decimal places the editor reports numbers with.
 void setSelectedVertexSymbolByRef(IMarkerSymbol symbol)
          Symbol used to draw the active vertex of the edit sketch.
 void setShapeConstructorByRef(IShapeConstructor shapeConstructor)
          The currently activated Shape Constructor.
 void setShowAnnoHandles(boolean flag)
          Indicates whether the edit annotation tool will show the resize and rotate handles.
 void setShowConstructionToolbars(boolean showConstructionToolbars)
          Indicates whether construction toolbars will be displayed while drawing a sketch.
 void setSketchSymbolByRef(ILineSymbol symbol)
          Symbol used to draw the lines of the edit sketch.
 void setSketchVertexSymbolByRef(IMarkerSymbol symbol)
          Symbol used to draw the vertices of the edit sketch.
 void setSnapSymbolByRef(IMarkerSymbol symbol)
          Symbol used to draw the snap location.
 void setSnapTips(boolean tips)
          Indicates whether to show the snap tips.
 void setSnapTolerance(double tol)
          The snap tolerance, measured in pixels or map units.
 void setSnapToleranceUnits(int units)
          The units used for the snap tolerance.
 void setSnapToSketch(boolean snap)
          Indicates whether the sketch will be added to the snapping cache.
 void setSnapZTolerance(double tolerance)
          The snap tolerance used for z-values, measured in map units.
 void setStickyMoveTolerance(int tol)
          Controls the sticky move tolerance.
 void setStreamGroupingCount(int tol)
          Controls the number of points to group together when streaming.
 void setStreamTolerance(double tol)
          Controls the streaming tolerance, measured in map units.
 void setStretchGeometry(boolean stretch)
          Indicates if the edit sketch is stretched when one of its vertices is moved.
 void setSurfaceByRef(IFunctionalSurface surface)
          Surface used for Z capture.
 void setUseFollowLineFeatureMode(boolean flag)
          Indicates whether the edit annotation tool will use follow feature mode when moving annotation related to lines.
 void setUseFollowPolygonFeatureMode(boolean flag)
          Indicates whether the edit annotation tool will use follow feature mode when moving annotation related to polygons.
 void setUseGroundToGrid(boolean g2g)
          Indicates whether to use Ground to Grid.
 void setUseSnapZTolerance(boolean useSnapZTolerance)
          Indicates whether the SnapZTolerance property is used when Z snapping.
 void setUseWYSIWYGSketchSymbol(boolean useWYSIWYGSketchSymbol)
          Indicates whether the sketch is drawn with WYSIWYG symbology.
 void setUseZDrapingTolerance(boolean useZDrapingTolerance)
          Indicates whether the ZDrapingTolerance property is used when adding segments to the edit sketch.
 void setUseZOffset(boolean useZOffset)
          Indicates whether new z-values are modified by the ZOffset property.
 void setWYSIWYGSketchSymbol(ISymbol symbol, boolean isWYSIWYG, boolean respectsRefScale)
          The WYSIWYG Sketch symbol and its properties.
 void setZAware(boolean aware)
          Indicates if the edit sketch geometry will contain Zs.
 void setZCaptureType(int zCaptureType)
          Determines method used for z-capture.
 void setZDrapingTolerance(double zDrapingTolerance)
          Determines the allowable error from the surface when draping.
 void setZOffset(double zOffset)
          Determines offset applied to z-value when new vertex is added to edit sketch.
 void setZSnapSymbolByRef(IMarkerSymbol symbol)
          Symbol used to indicate when vertex is snapped in Z.
 void shutdown()
          Shuts down the extension.
 boolean snapPoint(IPoint point)
          Attempts to snap the point using the current snap environment.
 boolean snapToIntersection(IPoint point, IGeometry pIntersection)
          Attempts to snap the specified point to the given intersection.
 void spatialReferenceChanged(IActiveViewEventsSpatialReferenceChangedEvent theEvent)
          Fired when the spatial reference is changed.
 void startEditing(IWorkspace workspace)
          Starts an edit session.
 void startOperation()
          Starts an edit operation.
 void startup(Object initializationData)
          Starts up the extension with the given initialization data.
 void stopEditing(boolean saveChanges)
          Stops an edit session.
 void stopOperation(String menuText)
          Stops an edit operation.
 void templateModified(IEditTemplate editTemplate)
          Broadcasts the change to the rest of the system.
 void undoOperation()
          Undo an edit operation.
 void unselectVertex(int part, int vertex)
          Unselects a vertex.
 void vertexAdded(IPoint point)
          Call to notify listeners that a sketch vertex has been added.
 void vertexDeleted(IPoint point)
          Call to notify listeners that a sketch vertex has been deleted.
 void vertexMoved(IPoint point)
          Call to notify listeners that a sketch vertex has been moved.
 void viewRefreshed(IActiveViewEventsViewRefreshedEvent theEvent)
          Fired when view is refreshed before draw happens.
 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

Editor

public Editor(Object obj)
       throws IOException
Construct a Editor using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to Editor.
Casting to this class from the return value of a method will not work, as this class represents an abstract class in ArcObjects.
*
Editor o = (Editor)obj; // will not work

Editor o = new Editor(obj); // Use this constructor instead
* @param obj an object returned from ArcGIS Engine or Server

Throws:
IOException - if there are interop problems Editor theEditor = (Editor) obj;
Method Detail

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

addIEditEventsListener

public void addIEditEventsListener(IEditEvents theListener)
                            throws IOException
addIEditEventsListener. Listen to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.editor.IEditEvents interface.
Throws:
IOException - If there are communications problems.

removeIEditEventsListener

public void removeIEditEventsListener(IEditEvents theListener)
                               throws IOException
removeIEditEventsListener. Stop listening to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.editor.IEditEvents interface.
Throws:
IOException - If there are communications problems.

addIEditEvents2Listener

public void addIEditEvents2Listener(IEditEvents2 theListener)
                             throws IOException
addIEditEvents2Listener. Listen to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.editor.IEditEvents2 interface.
Throws:
IOException - If there are communications problems.

removeIEditEvents2Listener

public void removeIEditEvents2Listener(IEditEvents2 theListener)
                                throws IOException
removeIEditEvents2Listener. Stop listening to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.editor.IEditEvents2 interface.
Throws:
IOException - If there are communications problems.

addIEditEvents3Listener

public void addIEditEvents3Listener(IEditEvents3 theListener)
                             throws IOException
addIEditEvents3Listener. Listen to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.editor.IEditEvents3 interface.
Throws:
IOException - If there are communications problems.

removeIEditEvents3Listener

public void removeIEditEvents3Listener(IEditEvents3 theListener)
                                throws IOException
removeIEditEvents3Listener. Stop listening to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.editor.IEditEvents3 interface.
Throws:
IOException - If there are communications problems.

addIEditEvents4Listener

public void addIEditEvents4Listener(IEditEvents4 theListener)
                             throws IOException
addIEditEvents4Listener. Listen to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.editor.IEditEvents4 interface.
Throws:
IOException - If there are communications problems.

removeIEditEvents4Listener

public void removeIEditEvents4Listener(IEditEvents4 theListener)
                                throws IOException
removeIEditEvents4Listener. Stop listening to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.editor.IEditEvents4 interface.
Throws:
IOException - If there are communications problems.

addIEditEvents5Listener

public void addIEditEvents5Listener(IEditEvents5 theListener)
                             throws IOException
addIEditEvents5Listener. Listen to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.editor.IEditEvents5 interface.
Throws:
IOException - If there are communications problems.

removeIEditEvents5Listener

public void removeIEditEvents5Listener(IEditEvents5 theListener)
                                throws IOException
removeIEditEvents5Listener. Stop listening to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.editor.IEditEvents5 interface.
Throws:
IOException - If there are communications problems.

getParent

public IApplication getParent()
                       throws IOException,
                              AutomationException
Reference to the parent application.

Description

Returns a reference to the application that created the editor.

Remarks

The Parent property provides a convenient way to get a reference to the application that created the Editor object. Edit tasks often use this property since they are only passed an IEditor reference and not an IApplication reference. For example, for an edit task to work with the Map's selection environment, the task will have to access properties belonging to IMXApplication .

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getParent in interface IEditor
Returns:
A reference to a com.esri.arcgis.framework.IApplication
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IApplication, IEditor.getEditState()

getEditState

public int getEditState()
                 throws IOException,
                        AutomationException
The editor's current edit state.

Description

The EditState property communicates the current state of the editor.

Remarks

EditState uses the esriEditState Constants enumeration to indicate the editor's current state. Valid states are:

esriStateNotEditing 0
esriStateEditing 1
esriStateEditingUnfocused 2


A good example of using this property is setting the Enabled property on ICommand .

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getEditState in interface IEditor
Returns:
A com.esri.arcgis.editor.esriEditState constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
esriEditState

getMap

public IMap getMap()
            throws IOException,
                   AutomationException
Reference to the map being edited.

Remarks

Multiple maps may be present within the application but only one may be edited at a time. When StartEditing is called, an edit session begins on the focus map. Users may change the focus map at any time; use this property to get a reference to the map being edited.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getMap in interface IEditor
Returns:
A reference to a com.esri.arcgis.carto.IMap
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IMap

getDisplay

public IScreenDisplay getDisplay()
                          throws IOException,
                                 AutomationException
Reference to the current display.

Remarks

Operations such as drawing and coordinate conversion require a display object. The Display property conveniently hands back the display object that should be used for all edit operations. Which display object does this property give back?

When working in the data view there are several display objects: the map itself has one and so do each of the magnifier windows. IScreenDisplay is a special type of display that dispatches draw requests to all of the display objects available. In data view, the editor hands back a reference to IAppDisplay because it expects that you want to draw in all of the available views. For example, the editor's tools draw the edit sketch using IAppDisplay so that it will appear on the map as well as in all the magnifier windows.

In layout view there are again several display objects. Each map has its own display object and so does the layout object itself. In this case, the editor hands back the display object associated with the current edit map. In this case, the editor expects that you only want to draw things in the current edit map.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getEditWorkspace

public IWorkspace getEditWorkspace()
                            throws IOException,
                                   AutomationException
Reference to the workspace being edited.

Remarks

The EditWorkspace property returns a reference to the workspace being edited, only one workspace is editable at a time. StartEditing sets this property as it has a required IWorkspace parameter. The following example shows one possible way to use the EditWorkspace property.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getScratchWorkspace

public IWorkspace getScratchWorkspace()
                               throws IOException,
                                      AutomationException
Reference to the editor's scratch workspace.

Remarks

During an edit session, the editor creates and manages a temporary workspace where it stores information about features. For example, when resolving conflicts in SDE, the editor uses this workspace to store conflicting features. Similarly, when editing shapefiles, the editor writes feature delta tables to this workspace.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

startEditing

public void startEditing(IWorkspace workspace)
                  throws IOException,
                         AutomationException
Starts an edit session.

Description


Remarks

Data from multiple workspaces may be loaded into a single map. However, the editor can only edit one workspace at a time. For this reason, when calling StartEditing, you must specify the workspace you wish to edit and this workspace must be represented in the focus map. If no feature layers from the workspace are present in the focus map, StartEditing will fail.

StartEditing may also fail if the data is read-only or if it is non versioned SDE data.

Any references to features, cursors, or other geodatabase classes that you intend to use in the edit session should be acquired inside the edit session.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
startEditing in interface IEditor
Parameters:
workspace - A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

stopEditing

public void stopEditing(boolean saveChanges)
                 throws IOException,
                        AutomationException
Stops an edit session.

Remarks

Call this function to complete an edit session. The required Boolean parameter controls whether modifications made to features will be saved or discarded. To save your changes, use TRUE ; to discard them, use FALSE . StopEditing also clears all snap agents and unselects all selected features.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

hasEdits

public boolean hasEdits()
                 throws IOException,
                        AutomationException
Indicates whether edits have been made during the session.

Remarks

This property reports whether or not any edits have been made in the current edit session. For example, if this property returns False, then StopEditing can be called and passed the False parameter automatically; you do not have to ask the user if they want to save their edits because you know there are none.

 If Not pEditor.HasEdits Then


pEditor.StopEditing False
Else
'
'Code to prompt for Save Changes (Yes/No)
'
End If

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

startOperation

public void startOperation()
                    throws IOException,
                           AutomationException
Starts an edit operation.

Remarks

StartOperation and StopOperation mark the beginning and end of an edit operation. Edit operations provide undo/redo capabilites for any action or set of actions (additions, deletions, or modifications) taken on features.
Calling StopOperation creates an edit operation that is added to the top of the operation stack. The operation stack is how ArcMap implements Undo and Redo. When using StartOperation, proper handling of errors, including the use of AbortOperation, is neccessary.

All edits to features that participate in a Topology or Geometric Network must be bracketed within an edit operation.

If you call StartOperation when an edit operation has already been started, you will get an error.

When To Use

Use this to access information about the StartOperation object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
startOperation in interface IEditor
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditor.stopOperation(String)

abortOperation

public void abortOperation()
                    throws IOException,
                           AutomationException
Aborts an edit operation.

Remarks

This should be used when you want to test if the results of your edit operation are valid before calling the StopOperation method. If the test you set up fails, you call AbortOperation instead of StopOperation. The changes made after StartOperation was called are undone, and nothing is added to the operation stack.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

stopOperation

public void stopOperation(String menuText)
                   throws IOException,
                          AutomationException
Stops an edit operation.

Remarks

StartOperation and StopOperation mark the beginning and end of an edit operation. Edit operations provide undo/redo capabilites for any action or set of actions (additions, deletions, or modifications) taken on features.
Calling StopOperation creates an edit operation that is added to the top of the operation stack. The operation stack is how ArcMap implements Undo and Redo. When using StopOperation, proper handling of errors, including the use of AbortOperation, is neccessary.

All edits to features that participate in a Topology or Geometric Network must be bracketed within an edit operation.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
stopOperation in interface IEditor
Parameters:
menuText - The menuText (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditor.startOperation()

undoOperation

public void undoOperation()
                   throws IOException,
                          AutomationException
Undo an edit operation.

Description

Rolls back all modifications made within an edit operation.

Remarks

Typically, UndoOperation and RedoOperation should be called within the context of an IOperation. Calling either of these directly, may corrupt the OperationStack. Instead, call Undo on IOperationStack to undo the last operation; this also moves the pointer down the stack, to the preceeding operation. UndoOperation is a shortcut to calling IWorkspaceEdit::UndoOperation on the current edit workspace.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

redoOperation

public void redoOperation()
                   throws IOException,
                          AutomationException
Redo an edit operation.

Remarks

Typically, UndoOperation and RedoOperation should be called within the context of an IOperation. Calling either of these directly, may corrupt the OperationStack. Instead, call Undo on IOperationStack to undo the last operation; this also moves the pointer down the stack, to the preceeding operation. RedoOperation is a shortcut to calling IWorkspaceEdit::RedoOperation on the current edit workspace.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

enableUndoRedo

public void enableUndoRedo(boolean enabled)
                    throws IOException,
                           AutomationException
Enable/disable the undo/redo capabilities.

Remarks

Use EnableUndoRedo to control whether edits to features can be rolled back. Edits made programmatically must be done within an edit operation in order to roll back an operation. If EnableUndoRedo is False then any changes are committed. To discard those edits the current edit session must be stopped and edits not saved. This method is a shortcut to calling IWorkspaceEdit::EnableUndoRedo on the current edit workspace.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

delayEvents

public void delayEvents(boolean delay)
                 throws IOException,
                        AutomationException
Used to batch operations together and minimize notifications.

Remarks

Use DelayEvents to control whether or not the editor triggers event notifications for each change in the editor's selection. For example, instead of the editor calling IEditEvents::OnSelectionChanged every time you select a feature, you may want the editor to only fire this event once--when the entire selection process is complete.
DelayEvents only affects OnSelectionChanged; all other events fire at the appropriate time.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getEditSelection

public IEnumFeature getEditSelection()
                              throws IOException,
                                     AutomationException
The selected features which are editable.

Description

public void GetMapSelection()
{
//Get a reference to IApplication app in ICommand::OnCreate hook parameter.
IEditor sEditor = app.FindExtensionByName("ESRI Object Editor") as IEditor;
IEnumFeature enumFeature = sEditor.EditSelection;
enumFeature.Reset();
IFeature selFeature = enumFeature.Next();
for (int fCount = 0; fCount < sEditor.SelectionCount; fCount++)
{
IGeometry selGeometry = selFeature.Shape;
'Put code here to do something with the geometry
System.Windows.Forms.MessageBox.Show(selGeometry.GeometryType);
selFeature = enumFeature.Next;
}
}

Remarks

This property returns all of the currently selected features that belong to editable layers. Use this property when creating an editing tool or command that works with the current selection.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getSelectionCount

public int getSelectionCount()
                      throws IOException,
                             AutomationException
The number of selected features which are editable.

Remarks

This property returns the Map's total number of selected features belonging to editable layers.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSelectionCount in interface IEditor
Returns:
The selection
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findExtension

public IExtension findExtension(IUID extensionID)
                         throws IOException,
                                AutomationException
Finds the extension given an id.

Remarks

The FindExtension function provides a hook to the editor's extension objects. All of the extension objects are automatically created/instantiated when the Editor CoClass is created; use FindExtension to get a reference to them.

For example, the AttributeWindow Class is an editor extension. To get a reference to the IAttributeWindow interface use the FindExtension function passing in the GUID of the AttributeWindow Class.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
findExtension in interface IEditor
Parameters:
extensionID - A reference to a com.esri.arcgis.system.IUID (in)
Returns:
A reference to a com.esri.arcgis.system.IExtension
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTaskCount

public int getTaskCount()
                 throws IOException,
                        AutomationException
The number of edit tasks.

Remarks

This property returns the number of tasks the editor currently has loaded. When changing the current task programmatically, use TaskCount with Task and IEditTask::Name to loop through all available tasks and find the correct one. Or alternatively you can use the edit task's unique name and IEditTaskSearch::TaskByUniqueName to find the desired edit task.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getTaskCount in interface IEditor
Returns:
The count
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditor.getTask(int), IEditor.getCurrentTask(), IEditTask.activate(com.esri.arcgis.editor.IEditor, com.esri.arcgis.editor.IEditTask), IEditor.setCurrentTaskByRef(com.esri.arcgis.editor.IEditTask), IEditTask.deactivate(), IEditTask.onFinishSketch(), IEditTask.onDeleteSketch(), IEditTask.getName()

getTask

public IEditTask getTask(int index)
                  throws IOException,
                         AutomationException
An edit task by index.

Product Availability

Available with ArcGIS Desktop.

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

setCurrentTaskByRef

public void setCurrentTaskByRef(IEditTask task)
                         throws IOException,
                                AutomationException
The current edit task.

Remarks

Use this property to check or change the editor's current task. After an edit sketch is completed, the current task uses the geometry stored in IEditSketch to perform some action. IEditEvents::OnCurrentTaskChanged is called whenever the editor's current task is changed.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
setCurrentTaskByRef in interface IEditor
Parameters:
task - A reference to a com.esri.arcgis.editor.IEditTask (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditor.getTask(int), IEditTask.activate(com.esri.arcgis.editor.IEditor, com.esri.arcgis.editor.IEditTask), IEditTask.deactivate(), IEditTask.onFinishSketch(), IEditTask.onDeleteSketch(), IEditTask.getName(), IEditor.getTaskCount()

getCurrentTask

public IEditTask getCurrentTask()
                         throws IOException,
                                AutomationException
The current edit task.

Remarks

Use this property to check or change the editor's current task. After an edit sketch is completed, the current task uses the geometry stored in IEditSketch to perform some action. IEditEvents::OnCurrentTaskChanged is called whenever the editor's current task is changed.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getCurrentTask in interface IEditor
Returns:
A reference to a com.esri.arcgis.editor.IEditTask
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditor.getTask(int), IEditTask.activate(com.esri.arcgis.editor.IEditor, com.esri.arcgis.editor.IEditTask), IEditTask.deactivate(), IEditTask.onFinishSketch(), IEditTask.onDeleteSketch(), IEditTask.getName(), IEditor.getTaskCount()

createSearchShape

public IGeometry createSearchShape(IPoint point)
                            throws IOException,
                                   AutomationException
Creates a geometry using the point and the current search tolerance.

Remarks

CreateSearchShape is a convenient function that helps you select features that fall near a specific point. This function creates a small geometry around the required point parameter that can then be used by a spatial filter to select features. The size of the geometry created around the point is controlled by the focus map's search tolerance (IMxDocument::SearchTolerancePixels).
The returned IGeometry reference is to a new Envelope object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
createSearchShape in interface IEditor
Parameters:
point - A reference to a com.esri.arcgis.geometry.IPoint (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.

searchSelection

public IEnumFeature searchSelection(IPoint point)
                             throws IOException,
                                    AutomationException
Searches the edit selection using the given location.

Remarks

SearchSelection is a convenient method that creates a sub-selection of the Map's currently selected features. The sub-selection contains only features that are within close proximity to the input point location. Use SearchSelection when you have a large selection (≥ 25 features) and you want to search for a selected feature that is near a specific point location. For example, use this method when checking if the mouse is positioned over a selected feature. It is considerably quicker to interrogate only features that are near the cursor than to look at all selected features in the Map. Note: with small Map selections (< 25 features), the reverse is true; there is no need to call SearchSelection to reduce the selection as it is already small and likely cached in memory.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
searchSelection in interface IEditor
Parameters:
point - A reference to a com.esri.arcgis.geometry.IPoint (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IEnumFeature
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

invertAgent

public void invertAgent(IPoint loc,
                        int hdc)
                 throws IOException,
                        AutomationException
Draws the editor's snapping agent.

Remarks

Call InvertAgent to draw the editor's agent at the location specified by the required point parameter. A device handle is also required. The agent is typically used to display the mouse location or a location based on a constraint when adding points to an edit sketch. Call InvertAgent a second time with the same point parameter to draw over and erase the previous agent.

You can change the editor's snap agent symbol using IEditProperties::SnapSymbol .

When To Use



Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
invertAgent in interface IEditor
Parameters:
loc - A reference to a com.esri.arcgis.geometry.IPoint (in)
hdc - The hdc (A COM typedef) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditProperties.getSnapSymbol()

getSelectionAnchor

public IAnchorPoint getSelectionAnchor()
                                throws IOException,
                                       AutomationException
The selection anchor point.

Remarks

Editing tools that require the location of the selection anchor can conveniently get it from the SelectionAnchor property. For example, the editor's Rotate Tool rotates features around the selection anchor.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSelectionAnchor in interface IEditor
Returns:
A reference to a com.esri.arcgis.display.IAnchorPoint
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditor2.getAuxiliarySelectionAnchor()

getLocation

public IPoint getLocation()
                   throws IOException,
                          AutomationException
The last known location of the mouse.

Remarks

This property is set when you right-click on the edit sketch. Once a point has been stored in this property, it remains there until the next time you right-click on the edit sketch.

Use this property when creating custom commands in the sketch context menu that require a point location to perform some operation. For example, the 'Insert Vertex' command use the location property to determine where to add the new vertex.

If you need the location of the sketch tool for a command in the sketch tool context menu, use the ISketchTool::Location property.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getLocation in interface IEditor
Returns:
A reference to a com.esri.arcgis.geometry.IPoint
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
ISketchTool, esriSketchConstraint

getAuxiliarySelectionAnchor

public IAnchorPoint getAuxiliarySelectionAnchor()
                                         throws IOException,
                                                AutomationException
The auxiliary selection anchor.

Remarks

The AuxiliarySelectionAnchor is a second selection anchor that can be used in tandem with the Editor's SelectionAnchor. The AuxiliarySelectionAnchor is represented as a small '+' sign on the display.

In some cases you may want to rotate features around the Editor's selection anchor and snap them to other feature geometries. Like the SelectionAnchor, the AuxiliarySelectionAnchor honors any active snap agents.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isAuxiliarySelectionAnchorEnabled

public boolean isAuxiliarySelectionAnchorEnabled()
                                          throws IOException,
                                                 AutomationException
Indicates whether the selection anchor is drawn.

Remarks

The auxiliary selection anchor can be displayed at any point; however, it can only be used while using the Editor's Scale or Rotate tools.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isAuxiliarySelectionAnchorEnabled in interface IEditor2
Returns:
The auxSelAnchorEnabled
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAuxiliarySelectionAnchorEnabled

public void setAuxiliarySelectionAnchorEnabled(boolean auxSelAnchorEnabled)
                                        throws IOException,
                                               AutomationException
Indicates whether the selection anchor is drawn.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

resetAuxiliarySelectionAnchorLocation

public void resetAuxiliarySelectionAnchorLocation()
                                           throws IOException,
                                                  AutomationException
Places the auxiliary selection anchor near the main anchor.

Remarks

Resets the auxiliary selection anchor to the default location. The anchor location is also reset whenever the feature selection changes.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getTemplateCount

public int getTemplateCount()
                     throws IOException,
                            AutomationException
The number of edit templates.

Remarks

This method returns the total number of templates for all layers within the current edit workspace. The returned value will be 0 if you are not in an edit session. To examine templates for layers outside an edit session refer to IEditTemplateManager in the Carto assembly.

Product Availability

Available with ArcGIS Desktop.

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

getTemplate

public IEditTemplate getTemplate(int index)
                          throws IOException,
                                 AutomationException
The edit template for the specified index.

Product Availability

Available with ArcGIS Desktop.

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

addTemplates

public void addTemplates(IArray editTemplateArray)
                  throws IOException,
                         AutomationException
Adds the specified edit template. The template was created with the EditTemplateFactory.

Product Availability

Available with ArcGIS Desktop.

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

removeTemplate

public void removeTemplate(IEditTemplate editTemplate)
                    throws IOException,
                           AutomationException
Removes the specified edit template.

Product Availability

Available with ArcGIS Desktop.

Specified by:
removeTemplate in interface IEditor3
Parameters:
editTemplate - A reference to a com.esri.arcgis.carto.IEditTemplate (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeAllTemplatesInLayer

public void removeAllTemplatesInLayer(ILayer layer)
                               throws IOException,
                                      AutomationException
Removes all templates from the specified layer.

Product Availability

Available with ArcGIS Desktop.

Specified by:
removeAllTemplatesInLayer in interface IEditor3
Parameters:
layer - A reference to a com.esri.arcgis.carto.ILayer (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeAllTemplatesInMap

public void removeAllTemplatesInMap(IMap map)
                             throws IOException,
                                    AutomationException
Removes all templates from the specified map.

Product Availability

Available with ArcGIS Desktop.

Specified by:
removeAllTemplatesInMap in interface IEditor3
Parameters:
map - A reference to a com.esri.arcgis.carto.IMap (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCurrentTemplate

public IEditTemplate getCurrentTemplate()
                                 throws IOException,
                                        AutomationException
The current edit template.

Product Availability

Available with ArcGIS Desktop.

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

setCurrentTemplateByRef

public void setCurrentTemplateByRef(IEditTemplate editTemplate)
                             throws IOException,
                                    AutomationException
The current edit template.

Product Availability

Available with ArcGIS Desktop.

Specified by:
setCurrentTemplateByRef in interface IEditor3
Parameters:
editTemplate - A reference to a com.esri.arcgis.carto.IEditTemplate (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

templateModified

public void templateModified(IEditTemplate editTemplate)
                      throws IOException,
                             AutomationException
Broadcasts the change to the rest of the system.

Product Availability

Available with ArcGIS Desktop.

Specified by:
templateModified in interface IEditor3
Parameters:
editTemplate - A reference to a com.esri.arcgis.carto.IEditTemplate (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPart

public int getPart()
            throws IOException,
                   AutomationException
The index of the current part of the sketch.

Remarks

You must right-click on the desired part of the edit sketch to set this property correctly. The wrong part index will be returned if you do not right-click on the desired part beforehand. For example, if an edit sketch has two parts, Part will always return a 0 (all sketches have at least one part) until you right click on the second part.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getPart in interface IEditSketch
Returns:
The part
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditSketch.getSegment(), IEditSketch.getVertex()

getSegment

public int getSegment()
               throws IOException,
                      AutomationException
The index of the current segment of the sketch.

Remarks

You must right-click on the desired segment in the edit sketch to set this property correctly. The wrong segment index will be returned if you do not right-click on the desired segment beforehand. A value of -1 indicates no segment has been selected. For example, if your last right-click was on an edit sketch vertex, the Segment property will return a value of -1.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSegment in interface IEditSketch
Returns:
The segment
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditSketch.getVertex(), IEditSketch.getPart()

getVertex

public int getVertex()
              throws IOException,
                     AutomationException
The index of the current vertex of the sketch.

Remarks

You must right-click on the desired vertex in the edit sketch to set this property correctly. The wrong vertex index will be returned if you do not right-click on the desired vertex beforehand. A value of -1 means no vertex has been selected. For example, if your last right-click was on a segment in the edit sketch, the Vertex property will be set to -1.

Use Part, Segment and Vertex when creating custom commands for the sketch context menu. For example, to delete a vertex in the edit sketch, right-click on the vertex to retrieve its index and call IPointCollection::RemovePoints .

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getVertex in interface IEditSketch
Returns:
The vertex
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditSketch.getSegment(), IEditSketch.getPart()

getGeometryType

public int getGeometryType()
                    throws IOException,
                           AutomationException
Type of the geometry stored in the edit sketch.

Remarks

Use this property in conjunction with the Geometry property to manage the geometry inside the edit sketch. Valid geometry types are: esriGeometryPoint , esriGeometryPolygon , esriGeometryPolyline and esriGeometryNull . Setting GeometryType automatically initializes the Geometry property and vice versa. For example, if you set the GeometryType to esriGeometryPolygon, a new empty Polygon object will b e created.

When To Use

Use this property to control actions on the edit sketch based on geometry type. For example, you may have code that draws a rubberband between the current mouse location and the edit sketch's last point if the geometry type is not point.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getGeometryType in interface IEditSketch
Returns:
A com.esri.arcgis.geometry.esriGeometryType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setGeometryType

public void setGeometryType(int geomType)
                     throws IOException,
                            AutomationException
Type of the geometry stored in the edit sketch.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getGeometry

public IGeometry getGeometry()
                      throws IOException,
                             AutomationException
Geometry stored in the edit sketch.

Remarks

This property sets the geometry the editor works with, ultimately passing it to the current task. By default, the editor creates a new empty geometry for you, and it does this any time you change the editor's current layer (IEditLayers::SetCurrentLayer ), reset the GeometryType property, or complete a task with a previous geometry. Because of this behavior, there is generally no need to set the Geometry property when you are building new geometries from scratch. Do set the Geometry property when you want to bring an existing feature into the edit sketch.

Valid geometry types are: esriGeometryPoint , esriGeometryMultipoint, esriGeometryPolyline and esriGeometryPolygon .

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getGeometry in interface IEditSketch
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.

setGeometryByRef

public void setGeometryByRef(IGeometry geometry)
                      throws IOException,
                             AutomationException
Geometry stored in the edit sketch.

Description

This property sets the geometry an EditSketch holds and works with. When working with the Editor object created and managed by MapStudio, the EditSketch by default hold s a new empty geometry (Mulitpoint , Polyline or Polygon) determined by CurrentLayer. Use the empty geometry when building new geometries; for example, when adding a new parcel to a parcels layer. To modify an existing feature, do not use the default geometry; instead, set Geometry to the desired feature and this will bring it into the EditSketch. Note: manually setting Geometry also sets GeometryType accordingly and vice versa. Each Task performs a different action involving the geometry when FinishSketch is called.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
setGeometryByRef in interface IEditSketch
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.

addPoint

public void addPoint(IPoint point,
                     boolean allowUndo)
              throws IOException,
                     AutomationException
Adds a point to the edit sketch. If allowUndo is true, a new operation will be created.

Remarks

Use the AddPoint method to build the geometry held in the edit sketch. The required point parameter specifies the location of the next point in the sketch. In all cases, new segments are added linking the edit sketch to the provided point, except where the geometry type is set to Point or the point represents the very first point in the edit sketch.


In the above illustration, a new segment is added to a Polyline using the AddPoint method.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
addPoint in interface IEditSketch
Parameters:
point - A reference to a com.esri.arcgis.geometry.IPoint (in)
allowUndo - The allowUndo (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

refreshSketch

public void refreshSketch()
                   throws IOException,
                          AutomationException
Invalidates the portion of the display that is occupied by the sketch.

Description

Refreshes only the portion of the screen falling within the edit sketch's slightly expanded envelope (IGeometry::Envelope).

Remarks

Sometimes it may be necessary to invalidate a larger portion of the display in order to get rid of unwanted artifacts. This situation can arise when you shorten the length of a segment for example. Since the new geometry is shorter and calling RefreshSketch only refreshes the area within the envelope of the geometry, old data may still be erroneously displayed outside of this boundary. See the documentation for the InvalidArea object for more details.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

finishSketch

public void finishSketch()
                  throws IOException,
                         AutomationException
Completes the current edit sketch.

Remarks

This function completes the edit sketch by notifying the editor's current task of this event. FinishSketch also calls RefreshSketch and IEditEvents::OnSketchFinished .

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

finishSketchPart

public void finishSketchPart()
                      throws IOException,
                             AutomationException
Completes a part for the current edit sketch.

Remarks

Call this function to create multi-part geometries.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getLastPoint

public IPoint getLastPoint()
                    throws IOException,
                           AutomationException
The last point in the edit sketch.

Remarks

Use this property to retrieve the last point in the edit sketch.

When To Use

The last point is often used as an anchor when drawing a rubber-band (line) between the EditSketch and the current mouse location.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

modifySketch

public void modifySketch()
                  throws IOException,
                         AutomationException
Call to notify listeners that the sketch has been changed.

Remarks

Generates an event signaling that the EditSketch has been modified. Listen for this event using IEditEvents::OnSketchModified .

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isZAware

public boolean isZAware()
                 throws IOException,
                        AutomationException
Indicates if the edit sketch geometry will contain Zs.

Remarks

If the EditSketch geometry contains elevation (z) values, the ZAware property will return a boolean value of True.

To view the z values for the edit sketch right click over a sketch segment and display the edit sketch properties dialog. If the sketch is ZAware, an additional column will appear next to the y column showing the z values.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isZAware in interface IEditSketch2
Returns:
The aware
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setZAware

public void setZAware(boolean aware)
               throws IOException,
                      AutomationException
Indicates if the edit sketch geometry will contain Zs.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getCurrentZ

public double getCurrentZ()
                   throws IOException,
                          AutomationException
Current Z value for the edit sketch.

Remarks

The CurrentZ property returns or sets the Z value that is applied to all points added to the sketch.

To view the z values for the edit sketch right click over a sketch segment and display the properties dialog. If the sketch is ZAware, an additional column will appear next to the y column showing the z values.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getCurrentZ in interface IEditSketch2
Returns:
The z
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setCurrentZ

public void setCurrentZ(double z)
                 throws IOException,
                        AutomationException
Current Z value for the edit sketch.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

setEditSketchExtensionByRef

public void setEditSketchExtensionByRef(IEditSketchExtension extension)
                                 throws IOException,
                                        AutomationException
The current edit sketch extension.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
setEditSketchExtensionByRef in interface IEditSketch2
Parameters:
extension - A reference to a com.esri.arcgis.editor.IEditSketchExtension (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getEditSketchExtension

public IEditSketchExtension getEditSketchExtension()
                                            throws IOException,
                                                   AutomationException
The current edit sketch extension.

Remarks

Returns the current edit sketch extension. Dimensions and Geodatabase annotation features utilize edit sketch extensions when creating and modifying their geometry.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

vertexAdded

public void vertexAdded(IPoint point)
                 throws IOException,
                        AutomationException
Call to notify listeners that a sketch vertex has been added.

Remarks

When IEditSketch2::VertexAdded is called, all clients listening to IEditEvents2::OnVertexAdded are notified. This may be used to ensure the maximum number of points in a particular sketch is not exceeded.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

vertexDeleted

public void vertexDeleted(IPoint point)
                   throws IOException,
                          AutomationException
Call to notify listeners that a sketch vertex has been deleted.

Remarks

When IEditSketch2::VertexDeleted is called, all clients listening to IEditEvents2::OnVertexDeleted are notified. This may be used to ensure the minimum number of points in a particular sketch is not exceeded.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

vertexMoved

public void vertexMoved(IPoint point)
                 throws IOException,
                        AutomationException
Call to notify listeners that a sketch vertex has been moved.

Remarks

When IEditSketch2::VertexMoved is called, all clients listening to IEditEvents2::OnVertexMoved are notified.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isMAware

public boolean isMAware()
                 throws IOException,
                        AutomationException
Indicates if the edit sketch geometry will contain Ms.

Remarks

If the EditSketch geometry contains measures (Ms), the MAware property will return a boolean value of True.

To view the m values for the edit sketch right click over a sketch segment and display the properties dialog. If the sketch is MAware, an additional column will appear to the right showing the m values.

If the edit sketch is m-aware, all newly inserted vertices will have a value of NaN. Inserting an m-aware sketch into a feature that is not m-aware will return an error.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isMAware in interface IEditSketch2
Returns:
The aware
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMAware

public void setMAware(boolean aware)
               throws IOException,
                      AutomationException
Indicates if the edit sketch geometry will contain Ms.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isPartComplete

public boolean isPartComplete()
                       throws IOException,
                              AutomationException
Indicates whether FinishPart has been called on the edit sketch.

Remarks

Use this property to determine when the current part of the sketch is finished.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isPartComplete in interface IEditSketch2
Returns:
The complete
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isVertexSelected

public boolean isVertexSelected(int part,
                                int vertex)
                         throws IOException,
                                AutomationException
Is a vertex selected.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isVertexSelected in interface IEditSketch3
Parameters:
part - The part (in)
vertex - The vertex (in)
Returns:
The pbSelected
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

clearSelectedVertices

public void clearSelectedVertices()
                           throws IOException,
                                  AutomationException
Clears selected vertices.

Product Availability

Available with ArcGIS Desktop.

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

selectVertex

public void selectVertex(int part,
                         int vertex)
                  throws IOException,
                         AutomationException
Selects a vertex.

Product Availability

Available with ArcGIS Desktop.

Specified by:
selectVertex in interface IEditSketch3
Parameters:
part - The part (in)
vertex - The vertex (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

unselectVertex

public void unselectVertex(int part,
                           int vertex)
                    throws IOException,
                           AutomationException
Unselects a vertex.

Product Availability

Available with ArcGIS Desktop.

Specified by:
unselectVertex in interface IEditSketch3
Parameters:
part - The part (in)
vertex - The vertex (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSelectedVertexCount

public int getSelectedVertexCount()
                           throws IOException,
                                  AutomationException
The number of selected vertices.

Product Availability

Available with ArcGIS Desktop.

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

setWYSIWYGSketchSymbol

public void setWYSIWYGSketchSymbol(ISymbol symbol,
                                   boolean isWYSIWYG,
                                   boolean respectsRefScale)
                            throws IOException,
                                   AutomationException
The WYSIWYG Sketch symbol and its properties.

Product Availability

Available with ArcGIS Desktop.

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

clearWYSIWYGSketchSymbol

public void clearWYSIWYGSketchSymbol()
                              throws IOException,
                                     AutomationException
Clears the WYSIWYG Sketch symbol and its properties.

Product Availability

Available with ArcGIS Desktop.

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

getWYSIWYGSketchSymbol

public ISymbol getWYSIWYGSketchSymbol()
                               throws IOException,
                                      AutomationException
The WYSIWYG symbol for the sketch.

Product Availability

Available with ArcGIS Desktop.

Specified by:
getWYSIWYGSketchSymbol in interface IEditSketch3
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.

isSketchSymbolIsWYSIWYG

public boolean isSketchSymbolIsWYSIWYG()
                                throws IOException,
                                       AutomationException
Indicates whether the sketch symbol is WYSIWYG.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isSketchSymbolIsWYSIWYG in interface IEditSketch3
Returns:
The isWYSIWYG
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isSketchSymbolRespectsRefScale

public boolean isSketchSymbolRespectsRefScale()
                                       throws IOException,
                                              AutomationException
Indicates whether the sketch symbol should respect the map's reference scale.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isSketchSymbolRespectsRefScale in interface IEditSketch3
Returns:
The respectsRefScale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getShapeConstructor

public IShapeConstructor getShapeConstructor()
                                      throws IOException,
                                             AutomationException
The currently activated Shape Constructor.

Product Availability

Available with ArcGIS Desktop.

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

setShapeConstructorByRef

public void setShapeConstructorByRef(IShapeConstructor shapeConstructor)
                              throws IOException,
                                     AutomationException
The currently activated Shape Constructor.

Product Availability

Available with ArcGIS Desktop.

Specified by:
setShapeConstructorByRef in interface IEditSketch3
Parameters:
shapeConstructor - A reference to a com.esri.arcgis.editor.IShapeConstructor (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getName

public String getName()
               throws IOException,
                      AutomationException
The name of the extension.

Specified by:
getName in interface IExtension
Returns:
The extensionName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

startup

public void startup(Object initializationData)
             throws IOException,
                    AutomationException
Starts up the extension with the given initialization data.

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

shutdown

public void shutdown()
              throws IOException,
                     AutomationException
Shuts down the extension.

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

contentsChanged

public void contentsChanged(IActiveViewEventsContentsChangedEvent theEvent)
                     throws IOException,
                            AutomationException
Fired when the contents of the view changes.

Remarks

The Map object fires this event when a new document is loaded. Adding a new layer to a Map does not trigger this event.

The PageLayout object fires the event when IGraphicsContainer::DeleteAllElements in called and when a new document is loaded.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
contentsChanged in interface IActiveViewEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IActiveView.contentsChanged()

contentsCleared

public void contentsCleared(IActiveViewEventsContentsClearedEvent theEvent)
                     throws IOException,
                            AutomationException
Fired when the contents of the view is cleared.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
contentsCleared in interface IActiveViewEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

itemAdded

public void itemAdded(IActiveViewEventsItemAddedEvent theEvent)
               throws IOException,
                      AutomationException
Fired when an item is added to the view.

Remarks

The Map fires the event every time a new layer is added.

The PageLayout fires this event whenever a new element is added to the layout. Elements include not only graphics but data frames as well.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
itemAdded in interface IActiveViewEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

itemDeleted

public void itemDeleted(IActiveViewEventsItemDeletedEvent theEvent)
                 throws IOException,
                        AutomationException
Fired when an item is deleted from the view.

Remarks

The PageLayout object fires this event whenever elements are deleted from the layout.

The Map object fires this event when a layer is removed.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
itemDeleted in interface IActiveViewEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

itemReordered

public void itemReordered(IActiveViewEventsItemReorderedEvent theEvent)
                   throws IOException,
                          AutomationException
Fired when a view item is reordered.

Remarks

The Map objects only fire this event whenever IMap::MoveLayer is called. In the ArcMap application, this occurs when you reorder layers in the table of contents. The Map will also fire this event when new layers are added.

The PageLayout object fires this event when changing the order of graphics. For example, IGraphicsContainer::BringToFront, PutElementOrder, SendToBack, SendBackward, and BringForward all fire this event. These functions are on ArcMap's Drawing menu under the Order pull right menu. Although the Map object is also a graphics container, it does not fire this event when its graphics are reordered.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
itemReordered in interface IActiveViewEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

selectionChanged

public void selectionChanged(IActiveViewEventsSelectionChangedEvent theEvent)
                      throws IOException,
                             AutomationException
Call this function to fire the selection changed event.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
selectionChanged in interface IActiveViewEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

viewRefreshed

public void viewRefreshed(IActiveViewEventsViewRefreshedEvent theEvent)
                   throws IOException,
                          AutomationException
Fired when view is refreshed before draw happens.

Description

Method that gets fired in response to IActiveView::Refresh and IActiveView::PartialRefresh.

Remarks

This event is useful in the case where you're watching for something to change in the view and there aren't any specific events for that change (e.g. ContentsChanged, ItemAdded). You can always listen for this method as a last resort. Care must be taken however to be very efficient in your implementation of this event because it will be called quite often.

The event parameters directly coincide with the arguments to IActiveView::PartialRefresh. For additional information about the arguments, see the help for that method.

If the event object connects to both the layout and a map, then the view parameter tells you which object initiated the event.

In an implementation of this method you typically want to check the phase and respond to only one. Otherwise, your code will execute multiple times per drawing sequence.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
viewRefreshed in interface IActiveViewEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

afterDraw

public void afterDraw(IActiveViewEventsAfterDrawEvent theEvent)
               throws IOException,
                      AutomationException
Fired after the specified phase is drawn.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
afterDraw in interface IActiveViewEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

afterItemDraw

public void afterItemDraw(IActiveViewEventsAfterItemDrawEvent theEvent)
                   throws IOException,
                          AutomationException
Fired after an individual view item is drawn. Example: view items include layers in a map or elements in a page layout.

Remarks

AfterItemDraw can be used to execute after each individual item has drawn. Event firing can be an expensive operation (time consuming) when there are many layers in a map, however. As a result, the AfterItemDraw event is only fired when the IViewManger::VerboseEvents property is set to True. By default this property is False.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
afterItemDraw in interface IActiveViewEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

focusMapChanged

public void focusMapChanged(IActiveViewEventsFocusMapChangedEvent theEvent)
                     throws IOException,
                            AutomationException
Fired when a new map is made active.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
focusMapChanged in interface IActiveViewEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

spatialReferenceChanged

public void spatialReferenceChanged(IActiveViewEventsSpatialReferenceChangedEvent theEvent)
                             throws IOException,
                                    AutomationException
Fired when the spatial reference is changed.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
spatialReferenceChanged in interface IActiveViewEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

snapPoint

public boolean snapPoint(IPoint point)
                  throws IOException,
                         AutomationException
Attempts to snap the point using the current snap environment.

Description

SnapPoint passes the required point parameter to each of the added Snap Agents in the order that these agents were added. The agents attempt, in turn, to find point coordinates that fulfill its snap properties for the incoming point. If a new snap location is found, the relevant snap agent modifies the original point's coordinates to that of the new location. The same point is then returned to SnapPoint. Once a snap agent is found that satisfies the point subsequent snap agents are not tested.


Remarks

As an example: there may be several FeatureSnap agents present. Each receives a point from the current cursor location, which is passed to the agent via the SnapPoint method. If the conditions for a snap are met, the boolean value of the agent returns TRUE, the point's coordinates are updated based on the active FeatureSnap's conditions and the same point is returned to SnapPoint. In the Editor, the InvertAgent location is always set equal to this point. Thus, when snapping conditions are met, the InvertAgent (blue dot) is passed the point with altered coordinates, and the corresponding location shift is manifested as a "snap".

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getSnapToleranceUnits

public int getSnapToleranceUnits()
                          throws IOException,
                                 AutomationException
The units used for the snap tolerance.

Remarks

SnapToleranceUnits defines the method of type esriSnapToleranceUnits used to define the radius used by active snap agents. The default value is esriSnapTolerancePixels.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSnapToleranceUnits in interface ISnapEnvironment
Returns:
A com.esri.arcgis.editor.esriSnapToleranceUnits constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSnapToleranceUnits

public void setSnapToleranceUnits(int units)
                           throws IOException,
                                  AutomationException
The units used for the snap tolerance.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
setSnapToleranceUnits in interface ISnapEnvironment
Parameters:
units - A com.esri.arcgis.editor.esriSnapToleranceUnits constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSnapTolerance

public double getSnapTolerance()
                        throws IOException,
                               AutomationException
The snap tolerance, measured in pixels or map units.

Remarks

SnapTolerance this property is the size of the region bounding the input point location. It is given as a radius, measured in pixels, and the search for a potential snap point candidate is made within this region.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSnapTolerance in interface ISnapEnvironment
Returns:
The tol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSnapTolerance

public void setSnapTolerance(double tol)
                      throws IOException,
                             AutomationException
The snap tolerance, measured in pixels or map units.

Description

SnapTolerance this property is the size of the region bounding the input point location. It is given as a radius, measured in pixels, and the search for a potential snap point candidate is made within this region.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getSnapAgentCount

public int getSnapAgentCount()
                      throws IOException,
                             AutomationException
The number of active snap agents.

Description

SnapAgentCount returns the number of currently active snap agents.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getSnapAgent

public ISnapAgent getSnapAgent(int index)
                        throws IOException,
                               AutomationException
A snap agent at the given index.

Product Availability

Available with ArcGIS Desktop.

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

clearSnapAgents

public void clearSnapAgents()
                     throws IOException,
                            AutomationException
Removes all snap agents.

Remarks

ClearSnapAgents deactivates all snap agents and sets the SnapAgentCount to zero.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

removeSnapAgent

public void removeSnapAgent(int index)
                     throws IOException,
                            AutomationException
Removes the snap agent at the given index.

Remarks

RemoveSnapAgent removes the Snap Agent represented by the value of the index number passed to the method.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

addSnapAgent

public void addSnapAgent(ISnapAgent snapAgent)
                  throws IOException,
                         AutomationException
Adds a new snap agent to the snap environment.

Remarks

AddSnapAgent activates and adds to the snap environment any valid snap agent, such as FeatureSnap, AnchorSnap, or PerpendicularSnap.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
addSnapAgent in interface ISnapEnvironment
Parameters:
snapAgent - A reference to a com.esri.arcgis.editor.ISnapAgent (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isUseSnapZTolerance

public boolean isUseSnapZTolerance()
                            throws IOException,
                                   AutomationException
Indicates whether the SnapZTolerance property is used when Z snapping.

Remarks

Boolean value that determines whether z-aware snap agents use a defined tolerance when evaluating if a point meets the snap agent's criteria. The tolerance is defined using ISnapEnvironment2::SnapZTolerance. Default value is FALSE.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isUseSnapZTolerance in interface ISnapEnvironment2
Returns:
The useSnapZTolerance
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseSnapZTolerance

public void setUseSnapZTolerance(boolean useSnapZTolerance)
                          throws IOException,
                                 AutomationException
Indicates whether the SnapZTolerance property is used when Z snapping.

Product Availability

Available with ArcGIS Desktop.

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

getSnapZTolerance

public double getSnapZTolerance()
                         throws IOException,
                                AutomationException
The snap tolerance used for z-values, measured in map units.

Remarks

Double value that defines the cylinder (defined as distance positively and negatively from snap point's Z-value) used to determine whether the point snaps to another feature. The z-snap tolerance is evaluated only after a snap agent in XY is satisfied. Default value is 0. SnapZTolerance is only applied when IEditorZ::UseSnapZTolerance is TRUE.

Product Availability

Available with ArcGIS Desktop.

Specified by:
getSnapZTolerance in interface ISnapEnvironment2
Returns:
The tolerance
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSnapZTolerance

public void setSnapZTolerance(double tolerance)
                       throws IOException,
                              AutomationException
The snap tolerance used for z-values, measured in map units.

Description

The SnapZTolerance property defines the height region bounding the input point location and will be used in conjunction with the XY tolerance. It is always expressed in z-units, and the search for a potential snap point candidate is made within the cylinder region it defines.

Note: The z-unit is determined based on the first editable layer added to the map

Product Availability

Available with ArcGIS Desktop.

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

snapToIntersection

public boolean snapToIntersection(IPoint point,
                                  IGeometry pIntersection)
                           throws IOException,
                                  AutomationException
Attempts to snap the specified point to the given intersection.

Product Availability

Available with ArcGIS Desktop.

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

fullPointSnap

public boolean fullPointSnap(IPoint point)
                      throws IOException,
                             AutomationException
Always attempts to snap the point using the current snap environment. This should not be used to snap mouse position in a tool.

Product Availability

Available with ArcGIS Desktop.

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

setCurrentLayer

public void setCurrentLayer(IFeatureLayer layer,
                            int subtype)
                     throws IOException,
                            AutomationException
The editor's target layer and subtype for new features.

Remarks

Use this method to set the editor's current layer. Use the CurrentLayer property to check the current layer. The current layer is the layer that new features are typically written to. For example, the CreateNewFeature Task, the Buffer command, and the CopyParallel command all create new features and store them in the current layer. Custom tools and tasks do not have to model this behavior. All layers that return TRUE for IsEditable, are editable simulataneously. To edit features in a particular layer, you do not have to call the SetCurrentLayer method for that layer.

If you want to set the current layer to a layer that does not have subtypes, use a zero for the required subtype index parameter.

Each time this property is set, a new empty geometry is automatically created in the Editor object and is accessable through IEditSketch::Geometry. The type of geometry created is equal to that of the layer. This default behavior is easily overrideable by setting IEditSketch::Geometry manually; this does not affect the CurrentLayer property.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
setCurrentLayer in interface IEditLayers
Parameters:
layer - A reference to a com.esri.arcgis.carto.IFeatureLayer (in)
subtype - The subtype (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCurrentLayer

public IFeatureLayer getCurrentLayer()
                              throws IOException,
                                     AutomationException
Indicates the editor's target layer which new features are added to.

Remarks

Use this property to check the editor's current layer. Use the SetCurrentLayer property to set the current layer. The current layer is the layer that new features are typically written to. For example, the CreateNewFeature Task, the Buffer command, and the CopyParallel command all create new features and store them in the current layer. Custom tools and tasks do not have to model this behavior. All layers that return TRUE for IsEditable, are editable simulataneously. To edit features in a particular layer, you do not have to call SetCurrentLayer method for that layer.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getCurrentSubtype

public int getCurrentSubtype()
                      throws IOException,
                             AutomationException
The sub type for new features in the CurrentLayer.

Remarks

Returns the current subtype code for the current layer. If the CurrentLayer does not have subtypes, 0 is returned.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getCurrentSubtype in interface IEditLayers
Returns:
The typeCode
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isEditable

public boolean isEditable(IFeatureLayer layer)
                   throws IOException,
                          AutomationException
Determines if a specific feature layer is editable.

Remarks

Use the IsEditable method to check if a particular layer is editable. For example, when the editor is started, it calls this method for each layer added to the Map. The layers that are editable are added to the editing environment.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isEditable in interface IEditLayers
Parameters:
layer - A reference to a com.esri.arcgis.carto.IFeatureLayer (in)
Returns:
The pEditable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getReportPrecision

public int getReportPrecision()
                       throws IOException,
                              AutomationException
Controls the number of decimal places the editor reports numbers with.

Remarks

Use this property to control the number of decimal places the editor reports in all dialog boxes. Three decimal places is the default. This property does not interfere with the input of numbers into a dialog box. For example, setting ReportPrecision to two decimal places will not prevent the editor from accepting an angle of 25.12345.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getReportPrecision in interface IEditProperties
Returns:
The numDecs
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setReportPrecision

public void setReportPrecision(int numDecs)
                        throws IOException,
                               AutomationException
Controls the number of decimal places the editor reports numbers with.

Remarks

Use this property to control the number of decimal places the editor reports in all dialog boxes. Four decimal places is the default. This property does not interfere with the input of numbers into a dialog box. For example, setting ReportPrecision to two decimal places will not prevent the editor from accepting an angle of 25.12345.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getStreamTolerance

public double getStreamTolerance()
                          throws IOException,
                                 AutomationException
Controls the streaming tolerance, measured in map units.

Remarks

Use the StreamTolerance property to access or modify the tolerance value used to control the number of points that get added to the map when the Sketch Tool is in stream mode.

The StreamTolerance value is in map units.

Use the IsStreaming property found on the interface ISketchTool to turn stream mode digitizing on or off.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getStreamTolerance in interface IEditProperties
Returns:
The tol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setStreamTolerance

public void setStreamTolerance(double tol)
                        throws IOException,
                               AutomationException
Controls the streaming tolerance, measured in map units.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getStreamGroupingCount

public int getStreamGroupingCount()
                           throws IOException,
                                  AutomationException
Controls the number of points to group together when streaming.

Remarks

The StreamGroupingCount property establishes how many grouped points to add to the undo stack for the sketch operation when ISketchTool :: IsStreaming is TRUE. This means that if the value is set to 1 each streamed point added will be undoable and redoable. If the streaming tolerance is low, however, you may wish to make the grouping larger so that groups of added points can be undone or redone by the user with only one undo or redo.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getStreamGroupingCount in interface IEditProperties
Returns:
The tol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setStreamGroupingCount

public void setStreamGroupingCount(int tol)
                            throws IOException,
                                   AutomationException
Controls the number of points to group together when streaming.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isStretchGeometry

public boolean isStretchGeometry()
                          throws IOException,
                                 AutomationException
Indicates if the edit sketch is stretched when one of its vertices is moved.

Remarks

This property determines whether or not the edit sketch is stretched proportionally when a vertex is moved. The following diagrams illustrate this point better. In both cases, the upper right vertex was moved.

Moving a vertex with StretchGeometry set to True:



Moving a vertex with StrechGeometry set to False:


Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isStretchGeometry in interface IEditProperties
Returns:
The stretch
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setStretchGeometry

public void setStretchGeometry(boolean stretch)
                        throws IOException,
                               AutomationException
Indicates if the edit sketch is stretched when one of its vertices is moved.

Remarks

This property determines whether or not the edit sketch is stretched proportionally when a vertex is moved. The following diagrams illustrate this point better. In both cases, the upper right vertex was moved.

Moving a vertex with StretchGeometry set to True



Moving a vertex with StrechGeometry set to False:



Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getSketchSymbol

public ILineSymbol getSketchSymbol()
                            throws IOException,
                                   AutomationException
Symbol used to draw the lines of the edit sketch.

Remarks

Use this property to change the symbology for lines (segments) in the edit sketch. The default line symbol is a solid green line with a width of one.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSketchSymbol in interface IEditProperties
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.
See Also:
IEditProperties.getSelectedVertexSymbol(), IEditProperties.getSketchVertexSymbol(), IEditProperties.getSnapSymbol()

setSketchSymbolByRef

public void setSketchSymbolByRef(ILineSymbol symbol)
                          throws IOException,
                                 AutomationException
Symbol used to draw the lines of the edit sketch.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
setSketchSymbolByRef in interface IEditProperties
Parameters:
symbol - 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.

getSketchVertexSymbol

public IMarkerSymbol getSketchVertexSymbol()
                                    throws IOException,
                                           AutomationException
Symbol used to draw the vertices of the edit sketch.

Remarks

Use this property to change the symbology of the vertices in the edit sketch. Edit sketch vertices are drawn in green by default.





Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSketchVertexSymbol in interface IEditProperties
Returns:
A reference to a com.esri.arcgis.display.IMarkerSymbol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditProperties.getSelectedVertexSymbol(), IEditProperties.getSnapSymbol(), IEditProperties.getSketchSymbol()

setSketchVertexSymbolByRef

public void setSketchVertexSymbolByRef(IMarkerSymbol symbol)
                                throws IOException,
                                       AutomationException
Symbol used to draw the vertices of the edit sketch.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getSelectedVertexSymbol

public IMarkerSymbol getSelectedVertexSymbol()
                                      throws IOException,
                                             AutomationException
Symbol used to draw the active vertex of the edit sketch.

Remarks

Use this property to change the symbology of the last point in the edit sketch. By default this point is drawn in red and has a size of 4.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSelectedVertexSymbol in interface IEditProperties
Returns:
A reference to a com.esri.arcgis.display.IMarkerSymbol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditProperties.getSketchVertexSymbol(), IEditProperties.getSnapSymbol(), IEditProperties.getSketchSymbol()

setSelectedVertexSymbolByRef

public void setSelectedVertexSymbolByRef(IMarkerSymbol symbol)
                                  throws IOException,
                                         AutomationException
Symbol used to draw the active vertex of the edit sketch.

Remarks

Use this property to change the symbology of the edit sketch's last point. By default this unique vertex is drawn as a red square.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getSnapSymbol

public IMarkerSymbol getSnapSymbol()
                            throws IOException,
                                   AutomationException
Symbol used to draw the snap location.

Remarks

Use this property to change the editor's snap symbol when classic snapping is enabled. The snap symbol is displayed whenever you are working with the edit sketch. The default snap symbol is a blue dot.

The snap agent knows to draw the snap symbol twice, once to get rid of the old symbol and once to draw the symbol at its new location. When setting the symbol, don't forget to set its ROP property (on the ISymbol interface) to esriROPNotXOrPen . This setting allows the symbol to erase itself when drawn twice in the same location.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSnapSymbol in interface IEditProperties
Returns:
A reference to a com.esri.arcgis.display.IMarkerSymbol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditProperties.getSketchVertexSymbol(), IEditProperties.getSelectedVertexSymbol(), IEditor.invertAgent(com.esri.arcgis.geometry.IPoint, int)

setSnapSymbolByRef

public void setSnapSymbolByRef(IMarkerSymbol symbol)
                        throws IOException,
                               AutomationException
Symbol used to draw the snap location.

Remarks

Use this property to change the editor's snap symbol. The snap symbol is displayed whenever you are working with the edit sketch.

When setting the symbol, don't forget to set its ROP property, on the ISymbol interface, to esriROPNotXOrPen . The snap agent knows to always draw the snap symbol twice, once to get rid of the old symbol and once to draw the symbol at its new location. This setting tells the symbol to erase itself when drawn twice in the same location.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isAutoSaveOnVersionRedefined

public boolean isAutoSaveOnVersionRedefined()
                                     throws IOException,
                                            AutomationException
Indicates whether the stop editing process should automatically reconcile an edit session and save the version without notification.

Remarks

AutoReconciliation provides the user the ability to delay the save process for after the reconciliation. This allows the user to inspect the results of the reconciliation prior to saving.

If AutoSaveOnVersionRedefined = True, auto reconciliation will automatically reconcile the edit session with the version's current database state and save, making changes available to others using the database.

If AutoSaveOnVersionRedefined = False, when a save occurs, the edit session will be reconciled with the version's current database state, and then a message will inform the user that the edit session has been reconciled but has not been saved.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isAutoSaveOnVersionRedefined in interface IEditProperties
Returns:
The stretch
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAutoSaveOnVersionRedefined

public void setAutoSaveOnVersionRedefined(boolean stretch)
                                   throws IOException,
                                          AutomationException
Indicates whether the stop editing process should automatically reconcile an edit session and save the version without notification.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getStickyMoveTolerance

public int getStickyMoveTolerance()
                           throws IOException,
                                  AutomationException
Controls the sticky move tolerance.

Remarks

StickyMoveTolerance determines the minimum distance (measured in pixels) the cursor must move before the edit is completed. This can be helpful in preventing small inadvertent shifts of features when editing. The default value is 0.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getStickyMoveTolerance in interface IEditProperties2
Returns:
The tol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setStickyMoveTolerance

public void setStickyMoveTolerance(int tol)
                            throws IOException,
                                   AutomationException
Controls the sticky move tolerance.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isSnapTips

public boolean isSnapTips()
                   throws IOException,
                          AutomationException
Indicates whether to show the snap tips.

Remarks

Use this property to determine whether snap tips are displayed when snapping is used in the editor. Snap tips provide feedback in the form of a tool tip and a message in the status bar identifying the snap agent that was used to modify the current point. If the snap agent used is a feature snap agent, the layer name and hit type are displayed; otherwise the snap agent name is displayed.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isSnapTips in interface IEditProperties2
Returns:
The tips
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSnapTips

public void setSnapTips(boolean tips)
                 throws IOException,
                        AutomationException
Indicates whether to show the snap tips.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

setAngularUnitPrecision

public void setAngularUnitPrecision(int auPrecision)
                             throws IOException,
                                    AutomationException
Precision used to display angular units.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getAngularUnitPrecision

public int getAngularUnitPrecision()
                            throws IOException,
                                   AutomationException
Precision used to display angular units.

Remarks

AngularUnitPrecision determines the number of digits displayed after the decimal place. The default is 4.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getAngularUnitPrecision in interface IEditProperties2
Returns:
The auPrecision
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDirectionType

public void setDirectionType(int dirType)
                      throws IOException,
                             AutomationException
Direction Type.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
setDirectionType in interface IEditProperties2
Parameters:
dirType - A com.esri.arcgis.system.esriDirectionType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDirectionType

public int getDirectionType()
                     throws IOException,
                            AutomationException
Direction Type.

Remarks

IEditProperties::DirectionType determines the method of measurement for direction values. The default value is esriDTPolar.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getDirectionType in interface IEditProperties2
Returns:
A com.esri.arcgis.system.esriDirectionType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDirectionUnits

public void setDirectionUnits(int dirUnits)
                       throws IOException,
                              AutomationException
Direction Units.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
setDirectionUnits in interface IEditProperties2
Parameters:
dirUnits - A com.esri.arcgis.system.esriDirectionUnits constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDirectionUnits

public int getDirectionUnits()
                      throws IOException,
                             AutomationException
Direction Units.

Remarks

The direction units define how angles are specified; how many parts a complete circle is divided into and how to interpret the angle value entered. The default value is esriDUDecimalDegrees.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getDirectionUnits in interface IEditProperties2
Returns:
A com.esri.arcgis.system.esriDirectionUnits constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDistanceCorrectionFactor

public void setDistanceCorrectionFactor(double distFactor)
                                 throws IOException,
                                        AutomationException
Distance Correction Factor.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getDistanceCorrectionFactor

public double getDistanceCorrectionFactor()
                                   throws IOException,
                                          AutomationException
Distance Correction Factor.

Remarks

Use this property to determine the distance amount applied when length measurements are input into the editor. The value may be accessed or modified at any time; however, it is applied only when IEditProperties::UseGroundToGrid is set to True. The default value is 0 (no correction).

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getDistanceCorrectionFactor in interface IEditProperties2
Returns:
The distFactor
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAngularCorrectionOffset

public void setAngularCorrectionOffset(double angOffset)
                                throws IOException,
                                       AutomationException
Angular Correction Offset.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getAngularCorrectionOffset

public double getAngularCorrectionOffset()
                                  throws IOException,
                                         AutomationException
Angular Correction Offset.

Remarks

AngularCorrectionOffset determines the amount of correction applied to each entered angular value. The offset is specified in radians. This property may be accessed at any time; it is only applied when the IEditProperties2::UseGroundToGrid is True. The default value is 0 (no correction).

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getAngularCorrectionOffset in interface IEditProperties2
Returns:
The angOffset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseGroundToGrid

public void setUseGroundToGrid(boolean g2g)
                        throws IOException,
                               AutomationException
Indicates whether to use Ground to Grid.

Remarks

Use this property to control whether any distance or direction offsets are applied to angle or length values respectively when using the editor. If UseGroundToGrid is True then the distance offset specified by IEditProperties2::DistanceCorrectionFactor and the angular offset specified by IEditProperties2::AngularCorrectionFactor are used.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isUseGroundToGrid

public boolean isUseGroundToGrid()
                          throws IOException,
                                 AutomationException
Indicates whether to use Ground to Grid.

Remarks

Use this property to control whether any distance or direction offsets are applied to angle or length values respectively when using the editor. If UseGroundToGrid is True then the distance offset specified by IEditProperties2::DistanceCorrectionFactor and the angular offset specified by IEditProperties2::AngularCorrectionFactor are used.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isUseGroundToGrid in interface IEditProperties2
Returns:
The g2g
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMultiuserEditSessionMode

public int getMultiuserEditSessionMode()
                                throws IOException,
                                       AutomationException
The multiuser session mode that is used when editing.

Product Availability

Available with ArcGIS Desktop.

Specified by:
getMultiuserEditSessionMode in interface IEditProperties3
Returns:
A com.esri.arcgis.geodatabase.esriMultiuserEditSessionMode constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMultiuserEditSessionMode

public void setMultiuserEditSessionMode(int esm)
                                 throws IOException,
                                        AutomationException
The multiuser session mode that is used when editing.

Product Availability

Available with ArcGIS Desktop.

Specified by:
setMultiuserEditSessionMode in interface IEditProperties3
Parameters:
esm - A com.esri.arcgis.geodatabase.esriMultiuserEditSessionMode constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isAutoSaveChecksConflicts

public boolean isAutoSaveChecksConflicts()
                                  throws IOException,
                                         AutomationException
Indicates whether the editor checks if conflicts were detected during auto reconciliation prior to automatically saving.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isAutoSaveChecksConflicts in interface IEditProperties3
Returns:
The checksConflicts
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAutoSaveChecksConflicts

public void setAutoSaveChecksConflicts(boolean checksConflicts)
                                throws IOException,
                                       AutomationException
Indicates whether the editor checks if conflicts were detected during auto reconciliation prior to automatically saving.

Product Availability

Available with ArcGIS Desktop.

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

isAutoReconcileConflictsByAttribute

public boolean isAutoReconcileConflictsByAttribute()
                                            throws IOException,
                                                   AutomationException
Indicates whether conflicts will be detected and resolved by attributes.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isAutoReconcileConflictsByAttribute in interface IEditProperties3
Returns:
The byatt
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAutoReconcileConflictsByAttribute

public void setAutoReconcileConflictsByAttribute(boolean byatt)
                                          throws IOException,
                                                 AutomationException
Indicates whether conflicts will be detected and resolved by attributes.

Product Availability

Available with ArcGIS Desktop.

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

isAutoReconcileEditSessionWins

public boolean isAutoReconcileEditSessionWins()
                                       throws IOException,
                                              AutomationException
Indicates whether conflicts are resolved in favor of the edit session.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isAutoReconcileEditSessionWins in interface IEditProperties3
Returns:
The editWins
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAutoReconcileEditSessionWins

public void setAutoReconcileEditSessionWins(boolean editWins)
                                     throws IOException,
                                            AutomationException
Indicates whether conflicts are resolved in favor of the edit session.

Product Availability

Available with ArcGIS Desktop.

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

isUseWYSIWYGSketchSymbol

public boolean isUseWYSIWYGSketchSymbol()
                                 throws IOException,
                                        AutomationException
Indicates whether the sketch is drawn with WYSIWYG symbology.

Remarks

This property determines whether or not the feature being edited or created is drawn using the renderer’s symbol, or the classic edit sketch symbology.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isUseWYSIWYGSketchSymbol in interface IEditProperties4
Returns:
The useWYSIWYGSketchSymbol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseWYSIWYGSketchSymbol

public void setUseWYSIWYGSketchSymbol(boolean useWYSIWYGSketchSymbol)
                               throws IOException,
                                      AutomationException
Indicates whether the sketch is drawn with WYSIWYG symbology.

Product Availability

Available with ArcGIS Desktop.

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

isClassicSnapping

public boolean isClassicSnapping()
                          throws IOException,
                                 AutomationException
Indicates whether the classic editing snapping will be used.

Remarks

Setting this property to true enables classic snapping (ArcGIS 9.3.1 and prior versions snapping environment UI).

In the UI this is set in the general tab on the Editor Options dialog.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isClassicSnapping in interface IEditProperties4
Returns:
The snap
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setClassicSnapping

public void setClassicSnapping(boolean snap)
                        throws IOException,
                               AutomationException
Indicates whether the classic editing snapping will be used.

Product Availability

Available with ArcGIS Desktop.

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

isSnapToSketch

public boolean isSnapToSketch()
                       throws IOException,
                              AutomationException
Indicates whether the sketch will be added to the snapping cache. It is used when not using classic snapping.

Remarks

Setting this property to true adds the sketch to the snapping cache.

In the UI this property is set via the Snap to Sketch menu item on the Snapping toolbar.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isSnapToSketch in interface IEditProperties4
Returns:
The snap
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSnapToSketch

public void setSnapToSketch(boolean snap)
                     throws IOException,
                            AutomationException
Indicates whether the sketch will be added to the snapping cache. It is used when not using classic snapping.

Product Availability

Available with ArcGIS Desktop.

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

isShowConstructionToolbars

public boolean isShowConstructionToolbars()
                                   throws IOException,
                                          AutomationException
Indicates whether construction toolbars will be displayed while drawing a sketch.

Remarks

Setting this property to true will display the construction mini toolbar during sketch construction.

In the UI this is set in the General tab on the Editor Options dialog.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isShowConstructionToolbars in interface IEditProperties4
Returns:
The showConstructionToolbars
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setShowConstructionToolbars

public void setShowConstructionToolbars(boolean showConstructionToolbars)
                                 throws IOException,
                                        AutomationException
Indicates whether construction toolbars will be displayed while drawing a sketch.

Product Availability

Available with ArcGIS Desktop.

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

getActiveSketchVertexSymbol

public IMarkerSymbol getActiveSketchVertexSymbol()
                                          throws IOException,
                                                 AutomationException
Symbol used to draw the selected vertices of the edit sketch.

Remarks

Use this property to change the symbology of the selected vertices in the edit sketch. By default, selected edit sketch vertices are drawn as hollow green squares.

In the UI this is set in the general tab on the Editor Options dialog.

Product Availability

Available with ArcGIS Desktop.

Specified by:
getActiveSketchVertexSymbol in interface IEditProperties4
Returns:
A reference to a com.esri.arcgis.display.IMarkerSymbol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditProperties.getSketchVertexSymbol(), IEditProperties.getSketchSymbol()

setActiveSketchVertexSymbolByRef

public void setActiveSketchVertexSymbolByRef(IMarkerSymbol symbol)
                                      throws IOException,
                                             AutomationException
Symbol used to draw the selected vertices of the edit sketch.

Product Availability

Available with ArcGIS Desktop.

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

getActiveSelectedVertexSymbol

public IMarkerSymbol getActiveSelectedVertexSymbol()
                                            throws IOException,
                                                   AutomationException
Symbol used to draw the selected active vertex of the edit sketch.

Remarks

Use this property to change the symbology of the last point in the edit sketch when it is selected. By default this point is drawn as a red hollow square.

In the UI this is set in the general tab on the Editor Options dialog.

Product Availability

Available with ArcGIS Desktop.

Specified by:
getActiveSelectedVertexSymbol in interface IEditProperties4
Returns:
A reference to a com.esri.arcgis.display.IMarkerSymbol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IEditProperties.getSketchVertexSymbol(), IEditProperties.getSketchSymbol()

setActiveSelectedVertexSymbolByRef

public void setActiveSelectedVertexSymbolByRef(IMarkerSymbol symbol)
                                        throws IOException,
                                               AutomationException
Symbol used to draw the selected active vertex of the edit sketch.

Product Availability

Available with ArcGIS Desktop.

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

getAttributeTransfer

public IAttributeTransfer getAttributeTransfer()
                                        throws IOException,
                                               AutomationException
The current attribute type.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

setAttributeTransferType

public void setAttributeTransferType(String rhs1)
                              throws IOException,
                                     AutomationException
The current attribute type.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getExtensionCount

public int getExtensionCount()
                      throws IOException,
                             AutomationException
The number of extensions loaded in the application.

Description

Returns the number of extensions currently loaded in the application.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getExtension

public IExtension getExtension(int index)
                        throws IOException,
                               AutomationException
The extension at the specified index.

Product Availability

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

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

getExtensionCLSID

public IUID getExtensionCLSID(int index)
                       throws IOException,
                              AutomationException
The CLSID of the extension at the specified index.

Product Availability

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

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

findExtension

public IExtension findExtension(Object nameOrID)
                         throws IOException,
                                AutomationException
Finds the extension by CLSID (IUID) or name (String).

Description

The FindExtension method will get an extension by either its name string or by its CLSID. Using IExtensionManager is not the only way to get a reference to an extension; the IApplication interface has FindExtensionByCLSID and FindExtensionByName methods.

nameOrID is a variant representing the identifier of the extension. This can either be the UID of the extension or the name string.

Remarks

COM coclasses are identified by a globally unique identifier (GUID). There two formats for the GUID for a coclass: a class ID (CLSID) and a ProgID. The ProgID is a text alias for a CLSID. The UID coclass can be used to represent the GUID of an extension object. You can set the IUID.Value property to either the CLSID or the ProgID.

To find the Name, CLSID, and ProgID of an ESRI extension, refer to the following technical document:

ArcObjects Developer Help > Technical Documents > Names and IDs > Extensions

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
findExtension in interface IExtensionManager
Parameters:
nameOrID - A Variant (in)
Returns:
A reference to a com.esri.arcgis.system.IExtension
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

createAccelerators

public void createAccelerators()
                        throws IOException,
                               AutomationException
Called to create the keyboard accelerators for this extension.

Remarks

The CreateAccelerators method creates the accelerators for the extension. This method is called when the accelerator table is created during application startup, when a new document is created, or when a document is opened.

When you use the CreateAccelerators method to assign an accelerator to one of the commands in your extension, you should check to make sure that no other command is currently using the key combination that you want to use.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
createAccelerators in interface IExtensionAccelerators
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IAccelerator, IAcceleratorTable

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.

getLeaderSymbol

public ICallout getLeaderSymbol()
                         throws IOException,
                                AutomationException
Symbol used to draw a leader.

Remarks

The LeaderSymbol property accepts objects that support ICallout. MarkerTextBackground objects cannot be used for the LeaderSymbol property. This property is an application-level setting and is used in ArcMap to add a leader to an annotation feature if the annotation feature's symbol does not have one defined.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

setLeaderSymbolByRef

public void setLeaderSymbolByRef(ICallout callout)
                          throws IOException,
                                 AutomationException
Symbol used to draw a leader.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isShowAnnoHandles

public boolean isShowAnnoHandles()
                          throws IOException,
                                 AutomationException
Indicates whether the edit annotation tool will show the resize and rotate handles.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isShowAnnoHandles in interface IEditAnnotationProperties
Returns:
The flag
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setShowAnnoHandles

public void setShowAnnoHandles(boolean flag)
                        throws IOException,
                               AutomationException
Indicates whether the edit annotation tool will show the resize and rotate handles.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isUseFollowLineFeatureMode

public boolean isUseFollowLineFeatureMode()
                                   throws IOException,
                                          AutomationException
Indicates whether the edit annotation tool will use follow feature mode when moving annotation related to lines.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isUseFollowLineFeatureMode in interface IEditAnnotationProperties
Returns:
The flag
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseFollowLineFeatureMode

public void setUseFollowLineFeatureMode(boolean flag)
                                 throws IOException,
                                        AutomationException
Indicates whether the edit annotation tool will use follow feature mode when moving annotation related to lines.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

isUseFollowPolygonFeatureMode

public boolean isUseFollowPolygonFeatureMode()
                                      throws IOException,
                                             AutomationException
Indicates whether the edit annotation tool will use follow feature mode when moving annotation related to polygons.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
isUseFollowPolygonFeatureMode in interface IEditAnnotationProperties
Returns:
The flag
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseFollowPolygonFeatureMode

public void setUseFollowPolygonFeatureMode(boolean flag)
                                    throws IOException,
                                           AutomationException
Indicates whether the edit annotation tool will use follow feature mode when moving annotation related to polygons.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getMultiWordSelectionSymbol

public ISymbol getMultiWordSelectionSymbol()
                                    throws IOException,
                                           AutomationException
Symbol used to draw selected words in multiword annotation.

Remarks

This property controls the symbology used to define the selected paths (words) of a multiword annotation. Multipart annotation is stored as a series of paths allowing each path's position to be modified independently from the remaining paths of the annotation feature. You can check to see if an annotation feature contains multiple paths using the IMultipartTextElement::IsMultipart property.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getMultiWordSelectionSymbol in interface IEditAnnotationProperties
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.

setMultiWordSelectionSymbolByRef

public void setMultiWordSelectionSymbolByRef(ISymbol symbol)
                                      throws IOException,
                                             AutomationException
Symbol used to draw selected words in multiword annotation.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
setMultiWordSelectionSymbolByRef in interface IEditAnnotationProperties
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.

isNonversionedAttributionEnabled

public boolean isNonversionedAttributionEnabled()
                                         throws IOException,
                                                AutomationException
Indicates if the attribute query for newly created features is enabled.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isNonversionedAttributionEnabled in interface IEditAttributeProperties
Returns:
The pFlag
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setNonversionedAttributionEnabled

public void setNonversionedAttributionEnabled(boolean pFlag)
                                       throws IOException,
                                              AutomationException
Indicates if the attribute query for newly created features is enabled.

Product Availability

Available with ArcGIS Desktop.

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

isAttributeEditAll

public boolean isAttributeEditAll()
                           throws IOException,
                                  AutomationException
Indicates if the pre-populate attributes dialog is used for all layers or just the selected layers.

Remarks

This property reports if the Editor is currently enabled for short transactional editing on all the editable Feature Classes within the TOC.

Use this property to determine if short transactions are enabled for all the editable layers.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isAttributeEditAll in interface IEditAttributeProperties
Returns:
The pFlag
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAttributeEditAll

public void setAttributeEditAll(boolean pFlag)
                         throws IOException,
                                AutomationException
Indicates if the pre-populate attributes dialog is used for all layers or just the selected layers.

Remarks

This property reports if the Editor is currently enabled for short transactional editing on all the editable Feature Classes within the TOC.

Use this property to enable short transactions for all the editable layers.

Product Availability

Available with ArcGIS Desktop.

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

getAttributeEditClasses

public ISet getAttributeEditClasses()
                             throws IOException,
                                    AutomationException
The list of applicable feature classes.

Remarks

This property reports the collection of editable Feature Classes which the Editor currently has enabled for short transactional editing. So you must be in an edit session for the editor to access the editable Feature Classes.

Use this property to return the collection of Feature Class objects enabled for short transactional editing.

Product Availability

Available with ArcGIS Desktop.

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

setAttributeEditClassesByRef

public void setAttributeEditClassesByRef(ISet ppClasses)
                                  throws IOException,
                                         AutomationException
The list of applicable feature classes.

Remarks

This property reports the collection of editable Feature Classes which the Editor currently has enabled for short transactional editing.

Use this property to set the collection of Feature Class objects enabled for short transactional editing.

Product Availability

Available with ArcGIS Desktop.

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

getTaskByUniqueName

public IEditTask getTaskByUniqueName(String uniqueName)
                              throws IOException,
                                     AutomationException
An edit task by unique name.

Product Availability

Available with ArcGIS Desktop.

Specified by:
getTaskByUniqueName in interface IEditTaskSearch
Parameters:
uniqueName - The uniqueName (in)
Returns:
A reference to a com.esri.arcgis.editor.IEditTask
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

drapeGeometry

public void drapeGeometry(IGeometry geometry,
                          boolean addVertices,
                          IGeometry[] outputGeometry)
                   throws IOException,
                          AutomationException
Drapes a geometry to the current surface.. If addVertices is false, existing vertex Z's will be modified but no new vertices added.

Remarks

Drapes the input geometry on the editor's current surface (defined by IEditorZ::Surface). If addVertices is FALSE, then only Z values for existing vertices in the input geometry will be updated. If addVertices is TRUE, then new vertices will be inserted at changes in elevation defined by the surface. Existing vertices are not updated when addVertices is TRUE.

Product Availability

Available with ArcGIS Desktop.

Specified by:
drapeGeometry in interface IEditorZ
Parameters:
geometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
addVertices - The addVertices (in)
outputGeometry - A reference to a com.esri.arcgis.geometry.IGeometry (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

applyZ

public void applyZ(IPoint point)
            throws IOException,
                   AutomationException
Applies editor's Z-capture logic to point if it isn't already z-aware.

Remarks

This method checks to determine that incoming point is Z-aware; if it is not, this method will set it to be Z-aware and apply the current Z assignment behavior to the incoming point in the following order: ZCaptureType, ZOffset. If the z-assignment fails (usually because the z-capture type is surface, and the retrieval of the z-value fails) then the client can receive this message through INotifyZFinalize, and is given an opportunity to specify a valid z-value.


Note: If the incoming point is already z-aware then this method does not alter the incoming point.

Product Availability

Available with ArcGIS Desktop.

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

finalizeZs

public void finalizeZs(IGeometry geometry)
                throws IOException,
                       AutomationException
Resolves NaN Zs to definite values.

Remarks

This method ensures a particular geometry has a valid set of z values defined. This method attempts to interpolate the z-value of any non-simple points in the geometry; if result is non-simple then the Failed method of the class implementing INotifyZFinalize and hooked into IEditorZ::NotifyZFinalize is given an opportunity to manipulate the Z values. If the client handles this, the method checks for simplicity and defines the offending z-values as necessary to successfully store the feature (using IEditSketch2::CurrentZ).

Product Availability

Available with ArcGIS Desktop.

Specified by:
finalizeZs in interface IEditorZ
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.

getZCaptureType

public int getZCaptureType()
                    throws IOException,
                           AutomationException
Determines method used for z-capture.

Remarks

ZCaptureType defines the current method the editor uses to assign z-values for newly created or edited vertices. The default value is esriZCaptureCurrentZ. When using one either esriCaptureInterpolateZ or esriCaptureSurfaceZ, the resulting z-value may not be defined; if these sources do not produce a valid z-value (non-NaN) then the editor applies the value defined in IEditSketch2::CurrentZ.

Product Availability

Available with ArcGIS Desktop.

Specified by:
getZCaptureType in interface IEditorZ
Returns:
A com.esri.arcgis.editor.esriZCaptureType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setZCaptureType

public void setZCaptureType(int zCaptureType)
                     throws IOException,
                            AutomationException
Determines method used for z-capture.

Product Availability

Available with ArcGIS Desktop.

Specified by:
setZCaptureType in interface IEditorZ
Parameters:
zCaptureType - A com.esri.arcgis.editor.esriZCaptureType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isUseZOffset

public boolean isUseZOffset()
                     throws IOException,
                            AutomationException
Indicates whether new z-values are modified by the ZOffset property.

Remarks

Use this property to define whether an offset (specified through IEditorZ::ZOffset) is applied to a z-value captured using the editor. Default value is FALSE.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isUseZOffset in interface IEditorZ
Returns:
The useZOffset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseZOffset

public void setUseZOffset(boolean useZOffset)
                   throws IOException,
                          AutomationException
Indicates whether new z-values are modified by the ZOffset property.

Remarks

This property will apply an offset to the z-value generated by the editor's ZCaptureType. Default value is 0. The ZOffset is not applied unless IEditorZ::UseZOffset is TRUE.

Product Availability

Available with ArcGIS Desktop.

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

getZOffset

public double getZOffset()
                  throws IOException,
                         AutomationException
Determines offset applied to z-value when new vertex is added to edit sketch.

Remarks

This property will apply an offset to the z-value generated by the editor's ZCaptureType. Default value is 0. The ZOffset is not applied unless IEditorZ::UseZOffset is TRUE.

Product Availability

Available with ArcGIS Desktop.

Specified by:
getZOffset in interface IEditorZ
Returns:
The zOffset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setZOffset

public void setZOffset(double zOffset)
                throws IOException,
                       AutomationException
Determines offset applied to z-value when new vertex is added to edit sketch.

Product Availability

Available with ArcGIS Desktop.

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

isUseZDrapingTolerance

public boolean isUseZDrapingTolerance()
                               throws IOException,
                                      AutomationException
Indicates whether the ZDrapingTolerance property is used when adding segments to the edit sketch.

Remarks

Determines whether a draping tolerance (defined in IEditorZ::ZDrapingTolerance) is applied to limit the number of points added to the sketch. Default value is FALSE.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isUseZDrapingTolerance in interface IEditorZ
Returns:
The useZDrapingTolerance
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseZDrapingTolerance

public void setUseZDrapingTolerance(boolean useZDrapingTolerance)
                             throws IOException,
                                    AutomationException
Indicates whether the ZDrapingTolerance property is used when adding segments to the edit sketch.

Product Availability

Available with ArcGIS Desktop.

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

getZDrapingTolerance

public double getZDrapingTolerance()
                            throws IOException,
                                   AutomationException
Determines the allowable error from the surface when draping.

Remarks

Double value that defines the maximum offset used to generalize the draped geometry. Will only remove points inserted via draping; does not affect any points explicitly defined by the user. Default value is 0. ZDrapingTolerance is only applied when IEditorZ::UseZDrapingTolerance is TRUE.

Product Availability

Available with ArcGIS Desktop.

Specified by:
getZDrapingTolerance in interface IEditorZ
Returns:
The zDrapingTolerance
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setZDrapingTolerance

public void setZDrapingTolerance(double zDrapingTolerance)
                          throws IOException,
                                 AutomationException
Determines the allowable error from the surface when draping.

Product Availability

Available with ArcGIS Desktop.

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

isDraping

public boolean isDraping()
                  throws IOException,
                         AutomationException
Indicates whether sketches are draped onto the surface.

Remarks

This property determines whether new segments added to the edit sketch are draped onto the defined surface. This behavior is only active when the editor's ZCaptureType is SurfaceZ. When draping is TRUE and the ZCaptureType is SurfaceZ then a new vertex will be inserted at each elevation change in the surface (triangle edges in TINs, cell boundaries in Rasters). When using very accurate surfaces, the number of points can be very high. To minimize the number of vertices inserted into the sketch, a tolerance can be defined using IEditorZ::ZDrapingTolerance; this uses the Douglas-Poiker algorithm to determine significant vertices in Z. The Default value is FALSE.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isDraping in interface IEditorZ
Returns:
The useDraping
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDraping

public void setDraping(boolean useDraping)
                throws IOException,
                       AutomationException
Indicates whether sketches are draped onto the surface.

Product Availability

Available with ArcGIS Desktop.

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

getSurface

public IFunctionalSurface getSurface()
                              throws IOException,
                                     AutomationException
Surface used for Z capture.

Remarks

This property defines the surface used to calculate new z-values. By default, the surface for the editor is built from any available sources (Terrains, Tins, and Rasters) added to the map.


If you choose to use a particular surface for z-capture, assign your surface to this property. This overrides the default "composite" surface defined by the available surfaces defined in your map. This surface does not need to be obtained through a layer in the map, although this is an efficient way to access surface-related information. Any layer associated with this surface does not need to be visible in order to be used for z-capture.

Setting this property to NULL will revert back to the "composite" surface defined by the surfaces in the map.


This property is only active when the editor's ZCaptureType is set to SurfaceZ.

Product Availability

Available with ArcGIS Desktop.

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

setSurfaceByRef

public void setSurfaceByRef(IFunctionalSurface surface)
                     throws IOException,
                            AutomationException
Surface used for Z capture.

Product Availability

Available with ArcGIS Desktop.

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

getZSnapSymbol

public IMarkerSymbol getZSnapSymbol()
                             throws IOException,
                                    AutomationException
Symbol used to indicate when vertex is snapped in Z.

Remarks

Use this property to change the symbol displayed when the editor snaps to a particular snap agent in Z coordinate space. The Z snap symbol is displayed if you are working with an edit sketch that is Z-aware and the Z-snapping is set. The ZSnapSymbol is identical to the editor's SnapSymbol by default; if SnapTips (IEditProperties2::SnapTips) are enabled, the Z-value of the snapped location is added to the SnapTip when displayed.

The snap agent knows to draw the snap symbol twice, once to get rid of the old symbol and once to draw the symbol at its new location. When setting the symbol, don't forget to set its ROP property (on the ISymbol interface) to esriROPNotXOrPen. This setting allows the symbol to erase itself when drawn twice in the same location.

Product Availability

Available with ArcGIS Desktop.

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

setZSnapSymbolByRef

public void setZSnapSymbolByRef(IMarkerSymbol symbol)
                         throws IOException,
                                AutomationException
Symbol used to indicate when vertex is snapped in Z.

Product Availability

Available with ArcGIS Desktop.

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

getNotifyZFinalize

public INotifyZFinalize getNotifyZFinalize()
                                    throws IOException,
                                           AutomationException
Callback used to notify if ZCapture mode fails.

Remarks

Callback mechanism used when Z capture fails; allows the registered client an opportunity to define Zs prior to editor applying default fallback behavior to ensure Z simplicity (ensures Zs are not defined as NaN and geometry is Z-aware). To receive notification when Z assignment fails, you will need to implement INotifyZFinalize on your class and assign a reference to this property. Only one class can modify or receive this notification; you should code defensively to ensure that another extension is not already plugged in. To unhook, set the NotifyZFinalize property to null.

Product Availability

Available with ArcGIS Desktop.

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

setNotifyZFinalizeByRef

public void setNotifyZFinalizeByRef(INotifyZFinalize callback)
                             throws IOException,
                                    AutomationException
Callback used to notify if ZCapture mode fails.

Product Availability

Available with ArcGIS Desktop.

Specified by:
setNotifyZFinalizeByRef in interface IEditorZ
Parameters:
callback - A reference to a com.esri.arcgis.editor.INotifyZFinalize (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

initializeFeatureConstruction

public IFeatureConstruction initializeFeatureConstruction()
                                                   throws IOException,
                                                          AutomationException
Initialize a FeatureConstruction object that will use the Editor's ZEnvironment settings.

Product Availability

Available with ArcGIS Desktop.

Specified by:
initializeFeatureConstruction in interface IEditorZ
Returns:
A reference to a com.esri.arcgis.geodatabase.IFeatureConstruction
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