com.esri.arcgis.schematic
Class NgDrawing

java.lang.Object
  extended by com.esri.arcgis.schematic.NgDrawing
All Implemented Interfaces:
com.esri.arcgis.interop.RemoteObjRef, INgDrawing, INgElement, Serializable

public class NgDrawing
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, INgDrawing, INgElement

Graphic drawing object.

Product Availability

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

See Also:
Serialized Form

Constructor Summary
NgDrawing(Object obj)
          Construct a NgDrawing using a reference to such an object returned from ArcGIS Engine or Server.
 
Method Summary
 void center()
          Centers the element in all the views where it displays while redrawing it.
 INgFlag createFlag(INgFlagModel flagModel, int mode, int poleVisibility)
          Creates a flag based on the flag model 'flagModel' for the element.
 void deleteUserData(INgUserData userData)
          Deletes the userdata value for the element.
 void display(boolean redraw)
          Displays the element in all the views it must appear while redrawing it.
 boolean equals(Object o)
          Compare this object with another
 String getAttributeValue(String attributeName)
          Returns the value of the attribute named 'attributeName' for the element.
 Object getCurrentEffect(int effect)
          Returns the current 'effValue' value for the effect 'effect' set for the drawing (see esriNgDrawingEffect).
 INgDiagram getDiagram()
          Diagram that contains the drawing.
 Object getEffect(int effect)
          Returns the effect 'effect' set for the drawing (see esriNgDrawingEffect).
 INgElementType getElementType()
          Element type that implements the drawing.
 INgFlag getFlag(INgFlagModel flagModel)
          Returns the flag based on the flag model 'flagModel' that is currently attached to the element.
 INgFlags getFlags()
          List of the flags attached to the element.
 INgPoint getInitialPosition()
          Initial position of the drawing.
 double getInitialRotation()
          Initial rotation of the drawing.
 INgPoints getLabelBoundingBox(INgView view, INgProperty prop)
          Returns the label bounding box of the 'prop' property associated with the element in the view 'view'.
 Object getLabelEffect(INgProperty prop, int effect)
          Returns the value of the effect 'effect' set for the label of the 'prop' property associated with the element.
 INgPoint getLabelPosition(INgView view, INgProperty prop)
          Returns the point defining the position of the 'prop' property label for the element in the view 'view'.
 String getName()
          Name of the drawing.
 boolean getPortPosition(INgView view, int numPort, int type, INgPoint[] point)
          Returns the position 'point' of the port 'numPort', of type 'type' (see esriNgPortType) associated with the drawing in the view 'view'.
 Object getPropertyValue(INgProperty prop)
          Returns the value of the 'prop' property for the element.
 int getType()
          Type of the element type.
 Object getUserDataValue(INgUserData userData)
          Returns the value of the 'userData' userdata for the element.
 double getX()
          X cartesian coordinate of the drawing.
 double getY()
          Y cartesian coordinate of the drawing.
 int hashCode()
          the hashcode for this object
 boolean isEffectSet(int effect)
          Indicates if the effect 'effect' related to the drawing is set (see esriNgDrawingEffect).
 boolean isLabelEffectSet(INgProperty prop, int effect)
          Indicates if the effect 'effect' defined for the label of the 'prop' property associated with the element is set.
 boolean isLabelMoved(INgProperty prop)
          Indicates if the label of the 'prop' property associated with the element has been moved.
 boolean isSelected()
          Indicates if the element is selected.
 void move(double x, double y, int moveMode)
          Moves the drawing to the (X,Y) relative or absolute position.
 void moveLabel(INgProperty prop, double x, double y, int mode)
          Moves the label of the 'prop' property associated with the element to the (X,Y) relative or absolute position.
 void refresh(boolean redraw)
          Updates the element in all the views where it appears, and redraws it while reflecting the modifications it may have undergone in the database.
 void remove(boolean redraw)
          Removes graphically the element in all the views where it appears and redraws it, after the application has removed the associated object from the database.
 void removeEffect(int effect)
          Removes the effects or restores the default effect 'effect' set for the drawing.
 void removeSubSymbolEffect(String subName, int effect)
          Removes the effect 'effect' set for the sub-symbol named 'subName' that composes the symbol used to represent the drawing.
 void restoreInitialPosition(int modeIfNotSet, int modeIfSet)
          Restores the drawing to its initially defined position.
 void select(boolean redraw)
          Selects the element in all the views where it displays and redraws it.
 void setEffect(int effect, Object effValue)
          Modifies the effect 'effect' set for the drawing (see esriNgDrawingEffect).
 void setInitialPosition(INgPoint pVal)
          Initial position of the drawing.
 void setInitialRotation(double pVal)
          Initial rotation of the drawing.
 void setLabelEffect(INgProperty prop, int effect, Object effValue)
          Modifies the effect 'effect' set for the label of the 'prop' property associated with the element.
 void setPropertyValue(INgProperty prop, Object propertyValue)
          Modifies the value of the 'prop' property for the element.
 void setSubSymbolEffect(String subName, int effect, Object effValue)
          Sets the effect 'effect' for the sub-symbol 'subName' that composes the symbol used to represent the drawing (see esriNgSubSymbolEffect).
 void setUserDataValue(INgUserData userData, Object userDataValue)
          Modifies the value of the 'userData' userdata for the element.
 void undisplay(boolean redraw)
          Removes graphically the element in all the views where it appears and redraws it.
 void unselect(boolean redraw)
          Deselects the element in all the views where it displays and redraws it.
 void unsetLabelEffect(INgProperty prop, int effect)
          Unsets the effect 'effect' set for the label of the 'prop' property associated with the element.
 
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

