Volume 1, Issue 2, January 1999

ISSN 1096-4886 http://www.westerncriminology.org/Western_Criminology_Review.htm
© 1999, The Western Criminology Review. All Rights Reserved.

Animations of Crime Maps Using Virtual Reality Modeling Language


Suresh K. Lodha


Arvind Verma


Citation: Lodha, Suresh K. and Arvind Verma. 1999. "Animations of Crime Maps Using Virtual Reality Modeling Language." Western Criminology Review 1 (2). [Online]. Available: http://www.westerncriminology.org/documents/WCR/v01n2/Lodha/Lodha.html


The utility of crime maps for law enforcement purposes and criminological inquiries has been accepted unequivocally. Maps are commonly used to depict crime distributions and to analyze its spatial and longitudinal patterns. Nonetheless, crime maps have restricted applicability because of the difficulty in presenting more than a limited amount of data on a static, two-dimensional map. However, current developments in computer graphics provide new techniques that address these shortcomings. This paper introduces the Virtual Reality Modeling Language (VRML) to criminal justice practitioners. VRML can animate and investigate complex crime maps. It is a technique that allows the user to conveniently examine a map by walking around or flying through it, as if it were a small object held at arm's length. This process significantly enhances understanding a map by offering a feeling of reality beyond a picture on the computer screen. The paper demonstrates the usefulness of VRML by presenting the animation of different types of crime maps. This technique permits the user to navigate through these maps by translating, rotating, zooming, and tilting them to gain a better understanding of the data. Although a VRML browser or plugin such as CosmoPlayer is needed to view VRML scenes, the reader does not need the CosmoPlayer plugin to examine them. This paper is motivated by our belief that new techniques and technology need to be applied to criminal justice data for the discipline to move forward. We also suggest applications for criminal justice practitioners.

Keywords: crime mapping, virtual reality modeling language, animation and crime, new technologies, spatial distribution of crime, three dimensional maps

Animations of Crime Maps Using Virtual Reality Modeling Language

Maps have been a useful tool to crime analysts for a long time. Pin maps have graced the walls behind the desks of police chiefs since pins were invented (Block, Dabdoub, and Fregly 1995). These maps have generally served to show at a glance which areas are affected by serious crimes and where they are taking place. New technological developments, such as the Geographic Information Systems (GIS), have given further impetus to the use of maps (MacAlister 1996). Numerous police departments use the GIS routinely and provide crime maps to the police officers for crime control and to citizens for education and information.

However, the development of computer techniques useful to the police is in its infancy. Most crime maps produced on the computer screen are two-dimensional images that can at best be translated. This is generally a passive process of viewing that allows only a limited understanding of data. In order to overcome these shortcomings, and for additional advantages, we introduce Virtual Reality Modeling Language (VRML) as it can be used to create and animate crime maps. VRML offers significant advantages in viewing and investigating these maps. It allows the user to change his/her views conveniently and lets the scene transcend the notion of two-dimensional pictures. VRML allows the user to move around the map as if they were inside the city or in the scene of action. The user can walk around the map, fly through it, or examine it from various angles, as if the picture were a small model held in ones hand. This provides a feeling of reality beyond an image on a computer screen and makes it easier to understand crime data. In addition, VRML facilitates the sharing of data across computer platforms. Users can have access to these maps on any hardware platform (PC, Mac, SGI, etc.) using a VRML browser such as CosmoPlayer, which is freely available through the internet. This facilitates transmission of data across computer platforms and between different users. Although a VRML browser or plugin such as CosmoPlayer is needed to view the VRML scenes, the reader does not need the CosmoPlayer plugin to examine them here.

The objective of this paper is to discuss the usefulness of VRML for creating and animating crime maps. The technology is used to animate two-dimensional as well as three-dimensional crime maps. We will demonstrate the animation of a traditional 2D pin map using VRML and then create and animate two types of crime maps. The first type uses the technique of rasterization and pseudo-coloring, where the total crime is mapped to a color, so as to produce two-dimensional maps that are then examined by manipulating the map in three dimensions. The second type uses the vertical dimension, where the total crime of a certain kind is mapped to the height of a color-coded bar, which produces three-dimensional maps.

We also wish to draw attention to the idea that the discipline of criminal justice has to be receptive to new developments in analytical techniques and technological capabilities. Criminal justice practitioners have not kept pace with new tools and techniques in comparison to their colleagues in the natural and applied sciences. Verma (1996) has drawn attention to the availability of new tools for criminal justice that hold promise for innovative applications and provide fresh insights. In sharp contrast, the situation in the natural sciences has been more dynamic, as data exploration and theory building keep pace with growing technical abilities. In fact, in many instances scientific theories have demanded the invention of new techniques. Calculus had to be invented by Newton to study gravity. While attempting to measure the coastline of Britain, Mandelbrot (1986) was forced to analyze the relationship between the scale of measurement and the dimension of the object. This required him to develop the concept of fractal and gave rise to a new kind of mathematics.

In the natural sciences the reverse has also been true. Availability or development of new techniques has lead to the growth of fresh theoretical conceptualizations. The development of differential equations facilitated the growth of Maxwell's theory of "radio waves." Binary algebra became useful to the development of computer languages and space technology has altered the way we live and understand our world. Technology has greatly affected the field of criminal justice, for example, the introduction of the telephone and motor vehicles quickly altered the way policing was done (Walker 1998:31). GIS- based computer mapping, the computer aided dispatch system, and the increasing dependence upon management information systems are all becoming common in the American police too. Yet progress has been slow and awareness about emerging techniques and technology remains rudimentary. We feel that practitioners must begin to pay attention to the parallel developments in allied fields since these tools and techniques can assist in solving some of their problems and in improving their performance. We believe the introduction of VRML and related computer graphics field is going to play an important role in the way we visualize and analyze criminal justice data.

