Network Node Functions¶
These functions are used for working with network nodes. More...
Function | Description |
---|---|
addNode |
Adds a new node to a project. |
deleteNode |
Deletes a node from a project. |
getNodeIndex |
Gets the index of a node given its ID name. |
getNodeId |
Gets the ID name of a node given its index. |
setNodeId |
Changes the ID name of a node. |
getNodeType |
Retrieves a node's type given its index. |
getNodeValue |
Retrieves a property value for a node. |
setNodeValue |
Sets a property value for a node. |
setJunctionData |
Sets a group of properties for a junction node. |
setTankData |
Sets a group of properties for a tank node. |
getCoordinates |
Gets the (x,y) coordinates of a node. |
setCoordinates |
Sets the (x,y) coordinates of a node. |
addNode¶
Adds a new node to a project.
addNode(id: string, nodeType: NodeType): number;
Parameters
Parameter | Type | Description |
---|---|---|
id | string |
the ID name of the node to be added. |
nodeType | NodeType |
the type of node being added (see NodeType ) |
Returns
Number
the index of the newly added node
When a new node is created all of its properties (see NodeProperty
) are set to 0.
deleteNode¶
Deletes a node from a project.
deleteNode(index: number, actionCode: ActionCodeType): void;
Parameters
Parameter | Type | Description |
---|---|---|
index | number |
the index of the node to be deleted. |
actionCode | ActionCodeType |
the action taken if any control contains the node and its links. |
If actionCode is ActionCodeType.Unconditional
then the node, its incident links and all simple and rule-based controls that contain them are deleted. If set to ActionCodeType.Conditional
then the node is not deleted if it or its incident links appear in any controls and error code 261 is returned.
getNodeIndex¶
Gets the index of a node given its ID name.
getNodeIndex(id: string): number;
Parameters
Parameter | Type | Description |
---|---|---|
id | string |
a node ID name. |
Returns
Number
the node's index (starting from 1).
getNodeId¶
Gets the ID name of a node given its index.
getNodeId(index: number): string;
Parameters
Parameter | Type | Description |
---|---|---|
index | number |
a node's index (starting from 1). |
Returns
String
the node's ID name.
setNodeId¶
Changes the ID name of a node.
setNodeId(index: number, newid: string): void;
Parameters
Parameter | Type | Description |
---|---|---|
index | number |
a node's index (starting from 1). |
newid | string |
the new ID name for the node. |
getNodeType¶
Retrieves a node's type given its index.
getNodeType(index: number): NodeType;
Parameters
Parameter | Type | Description |
---|---|---|
index | number |
a node's index (starting from 1). |
Returns
NodeType
the node's type (see NodeType
).
getNodeValue¶
Retrieves a property value for a node.
getNodeValue(index: number, property: NodeProperty): number;
Parameters
Parameter | Type | Description |
---|---|---|
index | number |
a node's index. |
property | NodeProperty |
the property to retrieve (see NodeProperty ). |
Returns
Number
the current value of the property.
Values are returned in units that depend on the units used for flow rate (see Measurement Units).
setNodeValue¶
Sets a property value for a node.
setNodeValue(index: number, property: NodeProperty, value: number): void;
Parameters
Parameter | Type | Description |
---|---|---|
index | number |
a node's index (starting from 1). |
property | NodeProperty |
the property to set (see NodeProperty ). |
value | number |
the new value for the property. |
Values are in units that depend on the units used for flow rate (see Measurement Units).
setJunctionData¶
Sets a group of properties for a junction node.
setJunctionData(index: number, elev: number, dmnd: number, dmndpat: string): void;
Parameters
Parameter | Type | Description |
---|---|---|
index | number |
a junction node's index (starting from 1). |
elev | number |
the value of the junction's elevation. |
dmnd | number |
the value of the junction's primary base demand. |
dmndpat | string |
the ID name of the demand's time pattern ("" for no pattern) |
These properties have units that depend on the units used for flow rate (see Measurement Units).
setTankData¶
Sets a group of properties for a tank node.
setTankData(index: number, elev: number, initlvl: number, minlvl: number, maxlvl: number, diam: number, minvol: number, volcurve: string): void;
Parameters
Parameter | Type | Description |
---|---|---|
index | number |
a tank node's index (starting from 1). |
elev | number |
the tank's bottom elevation. |
initlvl | number |
the initial water level in the tank. |
minlvl | number |
the minimum water level for the tank. |
maxlvl | number |
the maximum water level for the tank. |
diam | number |
the tank's diameter (0 if a volume curve is supplied). |
minvol | number |
the volume of the tank at its minimum water level. |
volcurve | string |
the name of the tank's volume curve ("" for no curve) |
These properties have units that depend on the units used for flow rate (see Measurement Units).
getCoordinates¶
Gets the (x,y) coordinates of a node.
getCoordinates(index: number): {
x: number;
y: number;
};
Parameters
Parameter | Type | Description |
---|---|---|
index | number |
a node index (starting from 1). |
Returns
Object
{
x: number;
y: number;
}
Property | Type | Description |
---|---|---|
x | number |
the node's X-coordinate value. |
y | number |
the node's Y-coordinate value. |
setCoordinates¶
Sets the (x,y) coordinates of a node.
setCoordinates(index: number, x: number, y: number): void;
Parameters
Parameter | Type | Description |
---|---|---|
index | number |
a node index (starting from 1). |
x | number |
the node's X-coordinate value. |
y | number |
the node's Y-coordinate value. |