|
|||||||||
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.display.IDynamicDisplayProxy
public class IDynamicDisplayProxy
Provides access to Dynamic Display.
IDynamicDisplay interface gives access to drawing methods that render dynamic items using map coordinates, as well as access to an instance of the Dynamic Glyph Factory object. The Dynamic Glyph Factory object is a singleton object, which is used to create and delete dynamic glyphs and then can be used with the dynamic symbols in order to render the Dynamic items.
The IDynamicDisplay interface is passed in to the callback draw methods: IDynamicLayer.DrawDynamicLayer, IDynamicMapEvents.BeforeDynamicDraw, and IDynamicMapEvents.AfterDynamicDraw.
The drawing methods can
only be used in one of the callback draw methods with the following
specific context:
Any usage of the DynamicDisplay drawing API (or OpenGL API) in any other context will result in an unknown behavior.
Field Summary | |
---|---|
boolean |
noncastable
|
Fields inherited from class com.esri.arcgis.interop.Dispatch |
---|
DISPATCH_METHOD, DISPATCH_PROPERTYGET, DISPATCH_PROPERTYPUT, DISPATCH_PROPERTYPUTREF, objRef |
Constructor Summary | |
---|---|
|
IDynamicDisplayProxy()
|
|
IDynamicDisplayProxy(Object obj)
|
protected |
IDynamicDisplayProxy(Object obj,
String iid)
|
Method Summary | |
---|---|
void |
addListener(String iidStr,
Object theListener,
Object theSource)
|
void |
drawLine(IPoint startPoint,
IPoint endPoint)
Draws a line between the specified points on the dynamic display. |
void |
drawMarker(IPoint point)
Draws a marker at the specified point on the dynamic display. |
void |
drawMultipleLines(IPointCollection pointCollection)
Draws specified lines on the dynamic display. |
void |
drawMultipleMarkers(IPointCollection pointCollection)
Draws a marker at the specified points on the dynamic display. |
void |
drawPolygon(IPointCollection pointCollection)
Draws specified polygon with fill and line on the dynamic display. |
void |
drawPolyline(IPointCollection pointCollection)
Draws specified polyline on the dynamic display. |
void |
drawRectangle(IEnvelope envelope)
Draws specified rectangle with fill and line on the dynamic display. |
void |
drawText(IPoint point,
String text)
Draws text at the specified point on the dynamic display. |
IDynamicGlyphFactory |
getDynamicGlyphFactory()
Retrieves the dynamic glyph factory. |
void |
removeListener(String iidStr,
Object theListener)
|
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 IDynamicDisplayProxy()
public IDynamicDisplayProxy(Object obj) throws IOException
IOException
protected IDynamicDisplayProxy(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 IDynamicGlyphFactory getDynamicGlyphFactory() throws IOException, AutomationException
Use the dynamic glyph factory object in order to create and delete dynamic glyphs. The dynamic glyphs can be used with the Dynamic Symbols in order to render Dynamic Items.
The Dynamic Glyphs Factory is a singleton object; therefore you can always co-create it in order to use it to create and delete dynamic glyphs.
Performance wise, it is preferable to create the dynamic glyphs in the context of the IDynamicLayer’s DrawDynamicLayer method, in the esriDDPImmediate dynamic-draw-phase, or in the context of the IDynamicMapEvents BeofreDynamicDraw method, in the esriDMDPDynamicLayers dynamic-map-draw-phase, while casting the passed in IDynamicDisplay interface to IDynamicGlyphFactory.
getDynamicGlyphFactory
in interface IDynamicDisplay
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void drawMultipleMarkers(IPointCollection pointCollection) throws IOException, AutomationException
The markers will be rendered according to the current Dynamic Marker Symbol attributes, as described in esriDynamicSymbolType constants.
Using this method is useful when you need to draw multiple markers that look the same in different locations, for example drawing indication markers on a polyline's or a polygon's vertices.
In order to manage your dynamic items you should keep them in arrays of WKSPoint and have an instance of a Multipoint class (as IPointCollection). In order efficiently update the items you should be using IGeometryBridge2 interface
drawMultipleMarkers
in interface IDynamicDisplay
pointCollection
- A reference to a com.esri.arcgis.geometry.IPointCollection (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void drawMarker(IPoint point) throws IOException, AutomationException
The marker will be rendered according to the current Dynamic Marker Symbol attributes, as described in esriDynamicSymbolType constants.
drawMarker
in interface IDynamicDisplay
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 drawPolygon(IPointCollection pointCollection) throws IOException, AutomationException
The fill will be rendered according to the current Dynamic Fill Symbol attributes, as described inesriDynamicSymbolType, and the lines will be rendered according to the current Dynamic Line Symbol attributes, as described in esriDynamicSymbolType
In order to manage your dynamic polygon, you should keep it as an array of WKSPoint (do not forget to copy the first point at the end of the array) and have an instance of a Polygon geometry class in your application (as IPointCollection). In order efficiently update the polygon geometry you should be using IGeometryBridge2 interface.
drawPolygon
in interface IDynamicDisplay
pointCollection
- A reference to a com.esri.arcgis.geometry.IPointCollection (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void drawMultipleLines(IPointCollection pointCollection) throws IOException, AutomationException
The lines will be rendered according to the current Dynamc Line Symbol attributes, as described in esriDynamicSymbolType constants.
drawMultipleLines
in interface IDynamicDisplay
pointCollection
- A reference to a com.esri.arcgis.geometry.IPointCollection (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void drawLine(IPoint startPoint, IPoint endPoint) throws IOException, AutomationException
The line will be rendered according to the current Dynamic Line Symbol attributes, as described in esriDynamicSymbolType constants.
drawLine
in interface IDynamicDisplay
startPoint
- A reference to a com.esri.arcgis.geometry.IPoint (in)endPoint
- 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 drawPolyline(IPointCollection pointCollection) throws IOException, AutomationException
The lines will be rendered according to the current Dynamic Line Symbol attributes, as described in esriDynamicSymbolType constants.
In order to manage your dynamic polyline, you should keep it as an array of WKSPoint and have an instance of a Polyline geometry class in your application (as IPointCollection). In order efficiently update the polyline geometry you should be using IGeometryBridge2 interface
drawPolyline
in interface IDynamicDisplay
pointCollection
- A reference to a com.esri.arcgis.geometry.IPointCollection (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void drawRectangle(IEnvelope envelope) throws IOException, AutomationException
Similar to the DrawPolygon method, the fill will be rendered according to the current Dynamic Fill Symbol attributes, and the lines will be rendered according to the current Dynamic Line Symbol attributes, as described in esriDynamicSymbolType constants.
drawRectangle
in interface IDynamicDisplay
envelope
- A reference to a com.esri.arcgis.geometry.IEnvelope (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void drawText(IPoint point, String text) throws IOException, AutomationException
The text will be rendered according to the current Dynamic Text Symbol attributes, as described in esriDynamicSymbolType constants.
Using the Dynamic Text Symbol, you can set the text to have a text box that will use the Dynamic Fill Symbol for Background fill, and the Dynamic Line Symbol for outline. Please refer to IDynamicSymbolProperties2.TextBoxUseDynamicFillSymbol and IDynamicSymbolProperties2.TextBoxUseDynamicLineSymbol boolean properties.
drawText
in interface IDynamicDisplay
point
- A reference to a com.esri.arcgis.geometry.IPoint (in)text
- The text (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |