com.esri.arcgis.schematic
Class NgNodeOnLink

java.lang.Object
  extended by com.esri.arcgis.schematic.NgNodeOnLink
All Implemented Interfaces:
com.esri.arcgis.interop.RemoteObjRef, INgElement, INgNode, INgNodeOnLink, Serializable

public class NgNodeOnLink
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, INgNodeOnLink, INgNode, INgElement

Graphic node-on-link object.

Product Availability

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

See Also:
Serialized Form

Constructor Summary
NgNodeOnLink(Object obj)
          Construct a NgNodeOnLink 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 node effect 'effect' (see esriNgNodeEffect).
 INgDiagram getDiagram()
          Diagram that contains the node.
 Object getEffect(int effect)
          Returns the effect 'effect' set for the node (see esriNgNodeEffect).
 INgElementType getElementType()
          Element type that implements the node.
 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.
 INgLinks getIncidentLinks(int endPointType)
          Returns the list of the node's incident links.
 double getInitialPosition()
          Initial position of the node-on-link related to its reference link.
 double getInitialRotation()
          Initial rotation angle of the node.
 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 node.
 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 node in the view 'view'.
 int getPositioningMode()
          Positioning mode of the node-on-link.
 double getPositionOnLink()
          Current position of the node-on-link related to its reference link.
 Object getPropertyValue(INgProperty prop)
          Returns the value of the 'prop' property for the element.
 INgLink getReferenceLink()
          The link the 'node-on-link' node-on-link is related to.
 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 node.
 double getY()
          Y Cartesian coordinate of the node.
 int hashCode()
          the hashcode for this object
 INgPoint INgNode_getInitialPosition()
          Initial position of the node.
 boolean isEffectSet(int effect)
          Indicates if the effect 'effect' related to the node is set (see esriNgNodeEffect).
 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 computeMode, int moveMode)
          Moves the node 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 effect or restores the default effect 'effect' set for the node (see esriNgNodeEffect).
 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 node (see esriNgSubSymbolEffect).
 void restoreInitialPosition(int modeIfNotSet, int modeIfSet)
          Restores the node 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 node (see esriNgNodeEffect).
 void setInitialPosition(double pVal)
          Initial position of the node-on-link related to its reference link.
 void setInitialPosition(INgPoint pVal)
          Initial position of the node.
 void setInitialRotation(double pVal)
          Initial rotation angle of the node.
 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 setPositionOnLink(double pVal)
          Current position of the node-on-link related to its reference link.
 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 named 'subName' that composes the symbol used to represent the node (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

NgNodeOnLink

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

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

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

getReferenceLink

public INgLink getReferenceLink()
                         throws IOException,
                                AutomationException
The link the 'node-on-link' node-on-link is related to.

Product Availability

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

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

getPositioningMode

public int getPositioningMode()
                       throws IOException,
                              AutomationException
Positioning mode of the node-on-link.

Product Availability

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

Specified by:
getPositioningMode in interface INgNodeOnLink
Returns:
A com.esri.arcgis.schematic.esriNgPositionOnLinkMode constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgNodeOnLink.getPositionOnLink()

getPositionOnLink

public double getPositionOnLink()
                         throws IOException,
                                AutomationException
Current position of the node-on-link related to its reference link.

Product Availability

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

Specified by:
getPositionOnLink in interface INgNodeOnLink
Returns:
The pVal
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgNodeOnLink.getInitialPosition(), INgNodeOnLink.getPositioningMode()

setPositionOnLink

public void setPositionOnLink(double pVal)
                       throws IOException,
                              AutomationException
Current position of the node-on-link related to its reference link.

Product Availability

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

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

getInitialPosition

public double getInitialPosition()
                          throws IOException,
                                 AutomationException
Initial position of the node-on-link related to its reference link.

Product Availability

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

Specified by:
getInitialPosition in interface INgNodeOnLink
Returns:
The pVal
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgNodeOnLink.getPositionOnLink()

setInitialPosition

public void setInitialPosition(double pVal)
                        throws IOException,
                               AutomationException
Initial position of the node-on-link related to its reference link.

Product Availability

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

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

getElementType

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

Product Availability

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

Specified by:
getElementType in interface INgElement
Specified by:
getElementType in interface INgNode
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 node.

Description

This name is defined when the node is created:

- either by triggering the INgDiagram CreateNode method or INgProjectEvents NameOfDigitNode event in the code,

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

Product Availability

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

Specified by:
getName in interface INgElement
Specified by:
getName in interface INgNode
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 node.

Product Availability

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

Specified by:
getX in interface INgNode
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 node.

Product Availability

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

Specified by:
getY in interface INgNode
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 node.

Product Availability

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

Specified by:
getDiagram in interface INgElement
Specified by:
getDiagram in interface INgNode
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 computeMode,
                 int moveMode)
          throws IOException,
                 AutomationException
Moves the node to the (X,Y) relative or absolute position.

Description

