ZuluNetTools — ActiveX components for utility network modeling

ZuluNetTools is an ActiveX component library that enables software developers to incorporate hydraulic analysis and utility network modeling completed in ZuluThermo, ZuluHydro,ZuluDrain, ZuluSteam and ZuluGaz, extension modules in COM-based application development environments (Microsoft Visual C++, Microsoft Visual Basic, Borland Delphi, Borland C++Builder and so on) into their applications.

ZuluNetTools functionalities

  • setting a utility network topology model programmatically
  • setting input data for calculations and analysis programmatically
  • connecting utility networks in ZuluGIS format
  • launching analysis and modeling for heat networks ZuluThermo
  • launching analysis and modeling for water supply systems ZuluHydro
  • launching analysis and modeling for steam networks ZuluSteam
  • launching analysis and modeling for gas networks ZuluGaz
  • launching analysis and modeling for wastewater disposal systems ZuluDrain
  • reading calculation results and error codes programmatically
  • outputting analysis protocols and lists of errors
  • building piezometric graphs
  • creating a utility network model via Web API
  • performing hydraulic calculations and analysis for heat, steam, gas, water supply and wastewater disposal networks via Web API

ZuluNetTools components

The ZuluNetTools library contains components representing a computational model of a utility system or any other kind of network, components for performing calculations and completing analysis tasks as well as a set of visual components (message window, piezometer window) that provide a user interface similar to ZuluGIS interface for integrating engineering calculations into user’s target application.

Figure 1. ZuluNetTools component diagram

Utility network model (ZCNNetwork, ZCNNetworkCtrl)

The Network component is essentially a utility network model. ZCNNetworkCtrl is an invisible ActiveX element, placed on a form. Its counterpart a ZCNNetwork object is a simple COM object that performs the same functions but is created and used in a linear code.

You can programmatically specify your network model by entering a network graph and setting calculation parameters of network objects. Moreover, you can explicitly indicate a ZuluGIS layer as a computational model.

ZuluNetTools calculation tasks

Each of the Task components is a set of calculation tasks solved by one of our software packages: ZuluThermo, ZuluHydro, ZuluSteam and ZuluGaz. The components are represented by invisible ActiveX elements placed on a form as well as COM objects with an identical set of methods and properties (see the table below).

ActiveX component COM object Product
ZCNTaskThermoCtrl ZCNTaskThermo ZuluThermo (heat energy calculations)
ZCNTaskHydroCtrl ZCNTaskHydro ZuluHydro (water supply calculations)
ZCNTaskSteamCtrl ZCNTaskSteam ZuluSteam (calculations for steam pipelines)
ZCNTaskGazCtrl ZCNTaskGaz ZuluGaz (calculations for gas networks)
ZCNTaskDrainCtrl ZCNTaskDrain ZuluDrain (calculations for wastewater disposal systems)

Table 1. ZuluNetTools calculation tasks

These components are used to organize calculations forgoing the ZuluGIS user interface. Users set calculation parameters and sources programmatically.

Messages (ZCNOutputCtrl)

ZCNOutputCtrl is a visual component similar to the Messages window in ZuluGIS. If you connect this component to a task component, you will be able to see the calculation progress in this window.

Figure 2. ZCNOutputCtrl component

Piezometric graph (ZCNPiezoCtrl)

The ZCNPiezoCtrl visual component allows you to build piezometric graphs based on calculation results. It connects to ZCNNetworkCtrl or ZCNNetwork components to receive input data. The component is identical to the ZuluGIS piezometer window.

Depending on the type of the connected network, this component makes it possible to display piezometric graphs for heat and water supply networks; pressure, temperature, enthalpy and steam saturation curves for steam pipelines as well as gas pressure curves for gas network pipelines in a given direction.

Figure 3. ZCNPiezoCtrl component

Calculation toolbar

The ZCNTaskWinCtrl visual component allows users to embed a calculation toolbar of ZuluThermo, ZuluHydro, ZuluSteam or ZuluGaz software products into the form. With this component, you can implement ZuluGIS calculation and analysis modules into your application preserving the original user interface of these products.

Figure 4. ZCNTaskWinCtrl component with the ZuluThermo built-in calculation toolbar


A utility network model published on ZuluServer can be accessed via HTTP using ZuluServer Web Services. In ZuluServer 2021, it is now possible to access the ZuluNetTools module using ZWS commands for hydraulic calculations. Calculations can be performed in ZuluGIS Online or from custom applications. ZWS commands allow you to:

  • create a utility network layer
  • configure hydraulic calculation settings
  • perform and stop hydraulic calculations
  • receive a calculation protocol with errors, progress and results of the calculations

An overview of how to perform hydraulic calculations from a thin client using ZuluServer Web Services and the ZuluNetTools module.

To perform calculations via the web interface, you will need licenses for ZuluServer, ZuluServer Web Services, ZuluNetTools, and the calculation itself that will be performed

ZWS commands for hydraulic calculations