This paper is therefore an attempt to bring new possibilities and approaches to the study of crime into the awareness of criminal justice practitioners. The subject matter of visualization through computer graphics in this respect has immense possibilities chiefly because of the creativity it affords. VRML and other kinds of computer graphics provide a powerful impetus to mental imagery, intuition, and the freedom to move across a multidimensional field of data that may be unconnected or related inappropriately. The interplay between modern technology and creative imagination, and the application of its powerful techniques to criminal justice system data, is likely to provide strength in understanding the fascinating world of criminal behaviour. As Miller (1987:312) points out, "...mental imagery is a key ingredient in creative scientific thinking," and there is no better tool than modern computer based imaging technology to unleash creative imagination in criminological research.

Previous work

Computer mapping is emerging as an important tool for criminal justice practitioners (Block et al. 1995; Maltz, Gordon, and Friedman 1991). The ability of computers to display maps in various sizes and resolutions, and to present crime spots in distinguishable colors, is opening a new range of techniques for the study of crime, some of which have been borrowed from geography and the earth sciences (Nasar and Fisher 1993; Fotheringham and Rogerson 1994). For example, the hot spots of crime is becoming an increasing focus of research (Sherman, Gartin, and Buerger 1989; Block 1995; Rengert 1995a) and an area in which computer generated maps are essential for the visual presentation of these spots. Indeed, the utility of the map in identifying dense clusters has been enhanced by the parallel development of several statistical tools useful for crime analyses. Examples of new statistical and simulation modeling techniques include point pattern analysis (Boots and Getis 1988; Canter 1995), nearest neighborhood analysis (Block et al. 1995), travel pattern analyses, neural networks (Caulkins, Cohen, and Wei 1996), cluster analysis (Block 1996), geographic profiling (Rossmo 1995), and numerous other techniques (Brantingham and Brantingham 1984, 1991; Brantingham, Brantingham, and Verma 1992) that are opening a whole range of possibilities for criminal justice practitioners. Crime mapping is also progressing beyond the simple dots on the map and even a form of animation of crime maps has been done by LeBeau (1995), who presented a vast amount of data through a series of slides to display a changing scenario. However, presentations through a series of slides make it difficult to analyze more than a few maps at a time. In practice, therefore, most of the crime mapping techniques remain confined to the generation of static maps. Typically a user cannot control the viewpoint on these maps and observes only a two-dimensional image. Animation of crime maps is clearly in its infancy.

Nevertheless, an increasingly common sight in most police departments is GIS-based crime mapping systems. The developments in computer hardware and software are bringing powerful computing capabilities to most police analysts and crime mapping is becoming a popular tool for the police. Nonetheless, these mapping systems still exhibit many limitations. First, all the maps generated in a typical GIS-system are two-dimensional. Second, although some of these systems allow translation, rotation, and sometimes even zooming into the maps, these maps cannot be tilted for viewing in three dimensions. This is a serious inadequacy that may perhaps be best understood through an analogy. A three-dimensional object like a Lego model can be examined from different angles. "Translation" provides the freedom to move it left and right and "zooming" can move it closer and farther away. "Rotation" allows it to be observed from the top and bottom. However, if the model is not allowed to be "tilted" the observer is robbed of some essential views that provide a better appreciation and understanding of the model, like looking into the model. The GIS systems view two-dimensional maps as if they are fixed on a desktop and the gaze is always at a fixed angle--perpendicular--to the map. In contrast, VRML allows the user to view even a two-dimensional map as a model that can be picked up from the desktop and tilted in any direction for convenient viewing. This added flexibility is needed to understand the data points that are often clustered together in cluttered and illegible displays, despite the use of color and special symbols.

We wish to point out that although most of the GIS systems do not support any animation capabilities beyond the viewing facilities described in the previous paragraph, an exception is the recent two-dimensional display of GIS-based animation by Goldsmith and Williamson (1998) on the world wide web. Nevertheless, our VRML based approach is still an improvement in several respects. First, our system is capable of both two- and three-dimensional displays. In contrast, Goldsmith and Williamson's system is purely two-dimensional. Second, our system provides full three-dimensional (3D) viewing capability that is much more realistic. In contrast, their system, as presented on the web, does not support any viewing controls such as translation, zooming, or rotation. Finally, our system is more flexible in the sense that the user can interact with the scenes. In contrast, their system is a predesigned movie that can be watched. One of the reasons for these differences is that their system was primarily designed to evaluate the utility of watching GIS-based animations. In contrast, we are focused on the development of newer techniques for animating crime maps that also give control to the user. Our approach is rooted in the belief that pre-canned animations or movies, where the user has no control, are seldom useful or have rather limited utility. This belief is based experiences in other disciplines, such as scientific visualization, where movies or pre-canned animations have not been found to be very useful (Rheingans 1992; Gershon 1992). Indeed, such animations are nothing more than pretty graphics (Rengert 1995b). In all the disciplines, scientists and viewers are increasingly demanding more control over the animations (Hagen, Muller, and Nielson 1993). It was this route (Lodha and Verma 1997; Verma and Lodha 1997) that generated considerable interest among criminal justice practitioners and has encouraged us to pursue the VRML-based crime map visualization techniques.

Background on Virtual Reality Modeling Language

VRML, as noted, is an acronym for Virtual Reality Modeling Language. It is not a programming language like C++ or Java, nor is it a "markup" language like HTML. It is a specification (or definition) of a modeling language for describing three-dimensional scenes, often referred to as "worlds." In the degenerate case, it can also be used to create two-dimensional scenes. In fact, VRML allows one to blend 2D and 3D objects and animation into a single medium. VRML has been designed to fill a variety of needs, including the ability to

  1. Animate objects in a scene
  2. Interact with the scene
  3. Control the scene with small programs, referred to as scripts, and
  4. Play sounds and movies within the scene.

The scenes or the worlds created by VRML can easily be distributed using the world wide web, displayed on another user's computer screen, and explored interactively by remote users. VRML provides a highly efficient format for describing simple and complex 3D objects and worlds. Thus, VRML facilitates publication, transmission, and sharing of 3D information.

