Full text: Proceedings, XXth congress (Part 2)

  
International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B2. Istanbul 2004 
  
(2) Send a request to the web server, 
(3) Run the requested server program (the second and third 
tiers), 
(4) Package up the data to be presented in the web browser, 
and 
(5) Send it back to the browser for displaying (the first tier). 
Request d Web , Server Script and 
Server Program 
Web Browser + 
Response 
Spatial database 
Fig. 1. Three-tier client/server architecture for web-based 3D 
city data visualization 
Virtual Reality Modeling Language (VRML) has become a 
popular tool for building a 3D representation on client side. A 
VRML application is typically a hierarchical organization of 
geometries, sensors, light sources, script methods, and grouping 
primitives assembled in a meaningful fashion (Web3D Inc. 
1998; Brutzman, 1998; Nadeau, 1999). There are various 
primitives, termed nodes, are available in VRML. These nodes 
are capable of directly visualizing a complicated scene, thus it 
is very useful for visualizing urban 3D models. The geometry 
of the primitives has been defined with shape nodes in VRML. 
The sensors are used to associate interactive capabilities. The 
Scripts enable users to implement many specific functions. 
Information is passed between nodes by events whose routes 
are either explicitly declared or established within Script nodes 
(Belfore e/ al, 2002). VRML has many desirable features to 
meet users’ needs for describing 3D objects on the WWW for 
GIS applications (Reddy er a/., 1999). A VRML model can be 
viewed by any web browser that has a VRML plug-in pre- 
installed. VRML "worlds" can depict realistic or otherworldly 
places, which can contain objects that link to other documents 
or VRML worlds on the web. 
Java web technology is a powerful web development toolkit. 
Java technology is further improved by supporting servlet 
technology. Servlets provide the capabilities of cgi-scripts, and 
are superior in execution efficiency, stability and security. 
Through the Java Development Kit (JDK) API, servlets can 
connect to server databases. 
Servlets are software methods that run on the server and can be 
called up as URLs from the Internet (Belfore et 2l... 2002). 
Servlets handle the client requests and dispatch them to the 
server. With servlets as a middleware, it can build a multi-tier 
web application. A servlet extends the capabilities of servers 
that host applications accessed via a request-response 
programming model. Servlets can respond to any type of 
requests, and are commonly used to extend the applications 
hosted by Web servers. JSP (JavaServer Pages) technology acts 
as a top layer above Java servlets on the servlet engine. It 
allows developers to combine HTML codes with server-side 
scripting to create dynamic pages. 
2.1 Client Side Architecture 
The basic architecture of client side is depicted in Figure 2. 
This application uses JSP pages to provide a front-end interface 
from client side. The users interact with the server for their 
  
choices via an interface. The requests from users are directed to 
the server through the Servlet middleware, and the server runs 
on the Web server. 
| Main Menu 
in y 
  
  
  
  
Y 
  
  
  
  
  
Create - € 
Create 3D Hexahedron Create Building 
ildi Roof 
Building 
  
  
  
  
  
  
Fig. 2. Three-menu option on client side front end 
The front end is comprised of three options. The first choice is 
for creating 3D VRML model directly from the data stored in 
the database. The server part of this application will access the 
data files, automatically load the data into the server, and then 
automatically build a VRML model based on data files. After 
that, the server sends the VRML model back to the client end 
for displaying it on the browser. The second choice is for 
creating single Hexahedron building through point coordinate 
data input. This part allows users to build a new building or add 
a building to an existing model when the users input the 
coordinates of the corners of a building. The third choice is for 
creating roof objects through parameter input. It enables users 
to add a roof object to an existing building (VRML model). 
The user first chooses what kind of roof he or she is interested 
in, and then inputs corresponding data and parameters. For 
example, when a user inputs the file name with the VRML 
extension and paramcters describing building roofs, the roof 
object will be automatically created and added to the building 
(VRML model) that the user has specified via this file name. 
2.2 Server Side Architecture 
Our server side architecture is illustrated in Figure 3. The 
server side would provide actual functions, such as, read/write 
files access on the server, create VRML models, and generate 
content dynamically. Thus, the web server would serve all 
client requests for generating either static or dynamic contents. 
Several software technologies and development packages have 
been employed in this application. These include the Java™ 
Development Kit JDK version 1.4, the Java Servlet 
Development Kit JSDK version 2.2, the Apache Web Server v 
4.0.0, and the Cosmo Player version 2.1.1 browser plug-in. The 
application uses Java object-oriented design, which will 
connect and access the database files, process the user input 
data, and generate a VRML model. 
   
     
  
  
  
    
   
Apache m" 
Web 
Server 
Database 
     
Application 
Build VRML MODEL 
  
| User d Client | 
r 
Area CosmoPlaye 
  
Fig. 3. Server Side Architecture 
  
   
     
Interi 
— 
3. Ul 
3.11 
Visu 
Diff 
mani 
oper: 
data: 
shou 
shap 
The 
Ther 
al. | 
3.2 
The 
data 
abo: 
of rc 
valu 
entit 
For 
Wal 
iden 
fron 
a Re 
Con 
Con 
Qua 
Con 
the
	        
Waiting...

Note to user

Dear user,

In response to current developments in the web technology used by the Goobi viewer, the software no longer supports your browser.

Please use one of the following browsers to display this page correctly.

Thank you.