A computer system for designing rail systems including a database engine,
a simulation engine, and a 3-dimensional graphics engine. A user stores
attributes for a proposed transit system such as track segment data,
signaling and switching data, and train configuration data into the
database engine. The simulation engine accesses and processes this data
to simulate various aspects of the system. During simulation or
separately, a 3-dimensional graphics engine accesses and processes this
same data from the database engine to visually present a user with a
real-time, 3-dimensional rendering of the proposed rail system in use.
The computer system may also include a reports engine for reporting to
the user information related to the proposed rail system or simulation.