NgDrawing

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

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

Throws:
IOException - if there are interop problems NgDrawing theNgDrawing = (NgDrawing) 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

getElementType

public INgElementType getElementType()
                              throws IOException,
                                     AutomationException
Element type that implements the drawing.

Product Availability

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

Specified by:
getElementType in interface INgDrawing
Specified by:
getElementType in interface INgElement
Returns:
A reference to a com.esri.arcgis.schematic.INgElementType
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getName

public String getName()
               throws IOException,
                      AutomationException
Name of the drawing.

Description

This name is defined when the drawing is created:

- either by triggering the INgDiagram CreateDrawing method or INgProjectEvents NameOfDigitDrawing event in the code,

- or when the drawing element type is created through ArcGIS Schematics Designer.

Product Availability

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

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

getX

public double getX()
            throws IOException,
                   AutomationException
X cartesian coordinate of the drawing.

Product Availability

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

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

getY

public double getY()
            throws IOException,
                   AutomationException
Y cartesian coordinate of the drawing.

Product Availability

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

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

getDiagram

public INgDiagram getDiagram()
                      throws IOException,
                             AutomationException
Diagram that contains the drawing.

Product Availability

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

Specified by:
getDiagram in interface INgDrawing
Specified by:
getDiagram in interface INgElement
Returns:
A reference to a com.esri.arcgis.schematic.INgDiagram
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

move

public void move(double x,
                 double y,
                 int moveMode)
          throws IOException,
                 AutomationException
Moves the drawing to the (X,Y) relative or absolute position.

Description

The values taken by the moveMode parameter are detailed in the esriNgMoveModeConstants section. The default value for moveMode is esriNgAbsoluteMove, which means that, by default, the drawing is moved to the (X,Y) absolute position.

Remarks

If there are schematic relations between schematics objects contained in a schematic diagram, it’s the developer responsibility to call the appropriate ISchematicRelationController or ISchematicRelationManager methods for the related objects as the containers to be automatically redrawn when he uses the INgDrawing:Move method. Please also note that programming the relations redraw on the INgProjectEvents::OnMoveElements or ISchematicRelationControllerEvent::OnMoveElements events will be completely unuseful because these events are only triggered when schematic elements are moved using the GUI tools; that is when end-users move schematic elements using the mouse or the keyboard arrows. So when elements are moved by programming using any "Move" method, the custom code specified on these events will be not fired. In this case, you must either force the redraw at the end of the move operations sequences in your custom procedure or customize the SchematicAlgorithmEvents::AfterExecuteAlgorithm event (when the "Move" methods are called during a custom algorithm).

Product Availability

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

