MODELLING OF URBAN SERVICES BY VRML & JAVA
ABSTRACT
This paper proposes to use virtual reality for virtual environments as a support for architectural design. In this area it might be possible to combine 3D virtual environments with simulation models to perform quantitative and qualitative analyses of system efficiency. With this approach, it becomes possible to evaluate the quality and efficiency of re-engineering/re-organisation projects in public centres (such as public facilities).
INTRODUCTION
The paper proposes to model the urban environment of a middle-sized town (Savona - about 100,000 inhabitants) to evaluate the re-organisation of a large building complex for public services (see fig. 1). The project involves the development of previous research based on the redesign of an abandoned hospital complex as a Cultural Centre (library, university & offices) and the analysis of its impact on the town (see fig. 2).
In the previous research the authors generated Computer Animation and Rendering using CAD systems. In this paper, the authors present the modelling technique used to shift from CAD to VRML 2.0. In effect, the object-oriented organisation of the CAD entities has been efficiently used to generate the new environment [9].
The paper describes the techniques used to create a stochastic event-oriented simulator for generating and controlling the "living entities" of the town (cars and people). The simulator is directly linked to the VRML environment and reproduces interactions among the entities.
The authors developed a scenario generator capable of creating the VRML world from a general layout and adding the entities. Each object includes the Java code required for interacting and for moving in the world.
This system allows the results to be distributed immediately on the web and to promote new solutions for urban architecture in a wide community considering the efficiency and effectiveness of the public service being analysed.
Based on the study performed it was possible to identify the effective limitations and approximations necessary for modelling large complexes, to allow PC users to interact efficiently with the system on the web.
Fig.1 The Savona Downtown reproduced in Virtual Reality presented as a wood Plastic Model
PUBLIC SERVICES, SIMULATION AND VIRTUAL REALITY
Computer Graphics are a popular means for evaluating the design of large public complexes, therefore virtual reality is quite a new approach in this area that allows the user to freely navigate and interact. By connecting these environments with simulation models, it becomes possible to perform a quantitative analysis of system efficiency.
Simulation modelling allows the virtual model of the project to be used to estimate the efficiency and the quality. By evaluating the facilities of a public cultural centre or the viability of a town, it is easy to measure the crossing and waiting times and to obtain references for comparing different potential solutions and for optimising the design.
Traditionally, these analysis are performed by very simplified models. Sometimes specific detailed simulation models are developed to support specific component designs (i.e. number of ticket-windows in a public office). These approaches are motivated by several practical reasons: non-availability of data or a too expensive/long data collection process, very complex processes that are too difficult (expensive/long) to be modelled, etc.
In reality, all these aspects refer to the fact that the project of the public service centre very rarely includes any time or budget for this issue [6]. The basic idea is to reduce costs and times by reusing previous works as much as possible, so the idea to move from a computer graphic animation (that requires a structural model very similar to a virtual reality environment) and to link it to a simulation model, quickly provides good results with low costs.
Therefore, the design of large public structures involves many contractors and numerous teams, so if the simulation model could be used as Service CAD (Computer Aided Design) [3], it is very important to distribute the results among all the engineers and decision makers. The innovative idea is to use the web as a support to avoid any platform dependency and to guarantee easy access from a distributed community. In effect, there are already some experiences involving Virtual modelling on the web for architectural restoration of public areas that provide good results [11].
In addition, for the design of a large public centre, it might be very useful to interact with the public in the development process: the world-wide-web is the optimal channel for distributing models and receiving feedback and suggestions.
Fig.2 - The new cultural Centre as restoring the old Savona Hospital San Paolo
The decision to use VRML, considering also the efficiency of this environment, with Java (tm) applets linked to objects, is based on the idea of using common supports that are widely diffused among the potential user community. Both VRML and Java are changing quite quickly to meet the evolving user community requirements [1][8][13]. In effect, the authors experienced problems in the development process for these reasons. From another point of view these languages have great potential and are becoming very popular. In any case, this approach guarantees the best usability and hopefully these standards will become at least more stable in the future, that is very important for the life-cycle of the model.
An overview of the environment is proposed in (fig.3). The efficiency of the system limits operations with complex scenarios in terms of number of entities and detail level of the people interactions [2].
Fig.3 Savona Downtown ready for navigation using Netscape(tm) combined with Cosmo(tm) plug-in
THE SCENARIO GENERATOR
In order to translate the model from a computer graphic environment to VRML 2.0 the authors tested different approaches: automatic generation of town buildings, VRML Cosmo World (tm) editor and manual editing [7][10]. In effect, the buildings are simplified due to the dimension of the scenario, so it's possible to construct an easy algorithm that constructs these buildings automatically based on the general layout utilising user-defined shapes.
The town is constructed as a set of user-defined shapes reproducing each building. These must to be constructed by IndexedFaceSet{} introducing the vertices of the building in the Coordinate {Point [ ] } and the sequences of vertices defining each faces in coordIndex [ ].
We use the layout map of the town as starting point, so it should have the 2D coordinates of each building:
Coordinate
"
i Î
[ 0.. 2 nj - 1 ]
Vj i = ( xj i , yji , k low ) , i Î
[ 0,1, ... nj - 1 ]
Vj i = ( xj i -n, yji-n , -k high) , i Î
[ nj, nj+1, ... 2 nj - 1 ]
k low location of the base of the building (normally zero, but it’s different
for multilayer entities definition such as beach, sea etc.)
k high height of the building
v = 2 + nj
v number of faces (top and bottom, plus lateral walls)
IndexedFaceSet
Fj 0 = { Vj 0 , Vj 1 , ... Vj nj-1 )
Fj 1 = { Vj nj, Vj nj+1 , ... Vj 2nj-1 )
Fj k = { Vj k 1, Vj k2 , Vj nj+k2, Vj nj+k1) , k Î
[ 2,3, ... nj + 1 ]
k1 = k - 2
k1 < nj => k2 = k1+1
k1 = nj => k2 = 0
Then is performed a rotation 1 0 0 p
/2 corresponding to use as vertical axis the 2nd as usual in VRML worlds.
In effect this approach provides some problems, i.e. the Cosmo Player tm 1.0 allows to use convex faces as boundary of user defined shapes, with the Cosmo tm 2.0 this produces errors in the visualisation, so it was necessary to add an additional step for dividing in triangles the top and bottom of each building Fj 0 and Fj 1; the algorithms involves to iterate on each faces until
if k / f_in(V j k1 , Vd j k2 , Vdj k3 , Vdj z) = 0 and
f_cv(Vd j k1 , Vd j k2 , Vdj k3 , Fj 0) = 1 "
z Î
[ 0,1, ... lim] , z ¹
k1, z ¹
k2, z ¹
k3
k1 = f_r ( k ) k2 = f_r ( k + 1 ) k3 = f_r ( k + 2 )
x < lim => f_r(x) = x
x ³
lim => f_r(x) = x-lim
f_cv(V j k1 , V j k2 , Vj k3 , Fj 0) convexity in point k2 (1 if it’s convex, 0 otherwise)
f_in(V j k1 , V j k2 , Vj k3 , Vj z) check posizition of z-th point respect triangle k1, k2, k3
(0 if is external, 1 if it’s internal)
=> a new face Fj lxx composed by k1,k2,k3 vertices is added and
lim = lim-1 (initially lim=nj - 1) and the point k2 is deleted from the the set of the Vdj y
points (initially Vdj y set equivalent to Vj y)
The process continues until we have just one triangle left, the set of Fjlxx faces substitutes Fj 0 in IndexedFaceSet. In a similar way, the face Fj 0 is exploded into triangles.
The scenario generator automatically adds the moving entities to the virtual world. In effect, the objects are created in the WRL files and refer to a script including Java applets with rules and behaviours [12][14]. With this approach it is very easy to create scenarios with entities moving and interacting in the model, reproducing people on the streets and or cars. For instance, for adding people, the process is the following:
Addition of object prototype (PROTO) in the VRML world
The prototype uses SFrotation as the rotation vector and SFVec3f as the position vector and
referring to the wrl files for the geometry (i.e. "Man_vic.wrl" for people at short
distance) and including class files with the behaviour
Class files initialise the position, path data, obstacles data, etc. and includes
moveAgent procedure for processing the object behaviour.
In the computer graphic animation the objects' path and behaviour qwew defined by a fixed path (see fig. 4). In the simulation the people walking in the world simulates stochastic behaviour (changing from one path to another based on boundary parameters) and interacts (i.e. they stop crossing the streets).
It was possible to test the model both with Cosmo Player (tm) by SGI (see fig. 5) and Community Place Browser (tm) by Sony on PC platforms. As previously mentioned, the new releases of the VRML plug-in introduced some problems with the applet code (i.e. security check, initialisation). The authors are still working on adapting the environment for improving portability and consistency of the simulation model.
Fig.4 The entities simulated for evaluating the Quality of the Public Services in the new center
THE SAN PAOLO CASE STUDY
The application case study, as previously mentioned, refers to the restoration of a large complex - the old Savona hospital. The simulator model reproduces the downtown Savona area. In effect, the general layout was already developed in previous research for simulating environmental services (waste collection and street cleaning)[4].
The reproduction of city_uo.wrl is attached in fig. 6: a virtual environment including part of the developed simulator with about hundred people interacting in downtown Savona plus some additional entities (i.e. helicopter patrolling the town). The Savona world includes over 50 buildings reproducing the downtown area along with the Priamar fortress (the largest fortress in Europe) located on the coast in front of the centre.
The evaluation of the quality of public services provided by the new cultural centre was useful for optimising the restoration design and the bottlenecks of the current proposal.
Fig.5 the People Entity in the Web-based Virtual Enviroment
CONCLUSIONS
This research focused on evaluating the translation of Computer Graphics Animation models into virtual reality environments. Some problems were encountered with the dynamic behaviour of VRML standards and interfaces (many times this required additional processes on the model).
In conclusion, it is evident that if the VRML+Java could be a very convenient and powerful support for developing 3D simulation, from another viewpoint the code efficiency and the fact that these are very recent languages, might produce delays and problems in the modelling.
This experience demonstrates that for not very complex dynamic models, including a large static virtual environment, this approach could provide very interesting results and is probably the best one for the distribution in a wide community. For more simulation models it might possible to evaluate the use of commercial packages (i.e. VRT (tm) from Superscape) [5]. The authors had previous experiences with this environment and the efficiency of the code was much higher, therefore the costs ratio could be about 10:1, reducing the possibility for project teams to acquire packages and licenses for all the designers. The commercial tools also involve some limitations to the user community for navigating. In effect, while almost all the web browsers include the VRML plug-in, the commercial packages requires filed to be downloaded and we can expect this to create an obstacle in terms of time and the opportunities for many users in this design area (i.e. expiration dates, low networks, etc.).
A last important aspect refers to the simulation language, Java looks similar to C++ and is becoming popular, so technical skills in this area could be available, while specific commercial languaged require additional training. From another point of view, the main disadvantage for Java and especially for Java-VRML it is that they are on-going standards and often require time to solve the inconveniences and thus it becomes difficult to respect the planned scheduling.
Fig.6 - An Example of Senario Generation including the San Paolo Complex and People Entities
REFERENCES
[1] Ames A.L., Nadeau D, Moreland J. (1996) "The VRML Sourcebook", John Wiley & Sons, New York
[2] Bouvier E., Cohen E. (1995) "Simulation of Human Flow with Particle Systems", Proceeding of Simulators International XII, Phoenix, AZ, April 9-13
[3] Bruzzone A.G. (1996) "Object Oriented Modelling to Study Individual Human Behaviour in the Work Environment: a Medical Testing Laboratory ", Proc. of WMC'96, San Diego, January
[4] Bruzzone A.G. (1996) "Object-Oriented Simulation of Cleaning Operations in Urban Environments", Proc. of ESM'96, Budapest, June 2-6
[5] Bruzzone A.G., Rivarolo D. (1997) "Virtual Reality as the Starting Point for the Functional Analysis of Public Plant Design Services", Proceedings of High Performance Computing, HPC'97, Atlanta, Georgia, April 6-10
[6] Bruzzone A.G. (1998) "Internal Transportation Systems for Building and Public Services Design Using Simulation", Proceedings of ASTC98, Boston, 4-9 April
[7] Carey R, Bell G. (1997) "The annotated VRML 2.0 Reference Manual", Addison Wesley, Reading MA
[8] Cornell G., Horstmann C.S. (1997) "Core Java", SunSoft Press, Mountain View, CA
[9] Hill D.R.C. (1996) "Object-Oriented Analysis and Simulation", Addison Wesly, Harlow
[10] Ligorio G. (1995) "3D Studio 4", Apogeo, Milan, Italy
[11] Mantese E. (1998) "Design Competition for a new IUAV Building in the area of Magazzini Frigoriferi at San Basilio, Venice", IUAV - University of Venice, Venice City Hall & Venice Port Authority, January 3
[12] Reynolds M. & Wooldridge A. (1996) "Using Javascript", Que, Indianapolis
[13] Rodger L, Matsuda K., Miyashita K, (1996) "Java for 3D and VRML Worlds", New Riders, Indianapolis, USA
[14] Rumbaugh, B.;Blaha,M.; Premerlane,W.;Eddy,F. & Lorensen M., 1991, "Object-Oriented Modelling and Design" Prentice Hall, Englewood Cliffs, N.J.