VRML is a promising tool in creating and manipulating 3D scenes. The recent and rapid increases in computer processing power have facilitated the generation and manipulation of 3D graphics within the capabilities of relatively inexpensive desktop computers. While many software tools for creating 3D images and data are being developed, VRML is undoubtedly a better tool since it is less expensive and yet extremely versatile. Also, each program has its own file format for storing information. Analysts who wish to present information in a 3D format cannot expect all users to have the same expensive software that they have. One solution would be to generate a series of 2D images; however, information is commonly lost in this process. For example, there could be objects which cannot be seen because they are blocked by other objects. In contrast, VRML browsers, described later, can facilitate examination of hidden objects. They are, moreover, freely available through the internet. The language specification for VRML is also readily available in many standard books (e.g. Carey and Bell 1997).

VRML presents the scene geometry independent of viewpoint, which means that no object is hidden, and each object in the scene can be fully described. Moreover, VRML allows the user to change the viewpoint. Whereas viewing a picture is generally a passive process, VRML allows the user to move around in the scene as if they were inside it. Depending on the scene content, the user may walk around it, fly through it, or examine it by spinning it around, as if it were a small object held at arm's length. These are some of the modes of movement provided by the VRML browser, which we describe later.

Applications for VRML include scientific visualization, medical imaging, molecular modeling, as well as entertainment applications such as games and museum (Ames, Nadeau, and Moreland 1997; Hartman and Wernecke 1996). Simplicity is also a key feature of the VRML specification. Simplicity is a relative term but in general 3D graphics can get very complex. By keeping the set of allowed shapes and operations small, programs that view VRML scenes are produced more easily, and therefore are more readily available to users of inexpensive desktop computers. At the time of this writing, most VRML browsers are also available for free. In this way, authors of VRML worlds have access to a potentially large base of computer users, which increases its popularity.

Short History of VRML

Three factors have contributed to the development of VRML -- the world wide web, Inventor Graphics Toolkit, and virtual reality. The world wide web was launched as a graphical interface to the internet in 1991. Inventor Graphics Toolkit was introduced by Silicon Graphics in 1992 to develop 3D graphics programs quickly, although at that time it had nothing to do with networks. The third factor is the efforts of Mark Pesce and Tony Parisi in developing the virtual reality interface to the web (Hartman and Wernecke 1996).

The origin of VRML can be traced to a meeting at the First Annual World Wide Web (WWW) Conference in May 1994 in Geneva, Switzerland. The term VRML was coined at this meeting and originally stood for Virtual Reality Markup Language. Later the word "markup" was changed to "modeling" for accuracy. In the next six months or so, the idea of developing a specification for VRML was proposed and pursued. Several worthy proposals were contemplated, but the Silicon Graphics proposal, based on the Open Inventor 3D Metafile format, with appropriate additions to handle the networking, won the vote. The VRML 1.0 specification was unveiled at the Second WWW Conference in October 1994.

The VRML standard is defined by an advisory committee, the VRML Architecture Group (VAG), which continues to expand the language. In Fall 1995, the group met to discuss the next version of VRML. In early 1996, the VRML community discussed a number of proposals to improve upon the VRML 1.0 specification. Proposals included Moving Worlds from Silicon Graphics, HoloWeb from Sun Microsystems, ActiveVRML from Microsoft, and Out-Of-This-World from Apple. All these proposals were revised and reshaped. A modified Moving Worlds proposal from Silicon Graphics won seventy percent of the votes in February 1996 and was adopted as VRML 2.0 in March 1996 by VAG. It was the creation of VRML 2.0 that made it very popular and useful.

VRML 2.0 offers significant enhancements over version 1.0. In particular, this version allows "collision detection," so that the users can bump into objects and give them a real perception of moving through objects. This version also allows "sensors" that wait for a particular event to occur and then do something in response to that event. This is a very powerful feature because it makes it possible for the user to manipulate the contents of the scene, allowing much greater interaction than just moving through a motionless scene. A example is a patrol car that the user may move around a street network or a switch that lights a shopping complex area on a map to indicate a night period. There are several kinds of sensors, but they fit roughly into three categories. Some are sensitive to touch through the mouse or other pointing device, such as touch sensors. These can be used to build controls that the user directly manipulates, such as the patrol car example above. The second type responds to user movement. These are proximity and visibility sensors. They may be used to sense the user's presence or gaze, and are primarily used to make scenes more efficient by turning features on only when they are visible or close by. The third type has only one member, but it may be the most important. This is the time sensor. The time sensor can be used in a variety of ways to drive animations of all kinds. In fact, animation would not be possible in VRML without using the time sensor.

VRML allows script nodes and prototyping of nodes. Objects in VRML are described using nodes. Each individual shape in a scene is described in its own node. Any other information that is needed to describe the shape is contained within the node as a field. Fields contain data describing color, position, size, or anything else that may be a property of some node or object. Thus, the viewer can zoom in and still identify the location in terms of the street address and coordinates. A simple example is the sphere node. It has one field which is its radius. A VRML file contains definitions of the nodes in the scene, and the definition of a node contains definitions for the values of its fields. Values do not have to be supplied for every possible field; default values will be assumed. For example, the default radius for a sphere node is one. The values in the fields may change as the scene is viewed, but the VRML file contains the initial field values. Scenes in VRML are built up in a hierarchy of nodes, which describes all of the shapes in the scene and their relationships to one another. Complex objects are made up of collections of simpler objects. For example, fingers are part of the hand, which is part of the arm, which is one part of the human body. Human anatomy forms a hierarchy, a situation similar to the case of VRML.

The script node is a key addition in VRML 2.0. This node contains its own scripts or routines written in a programming language such as JAVA or Javascript. These scripts allow these nodes to perform simple logic or complex analyses or animations of user and environmental events in the scene and respond in some intelligent way. In this project, we have used script nodes where the scripts have been written using the language vrmlscript, a simpler version of Javascript.

VRML 2.0 also allows prototyping of nodes. This feature allows creation of objects that can be reused, changing only some of the characteristics of the objects. We have also used prototyping of nodes extensively in this project. VRML 2.0 also allows other enhancements such as sound node, background node, fog node and elevation grid to add sound, background scene, fog, and rectangular grid for modeling terrain respectively (Ames, Nadeau, and Moreland 1997; Hartmann and Wernecke 1996).