Specified by:
move in interface INgDrawing
Parameters:
x - The x (in)
y - The y (in)
moveMode - A com.esri.arcgis.schematic.esriNgMoveMode constant (in, optional, pass 2085 if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgProjectEvents.onMoveElements(com.esri.arcgis.schematic.INgProjectEventsOnMoveElementsEvent)

getEffect

public Object getEffect(int effect)
                 throws IOException,
                        AutomationException
Returns the effect 'effect' set for the drawing (see esriNgDrawingEffect).

Product Availability

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

Specified by:
getEffect in interface INgDrawing
Parameters:
effect - A com.esri.arcgis.schematic.esriNgDrawingEffect constant (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgDrawing.setEffect(int, java.lang.Object), INgDrawing.isEffectSet(int), INgDrawing.getCurrentEffect(int), INgDrawing.removeEffect(int)

setEffect

public void setEffect(int effect,
                      Object effValue)
               throws IOException,
                      AutomationException
Modifies the effect 'effect' set for the drawing (see esriNgDrawingEffect).

Product Availability

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

Specified by:
setEffect in interface INgDrawing
Parameters:
effect - A com.esri.arcgis.schematic.esriNgDrawingEffect constant (in)
effValue - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgDrawing.getEffect(int), INgDrawing.isEffectSet(int), INgDrawing.removeEffect(int)

removeEffect

public void removeEffect(int effect)
                  throws IOException,
                         AutomationException
Removes the effects or restores the default effect 'effect' set for the drawing.

Description

Note that removing an effect that is always set, returns the drawing effect to the default effect value and removing an effect that is not set by default, really removes the drawing effect.

Product Availability

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

Specified by:
removeEffect in interface INgDrawing
Parameters:
effect - A com.esri.arcgis.schematic.esriNgDrawingEffect constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgDrawing.getEffect(int), INgDrawing.setEffect(int, java.lang.Object), INgDrawing.isEffectSet(int)

isEffectSet

public boolean isEffectSet(int effect)
                    throws IOException,
                           AutomationException
Indicates if the effect 'effect' related to the drawing is set (see esriNgDrawingEffect).

Description

By default, Schematics automatically sets default values for some drawing effects (see the List of the drawing effect default values, below). For all these effects, the IsEffectSet method returns TRUE.

For the others effects (those that are not set by default), the IsEffectSet method returns TRUE only if the effect was set by calling the INgDrawing SetEffect method in the project.

Note that even if the IsEffectSet method returns FALSE for a given effect (for example, esriNgDrawingXScaling), the GetCurrentEffect method can return a value! GetCurrentEffect returns the effect currently set for the drawing. This effect may have been set either through the effect definition for its associated element type, or through the effect definition for its associated properties.


List of the drawing effect default values for the effects that are already set

esriNgDrawingDetectability: esriNgDetectable.

esriNgDrawingHighlightedState: esriNgHighlighted

esriNgDrawingMobility: esriNgMovable.

esriNgDrawingPriority: 202 or more

esriNgDrawingResizability: esriNgResizable

esriNgDrawingSelectability: esriNgSelectable

esriNgDrawingVisibility: esriNgVisible

For more details, see Drawing Effects Constants Definition.

Product Availability

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

Specified by:
isEffectSet in interface INgDrawing
Parameters:
effect - A com.esri.arcgis.schematic.esriNgDrawingEffect constant (in)
Returns:
The isSet
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgDrawing.getEffect(int), INgDrawing.setEffect(int, java.lang.Object), INgDrawing.removeEffect(int)

setSubSymbolEffect

public void setSubSymbolEffect(String subName,
                               int effect,
                               Object effValue)
                        throws IOException,
                               AutomationException
Sets the effect 'effect' for the sub-symbol 'subName' that composes the symbol used to represent the drawing (see esriNgSubSymbolEffect).

Product Availability

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

Specified by:
setSubSymbolEffect in interface INgDrawing
Parameters:
subName - The subName (in)
effect - A com.esri.arcgis.schematic.esriNgSubSymbolEffect constant (in)
effValue - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeSubSymbolEffect

public void removeSubSymbolEffect(String subName,
                                  int effect)
                           throws IOException,
                                  AutomationException
Removes the effect 'effect' set for the sub-symbol named 'subName' that composes the symbol used to represent the drawing.

Product Availability

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

Specified by:
removeSubSymbolEffect in interface INgDrawing
Parameters:
subName - The subName (in)
effect - A com.esri.arcgis.schematic.esriNgSubSymbolEffect constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgDrawing.setSubSymbolEffect(String, int, java.lang.Object), INgElementType.removeSubSymbolEffect(String, int)

getPortPosition

public boolean getPortPosition(INgView view,
                               int numPort,
                               int type,
                               INgPoint[] point)
                        throws IOException,
                               AutomationException
Returns the position 'point' of the port 'numPort', of type 'type' (see esriNgPortType) associated with the drawing in the view 'view'.

Description

Note that as a link cannot be connected to a drawing, there is no reason to use the esriNgLinkPort value for the Type port parameter even if Schematics does not prevent its use.

Product Availability

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

Specified by:
getPortPosition in interface INgDrawing
Parameters:
view - A reference to a com.esri.arcgis.schematic.INgView (in)
numPort - The numPort (in)
type - A com.esri.arcgis.schematic.esriNgPortType constant (in)
point - A reference to a com.esri.arcgis.schematic.INgPoint (out: use single element array)
Returns:
The found
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInitialPosition

public INgPoint getInitialPosition()
                            throws IOException,
                                   AutomationException
Initial position of the drawing.

Product Availability

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

Specified by:
getInitialPosition in interface INgDrawing
Returns:
A reference to a com.esri.arcgis.schematic.INgPoint
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgDrawing.restoreInitialPosition(int, int)

setInitialPosition

public void setInitialPosition(INgPoint pVal)
                        throws IOException,
                               AutomationException
Initial position of the drawing.

Product Availability

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

Specified by:
setInitialPosition in interface INgDrawing
Parameters:
pVal - A reference to a com.esri.arcgis.schematic.INgPoint (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInitialRotation

public double getInitialRotation()
                          throws IOException,
                                 AutomationException
Initial rotation of the drawing.

Product Availability

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

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

setInitialRotation

public void setInitialRotation(double pVal)
                        throws IOException,
                               AutomationException
Initial rotation of the drawing.

Product Availability

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

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

restoreInitialPosition

public void restoreInitialPosition(int modeIfNotSet,
                                   int modeIfSet)
                            throws IOException,
                                   AutomationException
Restores the drawing to its initially defined position.

Description

If the drawing was positioned using its database coordinates, the modelfSet parameter must be specified so that its position is modified and the modelfNotSet parameter can be ignored.

If the drawing was positioned without using its database coordinates, then the modelfNotSet parameter must be specified and the modelfSet parameter can be ignored.

At all events,

- The esriNgDB parameter value causes the drawing to be repositioned based on its database coordinate values (if modeIfSet is used) or to be placed on the 0, 0 coordinate value position (if modeIfNotSet is used).

- The esriNgCenter parameter value causes the drawing to be relocated on a position averaging the current position of the neighboring elements(modeIfSet case or modeIfNotSet case)

- The esriNgNothing parameter value does not cause the drawing to be relocated (modeIfSet case or modeIfNotSet case). The drawing retains its current position.

Product Availability

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

Specified by:
restoreInitialPosition in interface INgDrawing
Parameters:
modeIfNotSet - A com.esri.arcgis.schematic.esriNgInitialPositionMode constant (in, optional, pass 0 if not required)
modeIfSet - A com.esri.arcgis.schematic.esriNgInitialPositionMode constant (in, optional, pass 0 if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgDrawing.getInitialPosition(), INgDiagram.restoreInitialPosition(int, int)

getCurrentEffect

public Object getCurrentEffect(int effect)
                        throws IOException,
                               AutomationException
Returns the current 'effValue' value for the effect 'effect' set for the drawing (see esriNgDrawingEffect).

Description

Current effects positioned for the drawing may have been set either when defining its associated element type's effects, either when defining its associated properties' effects, or when defining the drawing itself.

Product Availability

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

Specified by:
getCurrentEffect in interface INgDrawing
Parameters:
effect - A com.esri.arcgis.schematic.esriNgDrawingEffect constant (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgDrawing.getEffect(int), INgDrawing.isEffectSet(int), INgDrawing.removeEffect(int)

getType

public int getType()
            throws IOException,
                   AutomationException
Type of the element type.

Product Availability

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

Specified by:
getType in interface INgElement
Returns:
A com.esri.arcgis.schematic.esriNgElementTypeEnum constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFlags

public INgFlags getFlags()
                  throws IOException,
                         AutomationException
List of the flags attached to the element.

Product Availability

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

Specified by:
getFlags in interface INgElement
Returns:
A reference to a com.esri.arcgis.schematic.INgFlags
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

unselect

public void unselect(boolean redraw)
              throws IOException,
                     AutomationException
Deselects the element in all the views where it displays and redraws it.

Description

The 'redraw' parameter is optional; its default value is True.

Product Availability

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

Specified by:
unselect in interface INgElement
Parameters:
redraw - The redraw (in, optional, pass true if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.isSelected(), INgElement.select(boolean)

center

public void center()
            throws IOException,
                   AutomationException
Centers the element in all the views where it displays while redrawing it.

Product Availability

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

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

select

public void select(boolean redraw)
            throws IOException,
                   AutomationException
Selects the element in all the views where it displays and redraws it.

Description

The Redraw parameter is optional; its default value is TRUE.

Product Availability

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

Specified by:
select in interface INgElement
Parameters:
redraw - The redraw (in, optional, pass true if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.isSelected(), INgElement.unselect(boolean)

refresh

public void refresh(boolean redraw)
             throws IOException,
                    AutomationException
Updates the element in all the views where it appears, and redraws it while reflecting the modifications it may have undergone in the database.

Description

The 'redraw' parameter is optional; its default value is True.

Product Availability

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

Specified by:
refresh in interface INgElement
Parameters:
redraw - The redraw (in, optional, pass true if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.display(boolean)

undisplay

public void undisplay(boolean redraw)
               throws IOException,
                      AutomationException
Removes graphically the element in all the views where it appears and redraws it. The associated object in the database is not removed.

Description

By default, this method also redraws the element: the default value for the optional ‘redraw’ parameter is TRUE.

Product Availability

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

Specified by:
undisplay in interface INgElement
Parameters:
redraw - The redraw (in, optional, pass true if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.remove(boolean)

display

public void display(boolean redraw)
             throws IOException,
                    AutomationException
Displays the element in all the views it must appear while redrawing it.

Description

The Redraw parameter is optional; its default value is TRUE.

Product Availability

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

Specified by:
display in interface INgElement
Parameters:
redraw - The redraw (in, optional, pass true if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.refresh(boolean)

remove

public void remove(boolean redraw)
            throws IOException,
                   AutomationException
Removes graphically the element in all the views where it appears and redraws it, after the application has removed the associated object from the database.

Description

The default value for the optional redraw parameter is True.

When this method is triggered, the IsElementRemoved event is automatically fired: the graphic removal is effective only if the event-procedure returns True.

Product Availability

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

Specified by:
remove in interface INgElement
Parameters:
redraw - The redraw (in, optional, pass true if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.undisplay(boolean)

createFlag

public INgFlag createFlag(INgFlagModel flagModel,
                          int mode,
                          int poleVisibility)
                   throws IOException,
                          AutomationException
Creates a flag based on the flag model 'flagModel' for the element.

Description

The flag created is based on the flagModel flag model and is connected to the element using the esriNgStandard or esriNgShortest mode (see esriNgFlagAttachementMode help-page). The pole connecting the flag to the element can be visible or invisible (see esriNgVisibility help-page).

Remarks

The flagModel INgFlagModel interface can have been defined through ArcGIS Schematics Designer or in the project code by calling the INgProjectBuilder CreateFlagModel method.

If you want to display each element of a specific type with a flag, you can directly use INgElementType AddFlagModel method.

Product Availability

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

Specified by:
createFlag in interface INgElement
Parameters:
flagModel - A reference to a com.esri.arcgis.schematic.INgFlagModel (in)
mode - A com.esri.arcgis.schematic.esriNgFlagAttachementMode constant (in, optional, pass 2056 if not required)
poleVisibility - A com.esri.arcgis.schematic.esriNgVisibility constant (in, optional, pass 1 if not required)
Returns:
A reference to a com.esri.arcgis.schematic.INgFlag
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.getFlag(com.esri.arcgis.schematic.INgFlagModel)

getFlag

public INgFlag getFlag(INgFlagModel flagModel)
                throws IOException,
                       AutomationException
Returns the flag based on the flag model 'flagModel' that is currently attached to the element.

Product Availability

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

Specified by:
getFlag in interface INgElement
Parameters:
flagModel - A reference to a com.esri.arcgis.schematic.INgFlagModel (in)
Returns:
A reference to a com.esri.arcgis.schematic.INgFlag
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.createFlag(com.esri.arcgis.schematic.INgFlagModel, int, int)

getPropertyValue

public Object getPropertyValue(INgProperty prop)
                        throws IOException,
                               AutomationException
Returns the value of the 'prop' property for the element.

Product Availability

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

Specified by:
getPropertyValue in interface INgElement
Parameters:
prop - A reference to a com.esri.arcgis.schematic.INgProperty (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.getAttributeValue(String), INgElement.getUserDataValue(com.esri.arcgis.schematic.INgUserData)

setPropertyValue

public void setPropertyValue(INgProperty prop,
                             Object propertyValue)
                      throws IOException,
                             AutomationException
Modifies the value of the 'prop' property for the element.

Product Availability

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

Specified by:
setPropertyValue in interface INgElement
Parameters:
prop - A reference to a com.esri.arcgis.schematic.INgProperty (in)
propertyValue - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.setUserDataValue(com.esri.arcgis.schematic.INgUserData, java.lang.Object)

getUserDataValue

public Object getUserDataValue(INgUserData userData)
                        throws IOException,
                               AutomationException
Returns the value of the 'userData' userdata for the element.

Product Availability

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

Specified by:
getUserDataValue in interface INgElement
Parameters:
userData - A reference to a com.esri.arcgis.schematic.INgUserData (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.getPropertyValue(com.esri.arcgis.schematic.INgProperty), INgElement.getAttributeValue(String)

setUserDataValue

public void setUserDataValue(INgUserData userData,
                             Object userDataValue)
                      throws IOException,
                             AutomationException
Modifies the value of the 'userData' userdata for the element.

Product Availability

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

Specified by:
setUserDataValue in interface INgElement
Parameters:
userData - A reference to a com.esri.arcgis.schematic.INgUserData (in)
userDataValue - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.setPropertyValue(com.esri.arcgis.schematic.INgProperty, java.lang.Object)

setLabelEffect

public void setLabelEffect(INgProperty prop,
                           int effect,
                           Object effValue)
                    throws IOException,
                           AutomationException
Modifies the effect 'effect' set for the label of the 'prop' property associated with the element.

Product Availability

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

Specified by:
setLabelEffect in interface INgElement
Parameters:
prop - A reference to a com.esri.arcgis.schematic.INgProperty (in)
effect - A com.esri.arcgis.schematic.esriNgLabelEffect constant (in)
effValue - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.getLabelEffect(com.esri.arcgis.schematic.INgProperty, int), INgElement.unsetLabelEffect(com.esri.arcgis.schematic.INgProperty, int)

getLabelEffect

public Object getLabelEffect(INgProperty prop,
                             int effect)
                      throws IOException,
                             AutomationException
Returns the value of the effect 'effect' set for the label of the 'prop' property associated with the element.

Product Availability

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

Specified by:
getLabelEffect in interface INgElement
Parameters:
prop - A reference to a com.esri.arcgis.schematic.INgProperty (in)
effect - A com.esri.arcgis.schematic.esriNgLabelEffect constant (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.setLabelEffect(com.esri.arcgis.schematic.INgProperty, int, java.lang.Object), INgElement.unsetLabelEffect(com.esri.arcgis.schematic.INgProperty, int)

getLabelPosition

public INgPoint getLabelPosition(INgView view,
                                 INgProperty prop)
                          throws IOException,
                                 AutomationException
Returns the point defining the position of the 'prop' property label for the element in the view 'view'.

Product Availability

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

Specified by:
getLabelPosition in interface INgElement
Parameters:
view - A reference to a com.esri.arcgis.schematic.INgView (in)
prop - A reference to a com.esri.arcgis.schematic.INgProperty (in)
Returns:
A reference to a com.esri.arcgis.schematic.INgPoint
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.moveLabel(com.esri.arcgis.schematic.INgProperty, double, double, int)

moveLabel

public void moveLabel(INgProperty prop,
                      double x,
                      double y,
                      int mode)
               throws IOException,
                      AutomationException
Moves the label of the 'prop' property associated with the element to the (X,Y) relative or absolute position.

Description

Whether that move is relative or absolute depends on the value taken by the 'mode' parameter (see esriNgMoveMode help-page).

Product Availability

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

Specified by:
moveLabel in interface INgElement
Parameters:
prop - A reference to a com.esri.arcgis.schematic.INgProperty (in)
x - The x (in)
y - The y (in)
mode - A com.esri.arcgis.schematic.esriNgMoveMode constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.isLabelMoved(com.esri.arcgis.schematic.INgProperty), INgElement.getLabelPosition(com.esri.arcgis.schematic.INgView, com.esri.arcgis.schematic.INgProperty)

isSelected

public boolean isSelected()
                   throws IOException,
                          AutomationException
Indicates if the element is selected.

Product Availability

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

Specified by:
isSelected in interface INgElement
Returns:
The isSelected
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.unselect(boolean), INgElement.select(boolean)

getAttributeValue

public String getAttributeValue(String attributeName)
                         throws IOException,
                                AutomationException
Returns the value of the attribute named 'attributeName' for the element.

Product Availability

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

Specified by:
getAttributeValue in interface INgElement
Parameters:
attributeName - The attributeName (in)
Returns:
The pVal
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.getPropertyValue(com.esri.arcgis.schematic.INgProperty), INgElement.getUserDataValue(com.esri.arcgis.schematic.INgUserData)

isLabelEffectSet

public boolean isLabelEffectSet(INgProperty prop,
                                int effect)
                         throws IOException,
                                AutomationException
Indicates if the effect 'effect' defined for the label of the 'prop' property associated with the element is set.

Product Availability

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

Specified by:
isLabelEffectSet in interface INgElement
Parameters:
prop - A reference to a com.esri.arcgis.schematic.INgProperty (in)
effect - A com.esri.arcgis.schematic.esriNgLabelEffect constant (in)
Returns:
The isSet
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgElement.unsetLabelEffect(com.esri.arcgis.schematic.INgProperty, int)

unsetLabelEffect

public void unsetLabelEffect(INgProperty prop,
                             int effect)
                      throws IOException,
                             AutomationException
Unsets the effect 'effect' set for the label of the 'prop' property associated with the element.

Product Availability

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

Specified by:
unsetLabelEffect in interface INgElement
Parameters:
prop - A reference to a com.esri.arcgis.schematic.INgProperty (in)
effect - A com.esri.arcgis.schematic.esriNgLabelEffect constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLabelBoundingBox

public INgPoints getLabelBoundingBox(INgView view,
                                     INgProperty prop)
                              throws IOException,
                                     AutomationException
Returns the label bounding box of the 'prop' property associated with the element in the view 'view'.

Product Availability

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

Specified by:
getLabelBoundingBox in interface INgElement
Parameters:
view - A reference to a com.esri.arcgis.schematic.INgView (in)
prop - A reference to a com.esri.arcgis.schematic.INgProperty (in)
Returns:
A reference to a com.esri.arcgis.schematic.INgPoints
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

deleteUserData

public void deleteUserData(INgUserData userData)
                    throws IOException,
                           AutomationException
Deletes the userdata value for the element.

Product Availability

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

Specified by:
deleteUserData in interface INgElement
Parameters:
userData - A reference to a com.esri.arcgis.schematic.INgUserData (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isLabelMoved

public boolean isLabelMoved(INgProperty prop)
                     throws IOException,
                            AutomationException
Indicates if the label of the 'prop' property associated with the element has been moved.

Product Availability

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

Specified by:
isLabelMoved in interface INgElement
Parameters:
prop - A reference to a com.esri.arcgis.schematic.INgProperty (in)
Returns:
The moved
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.