The values taken by the moveMode parameter are detailed in esriNgMoveMode

The default value for moveMode is esriNgAbsoluteMove, which means that, by default, the node is moved to the (X,Y) absolute position.

Moving the node causes the connected links to be recomputed. The computeMode parameter tells Schematics how these links are to be redrawn (see esriNgComputeLinkPointMode list).

By default, link points are kept, which means that the default computeMode parameter is esriNgKeepLinkPoints

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 INgNode: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 INgNode
Parameters:
x - The x (in)
y - The y (in)
computeMode - A com.esri.arcgis.schematic.esriNgComputeLinkPointMode constant (in, optional, pass 2059 if not required)
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)

getIncidentLinks

public INgLinks getIncidentLinks(int endPointType)
                          throws IOException,
                                 AutomationException
Returns the list of the node's incident links.

Description

The endPointType parameter is used to specify whether you want to obtain:

- A list of the links having that node as origin node only (endPointType = esriNgOriginNode),

- A list of the links having that node as end node only (endPointType=esriNgExtremityNode),

- A list of all the links that are incident to the node (endPointType=esriNgOriginAndExtremityNode).

Product Availability

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

Specified by:
getIncidentLinks in interface INgNode
Parameters:
endPointType - A com.esri.arcgis.schematic.esriNgEndPoint constant (in, optional, pass -1 if not required)
Returns:
A reference to a com.esri.arcgis.schematic.INgLinks
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgDiagram

getEffect

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

Description

Only the effects set by calling the SetEffect method on the INgNode interface in the project code will be returned when using the GetEffect method. If the GetEffect method returns no value, the GetCurrentEffect method can return a value. The effect returned in this case can have been set either when defining the element type effects or the properties effects related to the link.

Product Availability

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

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

setEffect

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

Product Availability

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

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

removeEffect

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

Description

Note that when removing an effect that is always set, the node default effect value is automatically restored; and removing an effect that is not set by default, really removes the node effect.

Product Availability

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

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

isEffectSet

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

Description

By default, Schematics automatically sets default values for some node effects (see the List of default node effects, below). For all these effects, the IsEffectSet method returns True. For the others effects (those that are not automatically set by default), the IsEffectSet method returns True only if the effect has been set by calling the INgNode SetEffect method in the project.

Note that even if the IsEffectSet method returns False for a given effect (for example, esriNgNodeXScaling), the GetCurrentEffect method can returns a value! GetCurrentEffect returns the current effect positioned for the node. This effect cans have been set:

- Either when the associated element type effects have been defined,

- Or when the graphic effects for its related properties have been defined.


List of the default node effect values

esriNgNodeDetectability: esriNgDetectable.

esriNgNodeHighlightedState: esriNgNotHighlighted

esriNgNodeMobility: esriNgMovable.

esriNgNodePriority: 201 or more

esriNgNodeResizability: esriNgResizable

esriNgNodeSelectability: esriNgSelectable

esriNgNodeVisibility: esriNgVisible


For more details, see Node Effects Constants Definition.

Product Availability

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

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

setSubSymbolEffect

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

Product Availability

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

Specified by:
setSubSymbolEffect in interface INgNode
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.
See Also:
INgNode, INgNode.removeSubSymbolEffect(String, int)

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 node (see esriNgSubSymbolEffect).

Product Availability

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

Specified by:
removeSubSymbolEffect in interface INgNode
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:
INgNode, INgNode.setSubSymbolEffect(String, int, java.lang.Object)

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 node in the view 'view'.

Product Availability

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

Specified by:
getPortPosition in interface INgNode
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.

INgNode_getInitialPosition

public INgPoint INgNode_getInitialPosition()
                                    throws IOException,
                                           AutomationException
Initial position of the node.

Product Availability

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

Specified by:
INgNode_getInitialPosition in interface INgNode
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.

setInitialPosition

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

Product Availability

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

Specified by:
setInitialPosition in interface INgNode
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 angle of the node.

Product Availability

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

Specified by:
getInitialRotation in interface INgNode
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 angle of the node.

Product Availability

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

Specified by:
setInitialRotation in interface INgNode
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 node to its initially defined position.

Description

If the node 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 node 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 node 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 node 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 node to be relocated (modeIfSet case or modeIfNotSet case). The node retains its current position.

Product Availability

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

Specified by:
restoreInitialPosition in interface INgNode
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:
INgDiagram.restoreInitialPosition(int, int), INgNode.setInitialPosition(com.esri.arcgis.schematic.INgPoint)

getCurrentEffect

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

Description

Current effect set for a node can come from its associated element type effects definition, its related properties effects definition, its own effects definition.

Product Availability

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

Specified by:
getCurrentEffect in interface INgNode
Parameters:
effect - A com.esri.arcgis.schematic.esriNgNodeEffect constant (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
INgNode.setEffect(int, java.lang.Object), INgNode.getEffect(int), INgNode.isEffectSet(int), INgNode.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.