Changes from RW Net 2

Top  Previous  Next

This list is not being updated anymore, since RW Net 2 is now so long time ago.


New functionality


Full Unicode support

Improved .NET support (Compact Framework and Mono for instance)

Nodes can be "closed" in point-to-point routing

Links can be "closed" in point-to-point routing (No-Drive-Through bit)

Complex turn restrictions

Automatic identification of left/right turns

Travelling salesman optimization with support for curb approach

Travelling salesman optimization with time windows

Output to array format instead of files on disk (known from RW NetServer 3)

Minimum spanning trees


Improved functionality


Better developer experience (more OOP)

Improved flexibility

Much faster spatial searches

Overall calculation speed


Changes in behaviour


Loop links are not allowed by default.

Networks with loop links do not work in route calculations (TCalc, TRouteCalc, TDrivingDirections). Starting 1-1-2012.

Percentages in locations can now also be exact 0 or 1. No need to use 0.0001 or 0.9999

Side in locations are defined differently

The attribute field is differently defined for a few of the bits ("mode" is gone)

Alpha parameter is by default 1 (enabled)


Changes in setup


File format is different with an INI file introduced (can be replaced with an event if desired). Even though some file names may be the same, the content may be changed

Road names are now stored in Unicode format, making import/export easier

Coordinate system is normally detected automatically during import

Coordinate system don't have to be specified when opening network, since it is stored in the INI file

Routes modes are now shortest, fastest or cheapest - it used to be shortest or fastest/cheapest

Distances, speeds etc. are in km (SI-unit). Miles can only be used in a few output-to-file functions

Password for initialization is now also needed in the Delphi versions.


Functions removed




ResultFile & ResultSave


All functions listed as obsolete in RW Net 2 documentation

COM version


Functions renamed


AirDistNode: DistanceBetweenNodes

AirDistPos: DistanceBetweenPoints

AttributeCreate(2): ExecuteAttribute

AttributeLoad: Open

Assignment: TrafficAssignment

CloseLink: OneWaySet

Coordinate2Location: NearestLocation

Coordinate2LocationSimple: NearestLocationSimple

Coordinate2Node: NearestNode

CulDeSac: CulDeSac & SubNetEx & Bridges

District: District

ExternidImport: ExecuteExternalidInt / ExecuteExternalidString

ExternIDfindID: Link2ExternalID

ExternIDfindIndex: ExternalID2Link

FindCloseNodes: FindNonConnected

GetLinkDist: LinkLength

GetOpenStatus: OneWayGet

IsoLink2: IsoLinkDriveTime

IsoLink2Dyn: IsoLinkDriveTimeDyn

IsoLink4: IsoLinkServiceArea

IsoPoly2: TVoronoi with mode = vmIsoChrone

IsoPoly3: TVoronoi with mode = vmSimple

IsoPoly4: TVoronoi with mode = vmServiceArea

LimitCreate: ExecuteLimit

LimitLoad: OpenLimit

LimitLoad_bitpattern: OpenLimit

Linkmax: Linkcount

NetworkCenter: CenterNode / Cluster2 / Cluster3

NetworkLength: Length

NodeCreate: ExportNodes

NodeLinkCheck: FindNonConnected

Nodemax: Nodecount

NodeX, NodeY: Node2Coordinate

NWcreate: TImport.execute, ExportNodes, ObjectCheck

NWload: Open

NW3Dnodes: ExternalNodeId2ZLevels

Overpasses: FindOverPasses

RoundAbout: AttributeGetBit(link,11)

RouteList: TDrivingDirections

UnusedLinks: UnusedLinks

Valency: Degree