This class provides the capability of creating a
new, opening an existing, and working with a CUBE database. Currently a CUBE
database is a Spatialite or PostGIS database. The CubeDatabase class can create
Spatialite databases but it cannot create a PostgreSQL/PostGIS database; it is
required that the user creates the PostGIS database prior to its use within the
CubeAPI.
The CubeDatabase class allows to:
• Create new CUBE networks or edit existing
networks.
• Interrogate and edit the database content and
its data and metadata.
• Generate statistics and diagnostics for CUBE
networks links and nodes contained in the database.
• Generate network topology information.
• Manipulate CUBE networks with the possibility to
automatically add centroid connectors through an inbuilt algorithm, add or edit
link and node attributes.
• Renumber nodes, updating other network synced
datasets.
• Calculate shortest path through the network.
• Associating and editing Public Transport data
to a CUBE network, and Non-Transit networks, junctions data and turn penalties,
tolls data.
• Perform the Build Network From Shape
operations.
Methods provided by the CubeDatabase class, whose
names start with the value string, support the usage of Lua Expressions for
generating statistics, but also to add attributes or updates attributes. These
expressions allow to very efficiently manipulate links or nodes, with just one
line of Python script and few lines of Lua expressions.
The user may access the tables stored in CUBE
databases directly from other applications outside of the CubeAPI. However, the
data should not be modified without using the CubeAPI due to risks of
corrupting or invalidating the data for use within CUBE.
|