com.esri.arcgis.schematic
Interface ISchematicAlgoForceDirected

All Superinterfaces:
ISchematicAlgorithm, Serializable
All Known Implementing Classes:
SchematicAlgoForceDirected

public interface ISchematicAlgoForceDirected
extends ISchematicAlgorithm, Serializable

Provides access to members that control the Force Directed schematic algorithm.

Description

The Force Directed algorithm uses a physical analogy to draw graphs by considering a graph as a force system where it tries to locally minimize the energy. It searches for an equilibrium state of the force system; that is a position for each node, such that the total forces on every node is zero. If a selected set has been defined in the active schematic diagram, the algorithm only applies to the selected schematic elements.

Product Availability

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

See Also:
ISchematicAlgoAngleDirected

Method Summary
 int getDegreeOfFreedom()
          Parameter value used to limit the area used to move the schematic nodes during each algorithm's iteration.
 int getNumberOfIterations()
          Number of Force Directed schematic algorithm iterations executed before the final result is shown.
 double getRepelFactor()
          Parameter value used to quickly increase the schematic nodes displacement for nodes that are very close.
 boolean isWithoutDegreeTwoNodes()
          Indicates if the nodes with degree 2 can be temporally out-of-the-way during the first phase of the algorithm execution so the computing time is decreased.
 void setDegreeOfFreedom(int pVal)
          Parameter value used to limit the area used to move the schematic nodes during each algorithm's iteration.
 void setNumberOfIterations(int pVal)
          Number of Force Directed schematic algorithm iterations executed before the final result is shown.
 void setRepelFactor(double pVal)
          Parameter value used to quickly increase the schematic nodes displacement for nodes that are very close.
 void setWithoutDegreeTwoNodes(boolean pVal)
          Indicates if the nodes with degree 2 can be temporally out-of-the-way during the first phase of the algorithm execution so the computing time is decreased.
 
Methods inherited from interface com.esri.arcgis.schematic.ISchematicAlgorithm
execute, getAlgorithmCLSID, getLabel, getPropertySet, getSchematicDiagramClassName, isAvailable, isEnabled, isOverridable, isUseEndNode, isUseRootNode, setAvailable, setLabel, setOverridable, setPropertySet, setSchematicDiagramClassNameByRef
 

Method Detail

getNumberOfIterations

int getNumberOfIterations()
                          throws IOException,
                                 AutomationException
Number of Force Directed schematic algorithm iterations executed before the final result is shown.

Product Availability

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

Returns:
The pVal
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setNumberOfIterations

void setNumberOfIterations(int pVal)
                           throws IOException,
                                  AutomationException
Number of Force Directed schematic algorithm iterations executed before the final result is shown.

Product Availability

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

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

getDegreeOfFreedom

int getDegreeOfFreedom()
                       throws IOException,
                              AutomationException
Parameter value used to limit the area used to move the schematic nodes during each algorithm's iteration.

Description

Bigger this factor is more the area used to moves the node is large.

Product Availability

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

Returns:
The pVal
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDegreeOfFreedom

void setDegreeOfFreedom(int pVal)
                        throws IOException,
                               AutomationException
Parameter value used to limit the area used to move the schematic nodes during each algorithm's iteration.

Product Availability

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

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

getRepelFactor

double getRepelFactor()
                      throws IOException,
                             AutomationException
Parameter value used to quickly increase the schematic nodes displacement for nodes that are very close.

Description

Bigger this factor is more the schematic nodes that are near to overlapping separate rapidly and very strongly.

Product Availability

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

Returns:
The pVal
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRepelFactor

void setRepelFactor(double pVal)
                    throws IOException,
                           AutomationException
Parameter value used to quickly increase the schematic nodes displacement for nodes that are very close.

Product Availability

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

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

isWithoutDegreeTwoNodes

boolean isWithoutDegreeTwoNodes()
                                throws IOException,
                                       AutomationException
Indicates if the nodes with degree 2 can be temporally out-of-the-way during the first phase of the algorithm execution so the computing time is decreased.

Product Availability

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

Returns:
The pVal
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setWithoutDegreeTwoNodes

void setWithoutDegreeTwoNodes(boolean pVal)
                              throws IOException,
                                     AutomationException
Indicates if the nodes with degree 2 can be temporally out-of-the-way during the first phase of the algorithm execution so the computing time is decreased.

Product Availability

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

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