In order to view a VRML scene, one needs a VRML browser, a program that interacts with the VRML files. This browser must reside locally on the user's computer. There are many VRML browsers available freely through the internet. Some of these are CosmoPlayer by Silicon Graphics, Liquid Reality by Dimension X, World View by Intervista and Wirl by VREAM. In this work, we will be using the CosmoPlayer Version 2.0 by Silicon Graphics, which is by far the most popular VRML browser.

CosmoPlayer is a plug-in application for use with world wide web browsers for viewing VRML files. In particular, it works with Netscape Navigator or Communicator, another popular web browser. All names of the VRML files end with the extension "wrl," and so when one opens a VRML file with the extension name "wrl" within a Netscape browser window, CosmoPlayer starts up and the VRML world gets displayed in the browser window. VRML offers four types of navigational capabilities: "examine," "walk," "fly," and "none," and CosmoPlayer provides control for all these types of navigation.

Examine Mode

We describe the examine mode in order to give the readers an idea about these functions. However, we also briefly mention the other modes for the sake of completeness. Examine mode allows the user to treat the scene as an object held out in front of them. The viewer can tilt the object and zoom in or look at it more closely. Examine mode brings a control panel at the bottom of the window.

This control panel, referred to as a "dashboard," is shown in Figure 1.

Figure 1

Dashboard for Examine Mode in CosmoPlayer

Starting from the left side of the dashboard, the first object looks like a cylinder with rounded ends. The main purpose of this button is to first create a pre-defined tour of the scene or the world and then to return to the original scene. In the pre-defined tour, the user can step through any pre-defined viewpoints that the world designer has created. There is a rectangular text window on this object, which displays the names of these views (if the designer has given them names). The user may click the left mouse button on the arrows to move from one viewpoint to the next, or click the round button to return to the current viewpoint. At present, we have not defined any special viewpoints in this project. Therefore, this control button can only be used to return to the starting view by clicking at the left end point of this button.

The second object from the left on the dashboard is a sphere. Clicking the mouse on this sphere and dragging it while holding the button down "tumbles" the scene in the window. That is, everything in the window will be made to spin around the center point in three dimensions. The third tube-like object next to the sphere is used to zoom in and out of the scene, again, by clicking and dragging. The fourth object on the dashboard is a diamond shape tool. By clicking and dragging on this, the viewpoint can be panned (translated) left, right, up, or down.

Finally, the two box objects on the far right are used to select between two different ways of interacting within the examine mode. These two interaction modes are called "navigate" mode and "point" mode. Highlighting the top box with the arrow puts the user in "point" mode. Highlighting the bottom box with the dice puts the user in the "navigate" mode. The description of the dashboard controls in the previous paragraphs above correspond to the point mode.

In the navigate mode, clicking and dragging with different combinations of the left and middle mouse buttons may be used to navigate instead of using the above described dashboard controls. The left mouse button will tumble (equivalent to using sphere in the point mode), the middle button will pan (equivalent to using rectangular button in the point mode), and the two together will zoom (equivalent to the tube button in the point mode). Although some users find it easier to navigate in the navigation mode, the point mode allows slightly more capabilities that are not available in the navigation mode. For example, in this project we have created buttons that a user can click to start an animation. However, these buttons that are part of the scene can only be clicked in the point mode.

Other Modes and Features

We now briefly describe other modes -- "walk," "fly," and "none." The walk mode allows the user to explore the scene or the world as if the user were walking. In particular, there is gravity in the scene and a notion of "up" and "down." The "fly" mode allows the user to fly around the world. In this mode, there is a notion of "up" and "down," but there is no gravity. These two modes use a control panel, shown in the figure below:

Figure 2

Dashboard for Walk of Fly Mode in CosmoPlayer

In this control panel there is no sphere or tube. Therefore, the user cannot tumble around the scene or zoom into it. Instead, the second object from the left on the dashboard can be used as a steering wheel to go left, right, front, and back. In the "none" mode, all navigation is disabled. The viewer is constrained to move about using only those animation features created by the author of the scene. In any of the modes above, the user can bring up a pop-up menu titled "viewer menu" by pressing the right mouse button. This menu offers several other possibilities. These include choosing between different travel speeds, amount of transparency, and quality of image. This menu can also be used to switch between different modes of navigation.

Animation Using VRML

One of the most important features offered by VRML is its built-in animation capability. This can be used in various ways, but two modes can be particularly useful for crime mapping. In the first, the scene may be navigated using a "virtual camera" analogy. Any combination of rotation, pan (translation), and zoom may be used to place the camera at any viewpoint. This viewpoint can be animated either interactively (the user moves the camera directly) or with other techniques, such as a pre-determined "flight path." We have used this technique in animating a Vancouver map described below, where the user can move the camera directly. In the second mode, the scene itself is animated. This allows the user to view the data as it changes over time. We have used this technique in animating pseudo-colored maps and color-keyed three-dimensional maps that will be described later.

We now demonstrate the animation capability of VRML by animating a map of the city of Vancouver, British Columbia, Canada using the first mode described in the previous paragraph.

This figure presents a map of Vancouver in VRML that will be animated using the dashboard of CosmoPlayer, shown at the bottom.

Figure 3

Map of Vancouver, Canada

Figure 4 is the same map panned to the right by clicking on the right side of the diamond on the dashboard. Figure 5 is the same map rotated by rotating the sphere on the dashboard. Figure 6 is the zoomed-in map of Vancouver achieved by pressing the tube-like control on the dashboard. Finally, Figure 7 shows a tilted map of Vancouver, again by manipulating the sphere on the dashboard. Thus, the entire map can be tilted at any latitude and longitude and can be viewed from any viewpoint in three dimensions.


Figure 4

Translated Map of Vancouver



Figure 5

Rotated Map of Vancouver


Figure 6

Zoomed-in Map of Vancouver


Figure 7

Tilted Map of Vancouver

Data, Hardware, and Software

In our project, we display crime data in various ways on a map of Vancouver. The first step was to build a VRML map of Vancouver. The map was generated from a Mapinfo data file of Vancouver intended for geographical information system software. This data file was converted into a VRML data file format. This is easily achieved because the VRML data file accepts two-dimensional line rendering. A simple two-dimensional line rendering was appropriate, so as not to distract from the data and to improve performance. Essentially the map consists of 13,789 line segments. Further, to improve performance, the data were filtered to join the segments into "polylines" wherever possible to optimize the size of the map file. The map was scaled and centered to fit in a square two units wide by two units tall, with coordinates of (-1, -1) in the lower left corner, and (1, 1) in the upper right.

This analysis is based upon the data obtained from the 911 calls for service of Vancouver police through their CAD system. The CAD data have been made available under controlled access to the Simon Fraser University Research Data library by Vancouver police and the data are available in machine readable format. A computer program routine has been built that facilitates retrieval by time period, nature or place of call, or many other variables as required. The crime data for the maps displayed in this paper consist of a month of data on 911 calls for police service for the month of January, 1993. The data were geocoded to convert the street address into an x-y coordinate system. Different techniques detailed later use different subsets of the total crimes during the month.

We have chosen to implement this project on the Silicon Graphics Workstation running Irix 6.2 with Netscape Navigator 3.1 (or higher) and CosmoPlayer 1.1 (or higher). Since all features of this project follow the VRML standard 2.0, this work is viewable on any system, including PCs and Macs, that have the appropriate internet browser and plugins, such as Netscape and CosmoPlayer, respectively. We obtained real-time performance on SGI workstations with graphics hardware. We also downloaded the software onto a PC with a 200 MHZ Pentium II processor and 64 MB RAM. The performance was still real-time with no perceptible degradation.

VRML and Crime Mapping

We now describe three different techniques for animating crime maps in VRML -- pin maps, two-dimensional pseudo-colored, aggregated crime maps, and three-dimensional, color-keyed box glyphs crime maps. Furthermore, crime information may be presented on the map in two ways: through the pin-based map, which gives the geographical coordinates of the incidents, and the raster images, which aggregate the information at a predetermined areal grid. Raster grid can be made small but it is an aggregation process where information about natural boundaries, census tracts, etc. is lost. The last two techniques use the rasterization method that is described in further detail later in this section.

Pin Maps. We begin by presenting examples of animation of pin maps to demonstrate that VRML can be used to display traditional two-dimensional maps as well. Figures 8-11 present a variety of pin maps. A red dot or sphere is placed at each crime location.

A pin map can give the viewer a very good feel for the density and distribution of crime. The viewer gets a very good overall picture, without losing sight of the individual crimes. In its traditional form, however, a pin map is rather cumbersome and time-consuming to produce. With VRML, we are able to generate a pin map that has many features of the traditional pin map, plus many new advantages. First, the map can be moved around easily and viewed from several angles. Figure 8 is a traditional pin map. Figures 9 and 10 present examples of the pin map when it has been rotated and zoomed-in, respectively. Figure 11 is a zoomed-in map that has also been tilted for convenient viewing.

Figure 8

Pin Map


Figure 9

Rotated Pin Map


Figure 10

Zoomed-in Pin Map

Figure 11

Tilted and Zoomed-in Pin Map


VRML can be easily used to create several variants of pin maps. In these maps, a crime corresponds to a red sphere of a fixed radius. This can be easily modified to create a pin map where different colors can be used for different types of crime or different radii can be used to combine the crimes at the same location. Furthermore, the map can be produced quickly; it can be generated directly from the data for immediate display on the screen. This allows an investigator to look at maps of any cross-section of data they wish, quickly and easily.

Pseudo-Color Mapping. Animation of aggregate crime maps through the pseudo-coloring technique requires rasterization of data; a pseudo-coloring scale; preparation of animation slices; and the design and implementation of a user interface to control the animation. We now describe each of these components.

First, the map is rasterized by dividing the total display area into small squares and estimating the amount of criminality of each kind in each small area. The rasterization does not depend upon the type of the map. In our work, we chose to rasterize the map into a 30x30 grid. Based upon this estimate a map is constructed that presents the crime variations within small areas. Crimes falling within the same area are added to compute the aggregate crime within that area. The raster image of the map is easier to work with than the point-based geographical map since the degrees of freedom for aggregated data are less than for individual data points. Another advantage is that the crime categories can be displayed on a scale from minimum to maximum and become an effective way of showing where the hot spots (the maximum range) are concentrated. In Figures 12-15 below the total number of crimes in any grid vary from zero to twenty-five.

Pseudo-color mapping is a well-established technique for data visualization across many disciplines (Lodha et al. 1996a, 1996b). By mapping the data values to a suitable color scale, an image can be created to quickly highlight features of the data that otherwise may be difficult to see. The term pseudo is used because there is no natural or inherent mapping of data to color; rather, the mapping is a matter of choice left to the user. By using VRML, we are able to generate pseudo-color maps directly from any cross-section of the data. In Figures 12 to 15, the following pseudo-coloring scheme is used: the bottom quartile of crimes is mapped from blue to cyan; the next quartile is mapped from cyan to green; the next quartile is mapped from green to yellow; and the top quartile is mapped from yellow to red. This pseudo-color scheme is shown as a legend on the right side of the maps. In this scheme, hot spots appear as red and areas of low criminal activity appear as blue. White regions indicate crime-free zones. We have chosen this color-scheme because red is usually associated with hot spots. The next level of hot spots is yellow and also attracts attention. In contrast, low crime zones have dull colors such as blue and green. Different pseudo-coloring schemes to suit the desired display can be easily created within the VRML.

Animation of aggregated crimes over time allows us to view the development of hot spots in Vancouver. To generate the animation, several animation slices are created. An animation slice is an image that constitutes one frame of the animation. Animation is created by displaying these slices in a sequential order fast enough to be perceived by eyes as a continuous motion. In Figures 12 to 15, we present four animation slices of an animation of one week of crime data. To create an animation slice, the total number of crimes in each of the small partitions is computed for every hour of the day for one week. For a period of one week, there are 168 hourly intervals. Here we have generated 168 slices corresponding to each interval. These animation slices are then played continuously. Figures 12 to 15 show animation slices 42, 92, 142, and 168 of this animation.

Figure 12

Aggregated Crime in Pseudo-color: Animation Slice 42

Figure 13

Aggregated Crime in Pseudo-color: Animation Slice 92

Figure 14

Aggregated Crime in Pseudo-color: Animation Slice 142

Figure 15

Aggregated Crime in Pseudo-color: Animation Slice 168

The time stamps for the animation slices appear at the left corner of these image. The images therefore display the total number of crimes starting from Sunday 00:00 until the time shown on the image. The animation displays slow emergence of hot spots and their distribution. The speed of the animation can be controlled using the right button in the CosmoPlayer.

Animation for longer periods, such as one month or a year, or animation with a different number of slices, such as intervals of half or four-hour intervals, can also be created conveniently using VRML. As stressed earlier, VRML offers the advantage over other software by enabling the user to interact with the images in several different ways. The user interface to play this animation is one of the most powerful and desired capabilities of this program. As shown in Figures 12 to 15, five buttons on the left hand side appear as soon as this program is started. In the beginning, as shown in Figure 12, the user can see only a Vancouver map. The user then simply clicks on the cumulative button to start the animation. Cumulative buttons have been implemented in VRML 2.0 using the concept of touch sensors, described above. Clicking this button triggers a time sensor implemented in VRML 2.0 that starts the animation. The logic for animation is coded in vrmlscript. The basic idea of the steps involved in designing a user interface using touch sensors can be described briefly as follows: When the user hits the button, the event triggers animation logic to be executed. In addition, a timer determines whether the animation will be executed for a specified duration or continuously until it is explicitly stopped. The logic generates a set of outgoing events to a compute engine for further processing. The output of this computational engine is then sent to the target that changes the final parameters of the scene in order to create the desired animation. Further details can be found in standard VRML textbooks (Hartman and Wernecke 1996; Carey and Bell 1997). The user can stop the animation at any point by clicking the stop button and restart it by clicking on the bottom button titled "go back." The animation can be restarted from the beginning by hitting the reset button. Finally, the query button allows the user to query the cumulation of any particular type of crime. This feature is useful because different regions often specialize in different types of crime (Brantingham and Brantingham 1995). The hot spot for total crimes may not be the hot spot for auto thefts. By picking only the auto theft, one can see the evolution of hot spots of auto theft, which can suggest a different location of hot spots for this type of crime.

Stacked Color-Keyed Box Glyphs in Three Dimensions. With pseudo-coloring, the individual occurrence of crime becomes obscured when data are aggregated. Another technique, using data glyphs to represent individual crimes, does not have this disadvantage. A "glyph" is any symbol that encapsulates some data features. An arrow is an example of a glyph. The length of the arrow denotes the magnitude of velocity and the direction of the arrow indicates the direction of the data of interest, say, wind velocity. A pin map is also an example of a simple glyph mapping, where each pin or sphere represents one crime. Spheres and boxes are two popular glyphs; the color and size of glyphs indicate data features. Here we have chosen simple box glyphs. The size of a glyph indicates the total amount of crime and the color of a glyph indicates the type of crime. The bigger the glyph, the greater the total number of crimes.

We now describe the animation of a three-dimensional crime map, where different types of crimes are mapped to different colors and each crime is stacked as a colored box in three dimensions. This technique requires rasterization of data; a color key scale; preparation of animation slices in three dimensions; and the design and implementation of a user interface for controlling different features of animation. We now describe each of these components in further detail. Rasterization of the base map is similar to the rasterization used for pseudo-coloring described above.

The color of the box is determined by the type of the crime. The box is placed directly on the region of the map where the crime occurred. In this work, we have chosen to display only six types of crimes. These are assault, break and enter, family trouble, mischief, auto theft, and theft. These crime types are shown in red, orange, purple, bluish-green, dark blue and green respectively. This color-key scale is shown in Figures 16 to 19. An alternative color key scale can be easily designed.

In contrast to the pseudo-coloring scheme, where the total crime is mapped to the color of the grid on a two-dimensional map, the total numbers of crimes are now stacked on top of each other in three dimensions. This technique is helpful in highlighting the hot spots clearly by depicting them as "high-rise" spots. As in the pseudo-coloring technique, we have computed 168 animation slices -- one for each hourly interval of one week of data. For each hour, the total number of crimes of each type for a small partition is computed and then shown as a colored box on top of that partition. The height of the box is proportional to the total number of crimes of that type. If the region in which a box is to be placed is already occupied, it is stacked directly on the preceding boxes. In this way, it is easy to see what types of crimes occur in any particular region. Figures 16 to 19 show three different views of the final animation slice of this type of crime map. VRML allows the user to change his/her viewpoint even while the animation is going on. Figure 16 shows the crime map in its original position, while Figures 17 and 18 display the same map from different viewpoints after rotation and zooming, respectively, into the maps.

The user interface for this type of crime map consists of seven buttons shown in figures 16 to 19. In the beginning, the user sees a blank map of Vancouver as shown in Figure 3. The user can click on the start button to start the animation. The start button is implemented as a touch sensor that in turn triggers a time sensor producing the animation. The other six buttons correspond to different crime types and have been implemented as toggle buttons. If those buttons are depressed, then those crimes will be shown, otherwise not. Therefore, the user can choose to display any combination of crime types. Figure 19 uses this feature to display only three types of crime -- assault, break and enter, and family trouble. By picking only one type of crime or a set of similar types of crimes, one can use this tool to find the location of hot spots of different types of crimes and their distribution.

Figure 16

Three-dimensional Aggregated Crime Map: Animation Slice 168,
Viewed from the Original Viewpoint


Figure 17

Three-dimensional Aggregated Crime Map: Animation Slice 168,
Rotated and Viewed from the Other Side

Figure 18

Three-dimensional Aggregated Crime Map: Animation Slice 168,
Zoomed into Areas of High Crime


Figure 19

Three-dimensional Aggregated Crime Map of Three Types of Crime:
Tiled and Zoomed-in Map


This work presents the use of VRML to create and animate three-dimensional maps. We have focused on tools and techniques to demonstrate the capabilities of the system. The examples support our view that there are advantages in using dynamic images and three-dimensional images over static crime maps and two-dimensional maps. We have attempted to make our presentation accessible to criminal justice practitioners by focusing on the functional utility of the system and the user interface. Only the minimal technical details have been included to convey which features of VRML 2.0 were used to implement user interface controls, such as buttons and animations. An in-depth discussion of implementation details, understood only by technologically savvy readers, has been deliberately avoided.

We are now attempting to add other features to the program to make it more meaningful to the police practitioner. In this paper we have focused primarily on the spatial locations of crimes. VRML can also be used to depict the temporal information associated with crime. By displaying the changing scenario, these computer generated maps can be used to show how an area transforms into a hot spot as time changes. Thus, hot spots of drug distribution areas, domestic violence, homicides, robberies, and other crime types can be shown changing over time by using different glyphs, or colors, or both.

The changing nature of crime over different periods can also be examined with respect to the environmental ecology, such as the changing routine activities of the areas. The way criminal incidents are distributed with other activities of the area, such as traffic flows, bus schedules, sporting events, and the opening and closing hours of schools and malls, could be integrated into one system to provide the police officers with a more realistic image of activities in their jurisdiction. Animation of these maps could help practitioners discern patterns that would otherwise go unnoticed. This system also has the potential to be a real-time decision making tool for police management. By linking this system to calls for service as they are being received, a computer can be programmed to produce, say, an hourly series of maps for different areas. The visual display can actually suggest when an area is becoming difficult to handle as more and more crimes are reported. Thus, by specifying a threshold level, these computer maps could inform a police officer when certain areas are reaching the critical phase and require additional reinforcements. These computer-guided images of the changes in any kind of criminal activities could therefore become a powerful tool of decision making in the hands of the police administrator. Undoubtedly, VRML and other emerging computer graphic techniques and technologies are going to find their way into criminal justice practitioners' research and daily work, and perhaps radically transform the field in a not-so-distant future.

Therefore, it is almost a truism to say that criminal justice practitioners need to keep abreast of new technological developments.Those described in this paper will eventually transform the criminal justice field just as they now affect disciplines like medicine, astronomy, urban studies, geography, and archeology. Criminal justice is an interdisciplinary subject and a large number of techniques borrowed from different disciplines are enriching and fueling its growth. For instance, network analysis (Sarnecki 1990), different kinds of econometric modeling techniques (Reilly and Witt 1992; Alkan, Demange, and Gale 1991), fuzzy logic (Verma 1996), fractals (Verma 1998), and even computer simulations (Stull 1994; Kern 1989) are now part of this discipline. The trend toward applying new techniques borrowed from other disciplines is already discernible. The number of methodologists searching for alternative ways to visualize and analyze crime data is also steadily growing. Undoubtedly, the interdisciplinary approach is going to introduce many more analytical and descriptive methods to this field. Our work is just another step in this direction. If this paper succeeds in introducing this new technological tool to the criminal justice scholarly community, and in generating interest for a greater and creative usage of new techniques, then this effort will be considered a success.

Top of Page


Alkan, Ahmet, Gabrielle Demange, and David Gale. 1991. "Fair Allocation of Indivisible Goods and Criteria of Justice." Econometrica: Journal of the Econometric Society 59(4): 1023-1040.

Ames, A. L., D. R. Nadeau, and J. L. Moreland. 1997. VRML 2.0 Sourcebook. New York: John Wiley and Sons.

Block, C.R. 1995. "STAC Hot Spot Areas: A Statistical Tool for Law Enforcement Decisions." Pp. 15-32 in Crime Analysis Through Computer Mapping, edited by Carolyn Rebecca Block, Margaret Dabdoub, and Suzane Fregly. Washington DC: Police Executive Research Forum.

Block, Carolyn Rebecca. 1996. "The Geo-Archive: An Information Foundation for Community Policing." Unpublished paper.

Block, Carolyn Rebecca; Margaret Dabdoub, and Suzane Fregly. 1995. Crime Analysis Through Computer Mapping. Washington DC: Police Executive Research Forum.

Boots, B.N. and A. Getis. 1988. Point Pattern Analysis. California: Sage.

Brantingham, P. J. and P. L. Brantingham. 1984. Patterns in Crime. New York: Macmillan Publishing Company.

________ 1991. Environmental Criminology. Prospect Heights, IL: Waveland Press.

________ 1995. "Location Quotients and Crime Hot Spots in the City." Pp. 129-150 in Crime Analysis Through Computer Mapping, edited by Carolyn Rebecca Block, Margaret Dabdoub, and Suzane Fregly. Washington DC: Police Executive Research Forum.

Brantingham, P.J., P. L.Brantingham, and Arvind Verma. 1992. "Crime Pattern Analysis using Set Theory and Algebraic Topology." Paper presented at the American Society of Criminology annual conference in New Orleans, November.

Canter, P. 1995. "State of the Statistical Art: Point-Pattern Analysis." Pp. 151-160 in Block, Carolyn Rebecca, Margaret Dabdoub, and Suzane Fregly, Crime Analysis Through Computer Mapping. Washington DC: Police Executive Research Forum..

Carey, R. and G. Bell. 1997. The Annotated VRML 2.0 Reference Manual. Addison-Wesley.

Caulkins, J., J. Cohen, and J. Wei. 1996. "Predicting Criminal Recidivism: A Comparison of Neural Network Models with Statistical Methods." Journal of Criminal Justice 24(3).

Fotheringham, Stewart and Peter Rogerson, eds. 1994. Spatial Analysis and GIS. London: Taylor & Francis Ltd.

Gershon, N., 1992. "Visualization of Fuzzy Data Using Generalized Animation." Pp. 268-273 in Proceedings of IEEE Visualization.

Goldsmith, Victor and Douglas Williamson. June. URL: http://everest.hunter.cuny.edu/~dougwill/nij_survey/introduction.html. Accessed1998.

Hagen, H., H. Muller, and G. M. Nielson. 1993. Focus on Scientific Visualization. New York: Springer-Verlag.

Hartman, J. and J. Werneck. 1996. The VRML 2.0 Handbook. Addison-Wesley.

Kern, Gary M. 1989. "A Computer Simulation Model for the Study of Police Patrol Deployment." Simulation. 52(6):226-232.

LeBeau, James L. 1995. "The Temporal Ecology of Calls for Police Service." Pp. 111-128 in Crime Analysis Through Computer Mapping, edited by Carolyn Rebecca Block, Margaret Dabdoub, and Suzane Fregly. Washington DC: Police Executive Research Forum.

Lodha, S.K. and Arvind Verma. 1997. "Spatio-Temporal Crime Mapping Using VRML." Paper presented at the Crime Mapping Symposium Conference, Denver, Co. October.

Lodha, S.K., B. Sheehan, A.T. Pang, and C.M. Wittenbrink. 1996a. Pp. 238-245 in "Visualizing Geometric Uncertainity of Surface Interpolants." Proceedings of Graphics Interface. Toronto, Canada. May.

________1996b. "UFLOW: Visualizing Uncertainity in Fluid Flow." Pp. 249-254 in Proceedings of IEEE Visualization.. October.

MacAlister, Bruce R. 1996. "Local Government City Police Share GIS." GIS World 9(4).

Maltz, Michael D., Andrew C. Gordon, and Warren Friedman. 1991. Mapping Crime In Its Community Setting: Event Geography Analysis. New York: Springer-Verlag.

Mandelbrot, B. 1986. The Fractal Geometry of Nature. New York: Freeman.

Miller, Arthur I. 1987. Imagery in Scientific Thought. Cambridge, England: MIT Press.

Nasar, Jack L. and Bonnie Fisher. 1993. "'Hot Spots' of Fear and Crime: A Multi-Method Investigation." Journal of Environmental Psychology 13:187-206.

Reilly, Barry and Robert Witt. 1992. "Crime and Unemployment in Scotland: An Econometric Analysis Using Regional Data." Scottish Journal of Political Economy 39(2): 213-228.

Rengert, George F. 1995a. "Comparing Cognitive Hot Spots with Crime Hot Spots." Pp. xiii-xiv in Crime Analysis Through Computer Mapping, edited by Carolyn Rebecca Block, Margaret Dabdoub, and Suzane Fregly. Washington DC: Police Executive Research Forum.

Rengert, George F. 1995b. "More Than Just A Pretty Map: How Can Spatial Analysis Support Police Decision?" Pp. 33-47 in Crime Analysis Through Computer Mapping, edited by Carolyn Rebecca Block, Margaret Dabdoub, and Suzane Fregly. Washington DC: Police Executive Research Forum.

Rheingans, P. 1992. "Color, Change and Control for Quantitative Data Display." Pp. 252-259 in Proceedings of IEEE Visualization.

Rossmo, Kim. 1995. Geographic Profiling: Target Patterns Of Serial Murderers. Unpublished Ph.D. dissertation. Burnaby: Simon Fraser University.

Sarnecki, Jerzy. 1990. "Delinquent Networks in Sweden." Journal of Quantitative Criminology 6(1):31-50.

Sherman, L. W., P. R. Gartin, and M. E. Buerger. 1989. "Hot Spots of Predatory Crime: Routine Activities and the Criminology of Place." Criminology 27:27-55.

Stull, Judith C. 1994. "Convict: A Computer Simulation of the Criminal Justice System." Computers in Human Services 11(3 / 4):261-268.

Verma, Arvind and S.K. Lodha. 1997. "Animation of Crime Maps Using Dynamic Computer Imagery." Paper presented at the annual conference of the American Society of Criminology in San Diego, November.

Verma, Arvind. 1996. New Tools of Analyses for Criminology: An Exploration. Unpublished Ph.D. dissertation. Burnaby: Simon Fraser University.

Verma, Arvind. 1997. "Construction of Offender Profiles Using Fuzzy Logic." Police Studies: The International Review of Police Development 20(2):408-418.

Verma, Arvind. 1998. "The Fractal Dimension of Policing." Journal of Criminal Justice 26(5):425-435.

Walker, Samuel. 1998. The Police in America: An Introduction (3rd edition). New York: McGraw Hill College.

Suresh K. Lodha

Suresh K. Lodha is an associate professor of Computer Science at the University of California, Santa Cruz. He received an M.Sc. degree in mathematics integrated with engineering from the Indian Institute of Technology, Kanpur, India, in 1976. He received an M.S. degree in mathematics from the University of California, Berkeley, in 1984 and a Ph.D. degree in Computer Science from Rice University, Houston, in 1992. His current research interests include computer graphics, scientific visualization and sonification, information visualization and crime mapping.

Contact information: Department Of Computer Sciences, University of California-Santa Cruz 95064; e-mail: lodha@cse.ucsc.edu; URL: http://www.cse.ucsc.edu/~lodha


Arvind Verma

Arvind Verma has worked in the Indian Police Service for several years. He has served as Superintendent of Police in the province of Bihar and occupied many senior administrative posts within the police organization. His doctoral work was concerned with the development of new tools of analyses using Fuzzy Logic, Topology and other "qualitative" mathematical techniques. He obtained his Ph.D. from Simon Fraser University, Canada and at present is working at Indiana University, Bloomington. His research interests are in policing, comparative criminal justice systems, policy issues, research methods, mathematical modeling, fuzzy logic and geographical information systems.

Contact information: Department Of Criminal Justice, Indiana University, Bloomington, IN 47405; phone 812.855.0220; fax 812.855.5522; e-mail averma@indiana.edu; URL: http://php.ucs.indiana.edu/~averma.

Top of Page

Return to Western Criminology Review Archive

Go to Western Society of Criminology Home Page