|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.esri.arcgis.interop.Dispatch com.esri.arcgis.editor.IEditorZProxy
public class IEditorZProxy
Provides access to members that access and manipulate the z-environment of the editor.
This interface is new at ArcGIS 9.3.
For more information on capturing and editing features containing z values, refer to How to work with Z-values in the Editor.
Field Summary | |
---|---|
boolean |
noncastable
|
Fields inherited from class com.esri.arcgis.interop.Dispatch |
---|
DISPATCH_METHOD, DISPATCH_PROPERTYGET, DISPATCH_PROPERTYPUT, DISPATCH_PROPERTYPUTREF, objRef |
Constructor Summary | |
---|---|
|
IEditorZProxy()
|
|
IEditorZProxy(Object obj)
|
protected |
IEditorZProxy(Object obj,
String iid)
|
Method Summary | |
---|---|
void |
addListener(String iidStr,
Object theListener,
Object theSource)
|
void |
applyZ(IPoint point)
Applies editor's Z-capture logic to point if it isn't already z-aware. |
void |
drapeGeometry(IGeometry geometry,
boolean addVertices,
IGeometry[] outputGeometry)
Drapes a geometry to the current surface.. |
void |
finalizeZs(IGeometry geometry)
Resolves NaN Zs to definite values. |
INotifyZFinalize |
getNotifyZFinalize()
Callback used to notify if ZCapture mode fails. |
IFunctionalSurface |
getSurface()
Surface used for Z capture. |
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. |
IFeatureConstruction |
initializeFeatureConstruction()
Initialize a FeatureConstruction object that will use the Editor's ZEnvironment settings. |
boolean |
isDraping()
Indicates whether sketches are draped onto the surface. |
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. |
void |
removeListener(String iidStr,
Object theListener)
|
void |
setDraping(boolean useDraping)
Indicates whether sketches are draped onto the surface. |
void |
setNotifyZFinalizeByRef(INotifyZFinalize callback)
Callback used to notify if ZCapture mode fails. |
void |
setSurfaceByRef(IFunctionalSurface surface)
Surface used for Z capture. |
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 |
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. |
Methods inherited from class com.esri.arcgis.interop.Dispatch |
---|
bindUsingMoniker, constructVtblPosTable, convertToNative, cookieForListener, createDispatch, createObjrefMonikerDisplayName, equals, getActiveObject, getActiveObject, getDefaultProperty, getDispatchIdOfName, getLastErrorCode, getMtsObjectContext, getObjRef, getPropertyByName, getPropertyByName, getVtblPos, hashCode, initDispatch, invoke, invokeMethodByName, invokeMethodByName, invokeMethodByName, invokePropertyGetByName, invokePropertyPutByName, invokePropertyPutByRefByName, isNativeMode, isObjRef, optimizedVtblInvoke, queryInterface, readExternal, release, setNativeMode, setPropertyByName, toString, vtblInvoke, writeExternal |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public boolean noncastable
Constructor Detail |
---|
public IEditorZProxy()
public IEditorZProxy(Object obj) throws IOException
IOException
protected IEditorZProxy(Object obj, String iid) throws IOException
IOException
Method Detail |
---|
public void addListener(String iidStr, Object theListener, Object theSource) throws IOException
addListener
in class com.esri.arcgis.interop.Dispatch
IOException
public void removeListener(String iidStr, Object theListener) throws IOException
removeListener
in class com.esri.arcgis.interop.Dispatch
IOException
public void drapeGeometry(IGeometry geometry, boolean addVertices, IGeometry[] outputGeometry) throws IOException, AutomationException
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.
drapeGeometry
in interface IEditorZ
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)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void applyZ(IPoint point) throws IOException, AutomationException
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.
applyZ
in interface IEditorZ
point
- A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void finalizeZs(IGeometry geometry) throws IOException, AutomationException
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).
finalizeZs
in interface IEditorZ
geometry
- A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getZCaptureType() throws IOException, AutomationException
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.
getZCaptureType
in interface IEditorZ
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setZCaptureType(int zCaptureType) throws IOException, AutomationException
setZCaptureType
in interface IEditorZ
zCaptureType
- A com.esri.arcgis.editor.esriZCaptureType constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isUseZOffset() throws IOException, AutomationException
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.
isUseZOffset
in interface IEditorZ
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setUseZOffset(boolean useZOffset) throws IOException, AutomationException
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.
setUseZOffset
in interface IEditorZ
useZOffset
- The useZOffset (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getZOffset() throws IOException, AutomationException
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.
getZOffset
in interface IEditorZ
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setZOffset(double zOffset) throws IOException, AutomationException
setZOffset
in interface IEditorZ
zOffset
- The zOffset (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isUseZDrapingTolerance() throws IOException, AutomationException
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.
isUseZDrapingTolerance
in interface IEditorZ
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setUseZDrapingTolerance(boolean useZDrapingTolerance) throws IOException, AutomationException
setUseZDrapingTolerance
in interface IEditorZ
useZDrapingTolerance
- The useZDrapingTolerance (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getZDrapingTolerance() throws IOException, AutomationException
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.
getZDrapingTolerance
in interface IEditorZ
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setZDrapingTolerance(double zDrapingTolerance) throws IOException, AutomationException
setZDrapingTolerance
in interface IEditorZ
zDrapingTolerance
- The zDrapingTolerance (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isDraping() throws IOException, AutomationException
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.
isDraping
in interface IEditorZ
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setDraping(boolean useDraping) throws IOException, AutomationException
setDraping
in interface IEditorZ
useDraping
- The useDraping (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IFunctionalSurface getSurface() throws IOException, AutomationException
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.
getSurface
in interface IEditorZ
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setSurfaceByRef(IFunctionalSurface surface) throws IOException, AutomationException
setSurfaceByRef
in interface IEditorZ
surface
- A reference to a com.esri.arcgis.geometry.IFunctionalSurface (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IMarkerSymbol getZSnapSymbol() throws IOException, AutomationException
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.
getZSnapSymbol
in interface IEditorZ
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setZSnapSymbolByRef(IMarkerSymbol symbol) throws IOException, AutomationException
setZSnapSymbolByRef
in interface IEditorZ
symbol
- A reference to a com.esri.arcgis.display.IMarkerSymbol (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public INotifyZFinalize getNotifyZFinalize() throws IOException, AutomationException
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.
getNotifyZFinalize
in interface IEditorZ
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setNotifyZFinalizeByRef(INotifyZFinalize callback) throws IOException, AutomationException
setNotifyZFinalizeByRef
in interface IEditorZ
callback
- A reference to a com.esri.arcgis.editor.INotifyZFinalize (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IFeatureConstruction initializeFeatureConstruction() throws IOException, AutomationException
initializeFeatureConstruction
in interface IEditorZ
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |