64
LOCATION BASED COMPUTERIZED MULTIMEDIA PRESENTATION ON AMERICAN FOOTBALL _______________ A Thesis Presented to the Faculty of San Diego State University _______________ In Partial Fulfillment of the Requirements for the Degree Master of Science in Computer Science _______________ by Garima Verma Spring 2015

LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

LOCATION BASED COMPUTERIZED MULTIMEDIA PRESENTATION

ON AMERICAN FOOTBALL

_______________

A Thesis

Presented to the

Faculty of

San Diego State University

_______________

In Partial Fulfillment

of the Requirements for the Degree

Master of Science

in

Computer Science

_______________

by

Garima Verma

Spring 2015

Page 2: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42
Page 3: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

iii

Copyright © 2015

by

Garima Verma

All Rights Reserved

Page 4: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

iv

DEDICATION

This thesis is dedicated to my Brother, Aakash Verma, my parents, Surinder Prasad

Verma and Rama Verma, my Sister Sakshi Verma and my husband Abhishek Deora who

have always motivated me in the times of thick and thin, thank you.

To the faculty of Computer Science Department of SDSU which has helped me to

gain the ability to tackle challenges, I am forever grateful.

Thank you all for the unconditional love, guidance and support that you have always

given me and the faith that you have always shown in me.

Page 5: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

v

ABSTRACT OF THE THESIS

Location Based Computerized Multimedia Presentation on American Football

by Garima Verma

Master of Science in Computer Science San Diego State University, 2015

The focus of this thesis is to create a GIS tool presenting the history of most popular

sport in United States: football. This is a geographic computer interactive tool that can make user more interested in American football, how it started, current NFL and CFL teams, Super bowl winners, rules and penalties, and a most important feature language translation, that will specifically help users who are not familiar with American and Canadian football, for example international students with diverse background. Students can select different layers and have the ability to click on a particular state and team to see more information on respective web pages. It also enhances the student’s knowledge by watching memorable videos, audios and pictures. They can start this application and customize it according to their individual interests. For the assessment of knowledge, there is a quiz at the end where students are presented questions about the topics they have learned. North American has three significant spoken and written languages: English, French and Spanish. The primary technical focus here, rare in GIS tools, is making the application tri-lingual. One of the biggest design challenges is to have the interface simple and capable of handling multiple tasks in real time without compromising on the feature set. Consequently, every attempt has been made to present a depth of subject knowledge through a lucid yet powerful interface. The application will be in JAVA and utilizes MOJO (Map Objects JAVA Objects), which is provided by ESRI. Using MOJO, GIS-related features can be easily incorporated into the application by linking data to various geographical features on the map.

Page 6: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

vi

TABLE OF CONTENTS

PAGE

ABSTRACT ...............................................................................................................................v

LIST OF TABLES ................................................................................................................. viii

LIST OF FIGURES ................................................................................................................. ix

ACKNOWLEDGEMENTS ..................................................................................................... xi

CHAPTER

1 INTRODUCTION .........................................................................................................1 

1.1 Overview ............................................................................................................1 

1.2 About the Application ........................................................................................2 

2 TECHNOLOGY ............................................................................................................3 

2.1 About Java .........................................................................................................3 

2.1.1 Version of Java .........................................................................................5 

2.1.1.1 Java 6, Java 7 ...................................................................................5 

2.1.1.2 About Java NetBeans .......................................................................6 

2.1.2 NetBeans IDE Bundle for Web and Java EE ............................................6 

2.1.3 The Netbeans IDE Bundle for JAVA ME ................................................7 

2.2 Map Objects, JAVA Edition ..............................................................................7 

2.3 HTML 5 .............................................................................................................8 

2.4 CSS ....................................................................................................................8 

3 DESIGN AND PROTOTYPE .....................................................................................10 

3.1 High Level Architecture Diagram ...................................................................10 

3.2 Prototype ..........................................................................................................11 

4 REQUIREMENTS .......................................................................................................19 

4.1 Functional Requirements .................................................................................19 

4.2 Software Requirements ....................................................................................20 

4.3 User Requirements ...........................................................................................20 

Page 7: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

vii

5 INSTALLATIONS ......................................................................................................21 

6 PROJECT TOOLBAR AND MENU OPTIONS ........................................................30 

6.1 Print Tool .........................................................................................................30 

6.2 Add Delete Layer Tool ....................................................................................31 

6.3 Zoom Pan Tool Bar ..........................................................................................33 

6.4 Identify .............................................................................................................35 

6.5 Hotlink Tool .....................................................................................................36 

6.6 Find Tool ..........................................................................................................38 

7 PROJECT LAYERS ....................................................................................................39 

7.1 Feature Layers ..................................................................................................39 

7.2 Tab Delimited Text Files .................................................................................42 

8 SCREENSHOTS..........................................................................................................44 

9 CONCLUSIONS AND OBSTACLES ........................................................................50 

9.1 Conclusion .......................................................................................................50 

9.2 Obstacles ..........................................................................................................50 

10 FUTURE ENHANCEMENTS ....................................................................................51 

REFERENCES ........................................................................................................................52 

Page 8: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

viii

LIST OF TABLES

PAGE

Table 6.1. Selection Toolbar ....................................................................................................38 

Page 9: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

ix

LIST OF FIGURES

PAGE

Figure 3.1. High level architecture diagram. ...........................................................................10 

Figure 3.2. Prototyping model. ................................................................................................11 

Figure 3.3. Application- start screen. .......................................................................................12 

Figure 3.4. Map button showing all the teams on US map with labels and symbols. .............13 

Figure 3.5. Identify button showing team information. ...........................................................13 

Figure 3.6. Identify button showing how to select audio translation. ......................................14 

Figure 3.7. HTML page showing team information in French or English. .............................15 

Figure 3.8. NFL website – Homepage.. ...................................................................................15 

Figure 3.9. ReadMe..................................................................................................................16 

Figure 3.10. Quiz. ....................................................................................................................17 

Figure 3.11. How to open About Button..................................................................................18 

Figure 3.12. About Button. ......................................................................................................18 

Figure 5.1. Library manager. ...................................................................................................22 

Figure 5.2. NetBeans - New library. ........................................................................................23 

Figure 5.3. Adding MOJO libraries to NetBeans. ...................................................................23 

Figure 5.4. NetBeans - browse JAR folder. .............................................................................24 

Figure 5.5. Netbeans palette – adding audio JAR file. ............................................................24 

Figure 5.6. NetBeans - palette menu. .......................................................................................25 

Figure 5.7 NetBeans - install components to palette. ..............................................................26 

Figure 5.8. NetBeans – select components on palette. ............................................................27 

Figure 5.9. NetBeans - palette category selection. ...................................................................28 

Figure 5.10. NetBeans development environment. ..................................................................29 

Figure 6.1. Map Objects toolbars. ............................................................................................30 

Figure 6.2. Print tool. ...............................................................................................................31 

Figure 6.3. Using add layer too1. .............................................................................................32 

Page 10: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

x

Figure 6.4. Using add layer tool 2. ...........................................................................................32 

Figure 6.5. Using Pan Tool. .....................................................................................................33 

Figure 6.6. Using Zoom toolbar (ZoomIN). ............................................................................34 

Figure 6.7. Using Zoom toolbar (ZoomOUT). ........................................................................34 

Figure 6.8. Using Zoom toolbar (Zoom to Full extent). ..........................................................35 

Figure 6.9. Using Identify tool. ................................................................................................35 

Figure 6.10. HotLink tool. .......................................................................................................36 

Figure 6.11. HotLink tool showing the webpage in English. ..................................................37 

Figure 6.12. Hotlink tool showing language translation from English to French. ...................37 

Figure 7.1. AFC team layer. .....................................................................................................40 

Figure 7.2. NFC team layer. .....................................................................................................41 

Figure 7.3. Super Bowl winning (National football Conference) teams layer. .......................41 

Figure 7.4. Canadian Football team layer. ...............................................................................42 

Figure 7.5. Txt file for AFC teams. .........................................................................................43 

Figure 7.6. Txt file for NFC teams. .........................................................................................43 

Figure 8.1. Main page of the application in English.. ..............................................................44 

Figure 8.2. Main page of the application in Spanish.. .............................................................45 

Figure 8.3. Web page displaying statistics of all the teams after clicking Statistics Button on the main application. ...................................................................................45 

Figure 8.4. Web page displaying news of all the teams after clicking News Button on the main application. ....................................................................................................46 

Figure 8.5. Web page displaying statistics of all the teams after clicking Statistics Button on the main application in Spanish. .................................................................46 

Figure 8.6. Web page displaying videos after clicking on Videos button on the main page. .............................................................................................................................47 

Figure 8.7. Identify tool on map. .............................................................................................47 

Figure 8.8. Hotlink tool on map. ..............................................................................................48 

Figure 8.9. Quiz displayed after clicking Quiz button on the application. ..............................48 

Figure 8.10. ReadMe file displayed after clicking the ReadMe Button on the application. ...................................................................................................................49 

Page 11: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

xi

ACKNOWLEDGEMENTS

I would like to thank my thesis advisor Dr. Carl Eckberg for giving me an opportunity

to work on this thesis project, learn more about American Football, for his guidance, support

and motivation throughout this project.

I would also like to express my sincere thanks to Dr. Nicole Smith for helping me

gather data about American Football and for giving me this opportunity to make a project

that will be useful for students in the Department of Sports.

Also, I want to express my gratitude to Professor William A. Root and Dr. David

Kahan for being a part of my thesis committee and for their help and cooperation.

Page 12: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

1

CHAPTER 1

INTRODUCTION

1.1 OVERVIEW

The advent of efficient fast processors has resulted in a significant increase in the

expectations of the end users of any software package. Our world of computers is no

different for the velocity of evolution in information. One particular part that is a focus of my

work is the evolution of “E learning” also commonly known as web learning, online

education and the like. This mode of knowledge acquisition is a shift from traditional paper

books to computer-based systems including the web. This form of learning has experienced

tremendous popularity in the past fast few years. Our applications should be such that it

should be easily accessible by the end user and it should be interactive.

The main focus for building this application is to help students—especially

International students—to understand the very popular game, American Football. This tool is

interactive, and has following features like audio clips, videos of various teams, and quizzes.

A user can take a quiz to check his/her understanding of the game, etc.

E-Learning is multimedia designed to enhance user interest and also increase

presentation clarity. Another e-learning common practice is a map-based presentation, so that

locational and non-locational information are easily paired. All of these practices have been

followed, with feedback collected from the intended audience, 6 students familiar with

Cricket and Soccer, but not Football.

From a sports fan’s point of view, the NFL is the most popular game. While there are

currently no franchises in Canada or Mexico there are many fans in these countries.

Moreover, the US has millions of Spanish immigrants from south of the US border, and they

also, like international students, often need to learn the culture of American Football, and

they become rabid fans. French speaking Canadians are not as large an immigrant group, and

are more often bilingual, but learning terms in both languages is still important.

Page 13: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

2

It is not particularly well known, but Canada has its own pro football league, the

Canadian Football League (CFL), with somewhat different rules, and for the citizens of

Canada, where labels on a can of Coke are often bilingual, an interface with a French option

is “de rigueur”

GIS in general, with ESRI (Environmental Scientific Research Institute) has been

shown to focus on localization and internalization. The primary technical goal of this paper is

to make the tool trilingual, exploring the most effective ways to do that, and make

localization of e-learning tools easier for others.

1.2 ABOUT THE APPLICATION

This application is developed in JAVA using NetBeans, an integrated development

environment and Map Objects Java Object (MOJO). It is the product of Environmental

Systems Research Institute (ESRI), which is an international supplier of Geographic

Information System (GIS) software. The application is developed using various query and

data retrieval activities (i.e., Web and Server access through Map Objects). It also supports

various image formats, shape files and layers which are required for developing GIS

applications. The thesis has been divided into the following chapters:

Introduction/Overview

Technology

Design and Prototype

Requirements

Installation

Project Toolbar and Menu option

Project Layers

Screenshots

Page 14: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

3

CHAPTER 2

TECHNOLOGY

This GIS application is built using various technologies:

Java NetBeans 6.7.1

Map Objects Java Edition

2.1 ABOUT JAVA

The Java programming language was originally developed by Sun Microsystems which was initiated by James Gosling and released in 1995 as core component of Sun Microsystems' Java platform (Java 1.0 [J2SE]). As of December 2008, the latest release of the Java Standard Edition is 6 (J2SE). With the advancement of Java and its widespread popularity, multiple configurations were built to suite various types of platforms. Ex: J2EE for Enterprise Applications, J2ME for Mobile Applications. Sun Microsystems has renamed the new J2 versions Java SE, Java EE, and Java ME, respectively. Java is guaranteed to be Write Once, Run Anywhere. [1]

Java has two editions:

Java Standard Edition (SE)

Java Enterprise Edition (EE)

Difference between Standard Edition (SE), Enterprise Edition (EE) and Micro Edition

(ME):

SE is the baseline JVM and libraries. This is the edition used by most PC end-users.

The JVM you get with EE is one and the same with the one in SE, but EE adds a large number of libraries for server-oriented programming…

ME is Java adapted for resource-constrained (i.e., low memory, low power) devices, e.g. cellphones and PDA’s. Because of their typically low storage and memory capacities, such devices can’t afford to have all the libraries found in SE…Small devices differ significantly from one another and so Sun leaves it up to device makers to offer proper implementations of ME for its particular platform. Sun has an ME reference implementation that runs on PCs which is used for software development...

Page 15: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

4

Java Development Kit (JDK) vs. Java Runtime Environment (JRE)

On PC’s, one has the choice of using Sun’s JDK or the JRE. The JRE, meant for end-users, comes in only the SE flavor and contains the JVM (Java Virtual Machine) and the SE standard libraries. The JDK comes in three editions and includes not just the JVM and libraries, but also development tools, including javac (Sun’s java compiler), so this is what you’ll want as a programmer. [2]

Java has following features:

Object Oriented: In Java, everything is an object. Java can be easily extended since it is based on the Object model.

Platform independent: Unlike many other programming languages including C and C++, when Java is compiled, it is not compiled into a platform-specific machine, rather into platform independent byte code. This byte code is distributed over the web and interpreted by a virtual Machine (JVM) on whichever platform it is being run.

Simple: Java is designed to be easy to learn. If you understand the basic concepts of OOP Java would be easy to master.

Secure: With Java's secure feature it enables to develop virus-free, tamper-free systems. Authentication techniques are based on public-key encryption.

Architectural-neutral: Java compiler generates an architecture-neutral object file format which makes the compiled code to be executable on many processors, with the presence of Java runtime system.

Portable: Being architectural-neutral and having no implementation dependent aspects of the specification makes Java portable. Compiler in Java is written in ANSI C with a clean portability boundary which is a POSIX subset.

Robust: Java makes an effort to eliminate error prone situations by emphasizing mainly on compile time error checking and runtime checking.

Multithreaded: With Java's multithreaded feature it is possible to write programs that can do many tasks simultaneously. This design feature allows developers to construct smoothly running interactive applications.

Interpreted: Java byte code is translated…to native machine instructions at run time and is not stored anywhere. The development process is more rapid and analytical since the linking is an incremental and light weight process.

High Performance: With the use of Just-In-Time compilers, Java enables high performance.

Distributed: Java is designed for the distributed environment of the internet.

Dynamic: Java is considered to be more dynamic than C or C++ since it is designed to adapt to an evolving environment. Java programs can carry an

Page 16: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

5

extensive amount of run-time information that can be used to verify and resolve accesses to objects on run-time. [3]

2.1.1 Version of Java

Without getting into the features added by the versions, the following represents the

naming history:

The original release of Java was 1.0, released in 1996.

Then came 1.1 in 1997.

1.2 in 1998 is when Sun split Java into the three editions. Sun began calling this version and subsequent versions Java 2, and so one will see references to J2SE, J2EE, and J2ME (Java 2 Standard Edition, Enterprise Edition, and Micro Edition, respectively). Sun began giving the releases code names while they were in development, calling 1.2 “Playground.”

1.3 was released in 2000 (confusingly still called Java 2, codenamed Kestre).

1.4 in 2002 (confusingly still cased Java 2). Codenamed Merlin.

Sun then decided the version numbers weren’t getting big enough fast enough, so they decided to call the next version, released in 2004, variously 1.5, 5.0, Java 5, or…J2SE 5.0, J2EE 5.0, or J2ME 5.0. Codenamed Tiger…

In late 2006, Java 6 is released, known internally as 1.6.0. Codenamed Mustang.

In 2011 Java 7 (1.7.0), codenamed Dolphin was released. [2]

2.1.1.1 JAVA 6, JAVA 7

As for the feature improvements these versions represent, in general, each release saw bug fixes and performance improvements for the development tools and JVM along with additions to and refinement of the libraries. Aside from these…changes, Java 5 is the one release which significantly added new features to the language itself, including generics, annotations, autoboxing, enumerations, “varargs,” and the “enhanced for” loop. [2]

JAVA Swing

Java Swing is a lightweight Java graphical user interface (GUI) widget toolkit that includes a rich set of widgets. It is part of the Java Foundation Classes (JFC) and includes several packages for developing rich desktop applications in Java. Swing includes built-in controls such as trees, image buttons, tabbed panes, sliders, toolbars, color choosers, tables, and text areas to display HTTP or rich text format (RTF). Swing components are written entirely in Java and thus are platform-independent. [4]

Page 17: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

6

JLabel

JLabel is a simple component for displaying text, images or both. It does not react to input events. [5]

JCheckBox

CheckBox is a box with a label that has two states: on and off. If the check box is selected, it is represented by a tick in a box. A check box can be used to show or hide a splash screen at startup, toggle visibility of a toolbar, etc. [5]

JComboBox

JComboBox is a component that combines a button or editable field and a drop-down list. The user can select a value from the drop-down list, which appears at the user's request. If one makes the combo box editable, then the combo box includes an editable field into which the user can type a value. [5]

JProgressBar

A progress bar is a widget that is used when we process lengthy tasks. It is animated so that the user knows a task is progressing. The JProgressBar widget provides a horizontal or a vertical progress bar. The initial and minimum values are set to 0 and the maximum is 100. [5]

2.1.1.2 ABOUT JAVA NETBEANS

The NetBeans IDE is an open-source integrated development environment. NetBeans

IDE supports development of all Java application types (Java SE…Java ME, web, EJB and

mobile applications) out of the box [6].

Modularity: All the functions of the IDE are provided by modules. Each module provides a well-defined function, such as support for the Java language, editing, support for the CVS versioning system, and SVN. NetBeans contains all the modules needed for Java development in a single download, allowing the user to start working immediately. Modules also allow NetBeans to be extended. New features, such as support for other programming languages, can be added by installing additional modules. For instance, Sun Studio, Sun Java Studio Enterprise, and Sun Java Studio Creator from Sun Microsystems are all based on the NetBeans ID. [6]

2.1.2 NetBeans IDE Bundle for Web and Java EE

The NetBeans IDE Bundle for Web & Java EE provides complete tools for all the latest Java EE 6 standards, including the new Java EE 6 Web Profile, Enterprise Java Beans (EJBs), servlets, Java Persistence API, web services, and annotations. NetBeans also supports the JSF 2.0 (Facelets), Java Server Pages (JSP), Hibernate, Spring, Struts frameworks, and the Java EE 5 and J2EE 1.4 platforms. It includes Glassfish and Apache Tomcat. [7]

Page 18: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

7

2.1.3 The Netbeans IDE Bundle for JAVA ME

“The NetBeans IDE Bundle for Java ME is a tool for developing applications that run

on mobile devices; generally mobile phones. The NetBeans IDE comes bundled with the

latest Java ME SDK 3.0 which supports CLDC development” [7].

2.2 MAP OBJECTS, JAVA EDITION

Map Objects Java Object (MOJO) is the product of Environmental Systems Research Institute (ESRI), which is an international supplier of Geographic Information System (GIS) software. ESRI captures most of the industry in the field of GIS, which stands for Geographic Information System.

Map Objects JAVA Edition is a developer toolkit consisting of JAVA developer components that can be used to build custom, cross-platform GIS applications, servlets or applets. It can be used to build applications that incorporate GIS and mapping capabilities. MOJO helps you build applications that perform geography-based display, and query and data retrieval activities at the client and server side. It also includes prebuilt JAVA Beans that are easily used in the integrated development environment. For example, Visual Basic, MOJO uses an integrated component architecture.

It has standalone features like panning, zooming through multiple map layers, measuring distances, creating layouts, thematic mapping, specifying projections and displaying real time geographical data. It also enables user interface and helps to quickly build applications which include functional toolbars, query dialogs, overview and insert maps, and intelligent legends that make the custom applications easy to use and to develop.

Key features of Map Objects JAVA Edition are:

Ability to combine multiple data sources: Applications created with Map Objects JAVA Edition allow users to combine local data with Internet and Intranet data to create customized maps and easily integrate these with existing application architectures. Some of the supported data formats are image formats (PNG, GIF, JPG), CAD, shapefiles, ArcSDE layers, Arc IMS image and feature services, military formats, etc.

Wide range of GIS capabilities: With applications built using MOJO, users can perform activities such as labeling map features, panning and zooming through multiple map layers, measuring distances, creating layouts, thematic mapping, specifying projections, displaying real time geographic data and much more.

Ability to deploy applications over the web: It allows easy distribution of applications over the Internet through browser-hosted applets or simplifying Web delivery of the application with the use of JAVA Web Start technology.

Page 19: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

8

Helpful tools for building a user interface: The visual components included with MOJO help to quickly build applications that include functional toolbars, dynamic symbol control, query dialogs, overview and insert maps, and intelligent legends that make the custom applications easy to use and to develop. [8]

2.3 HTML 5

HTML5 is a core technology markup language of the Internet used for structuring and presenting content for the World Wide Web. As of October 2014 this is the final and complete fifth revision of the HTML standard of the World Wide Web Consortium (W3C). … Its core aims have been to improve the language with support for the latest multimedia while keeping it easily readable by humans and consistently understood by computers and devices (web browsers, parsers, etc.). HTML5 is intended to subsume not only HTML 4, but also XHTML 1 and DOM Level 2 HTML.

Following its immediate predecessors HTML 4.01 and XHTML 1.1, HTML5 is a response to the fact that the HTML and XHTML in common use on the World Wide Web are a mixture of features introduced by various specifications, along with those introduced by software products such as web browsers...It is also an attempt to define a single markup language that can be written in either HTML or XHTML. It includes detailed processing models to encourage more interoperable implementations; it extends, improves and rationalizes the markup available for documents and introduces markup and application programming interfaces (APIs) for complex web applications. For the same reasons, HTML5 is also a potential candidate for cross-platform mobile applications. Many features of HTML5 have been built with the consideration of being able to run on low-powered devices such as smartphones and tablets. In December 2011, research firm Strategy Analytics forecast sales of HTML5 compatible phones would top 1 billion in 2013.

In particular, HTML5 adds many new syntactic features. These include the new <video>, <audio>, and <canvas> elements…These features are designed to make it easy to include and handle multimedia and graphical content on the web without having to resort to proprietary plugins and APIs. Other new elements, such as <section>, <article>,<header>, are designed to enrich the semantic content of documents. New attributes have been introduced for the same purpose, while some elements and attributes have been removed…HTML5 also defines in some detail the required processing for invalid documents so that syntax errors will be treated uniformly by all conforming browsers and other user agents. [9]

2.4 CSS

Cascading Style Sheets (CSS) is a style sheet language used for describing the look and formatting of a document written in a markup language. While most often used to change the style of web pages and user interfaces written in HTML and XHTML, the language can be applied to any kind of XML document,

Page 20: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

9

including plain XML, SVG and XUL. Along with HTML and JavaScript, CSS is a cornerstone technology used by most websites to create visually engaging webpages, user interfaces for web applications, and user interfaces for many mobile applications.

CSS is designed primarily to enable the separation of document content from document presentation, including elements such as the layout, colors, and fonts. This separation can improve content accessibility; provide more flexibility and control in the specification of presentation characteristics; enable multiple HTML pages to share formatting by specifying the relevant CSS in a separate .css file; and reduce complexity and repetition in the structural content, such as semantically insignificant tables that were widely used to format pages before consistent CSS rendering was available in all major browsers. CSS makes it possible to separate presentation instructions from the HTML content in a separate file or style section of the HTML file. [10]

Page 21: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

10

CHAPTER 3

DESIGN AND PROTOTYPE

The design phase started when the requirements were understood completely for an

NFL/ CFL GIS tool. The GIS tool design includes a Class diagram as well as a high level

architecture diagram.

3.1 HIGH LEVEL ARCHITECTURE DIAGRAM

The following diagram (Figure 3.1) is the Higher Level Architecture diagram for the

GIS tool.

Figure 3.1. High level architecture diagram.

The higher level architecture diagram depicts how the project looks at the higher

level. As we can see above it has three different levels:

User Interface

Map Objects Java Edition

Page 22: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

11

Resources such as Shape files

The UI was developed through a front end written in Java.

This user interface used MOJO for accessing different resource files such as Shape

files, Text delimitated files, and Database files.

3.2 PROTOTYPE

“In Software Engineering, a prototype is a rudimentary working model of a product

or information system used for demonstration purposes or as part of the development

process” [11].

Figure 3.2. Prototyping model.

The prototype used for this project follows [11].

Figure 3.3 is a screen shot of the tool when it is started. The screen is divided into five

buttons.

Button 1—NFL map: This has information about all NFL teams on different layers displayed on a world map.

Button 2—Website: This will show all the NFL and CFL teams as HTML pages. This will have links to more information about the team in the Spanish and French languages.

Button 3—ReadMe: This specifies all the key information regarding the project, such as installation and working of the project.

Button 4—Quiz: This button displays a quiz for testing a user’s knowledge about the game and all NFL and CFL teams.

Figure 3.4 is a screenshot of the map tool which is displayed after clicking Button 1.

This map is useful to learn about all the teams and the game by clicking on the

different layers of the map.

Page 23: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

12

Figure 3.3. Application- start screen.

Language Translation: Team detailed information can be accessed by clicking on

the Hotlink button on the toolbar as shown in the below figure. The language translation is

trilingual (English, French and Spanish) which are the most popular languages in North

America.

Two kinds of translations implemented in the tool are:

Text language translation [12]

Audio language translation [13, 14]

Page 24: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

13

Figure 3.4. Map button showing all the teams on US map with labels and symbols.

Figure 3.5. Identify button showing team information.

Once the user selects the identify tool button and clicks on the shape file of a team,

the following two actions take place:

1. The Audio language translation tool pronounces the team name in Spanish for NFL and in French for Canadian Football teams.

Page 25: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

14

2. A window also pops up as shown above describing different attributes of the team. When the user clicks on the tab “Click Me for More Information about this Event,” the user is redirected to a webpage containing detailed information about the team. The whole page can be converted to Spanish or French by clicking on the link provided at the top left hand corner as shown in figure 3.7

A user can also select any other given language from the menu by right clicking

anywhere outside the map.

Figure 3.6. Identify button showing how to select audio translation. Source: GOOGLE, Java-Google-translate-text-to-speech. Google, https://code.google.com/p/ java-google-translate-text-to-speech/downloads/detail?name=gtranslateapi-1.0.jar&can=2&q=, accessed April 2015, October 2011.

Button 2- NFL Website: This button gives information about NFL and CFL teams in

a website, which is the “Home page” of this project. As per Figure 3.8 [15], the links on the

top give more information about the teams like Gallery, Popular Videos, etc. It also has a link

called “Spanish,” which will convert the whole page to Spanish and links a user to external

resources for information. French is handled similarly.

Button 3—ReadMe This button opens up the ReadMe file where the details of the

tool, the user guide, and installation instructions can be found. Figure 3.9 is the screenshot of

the help page for the application that gives a detailed explanation of all the features used in

the application.

Page 26: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

15

Figure 3.7. HTML page showing team information in French or English. Source: GOOGLE, Translate. Google, https://translate.google.com/, accessed April 2015, n.d.

Figure 3.8. NFL website – Homepage. Source: NATIONAL FOOTBALL LEAGUE, Home. Nfl.com, http://www.nfl.com/, accessed December 2014, n.d.

Page 27: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

16

Figure 3.9. ReadMe.

Button 4-Quiz: This is the button that as the name indicates, quizzes users. It has

questions regarding NFL and CFL teams [16].

About Box: This button is a link that is located at the top of the application page. It

gives information about the application, which is seen in Figures 3.11 and 3.12

Page 28: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

17

Figure 3.10. Quiz. Source: QUIZBEAN, Login. Quizbean.com, https://www.quizbean.com/user/login/default, accessed January 2015, n.d.

Page 29: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

18

Figure 3.11. How to open About Button.

Figure 3.12. About Button.

Page 30: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

19

CHAPTER 4

REQUIREMENTS

This project was developed in conjunction with faculty from Exercise and Nutritional

science. It was completed under the guidance of Dr. Carl Eckberg from the Computer

Science department of San Diego State University. The requirement gathering and feedback

process was done under Dr. Nicole Smith. It was supervised by Dr. Carl Eckberg from San

Diego State University Computer Science department.

The requirements are divided into the following sub sections:

Functional Requirements

Platform Requirements

Students Requirements

4.1 FUNCTIONAL REQUIREMENTS

These are the requirements which are related to GUI representation for displaying

NFL team’s data on a US map to make it more interactive.

Displaying NFL teams on a US map

Displaying CFL teams on a map too as the CFL and NFL are closely related.

Hot Link to each team on a US map This is one of the most important requirements in the project. This feature displays a webpage by clicking on each team’s location on a US map.

Web Pages Includes NFL-related data. The web page includes terminology and explanations, pictures, video hyperlinks, images, Wikipedia hyperlinks, and a language translation link.

Wikipedia/Official NFL website information This information is important to users so that they can find very up to date information

Practice Quiz This is helpful so users can test their knowledge after using this tool. This quiz has multiple choice questions and displays the scores at the end of each quiz.

Page 31: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

20

4.2 SOFTWARE REQUIREMENTS

Dr. Carl Eckberg from the San Diego State University Computer Science Department

told me about the software requirements.

Following are the software platform requirements:

JAVA

MapObjects Java Edition

4.3 USER REQUIREMENTS

The student centric requirements were set by keeping all potential users in mind, who

may be international students whose first language is not English or not familiar with using

software tools. The tools also work for most residents of North America whether their

preferred language is English or Spanish.

The NFL GIS tool should be easy to use and handle.

Many students don’t have experience using software tools. So they should be given one exe file or jar file that with just one click should be able to run the application.

The language of the application is simple and I have also added language translation, keeping international users in mind.

The text should be bold and clean wherever required, so that it can grab a user’s attention quickly.

Use of videos and pictures should be embedded so that the tool is easy to learn.

Page 32: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

21

CHAPTER 5

INSTALLATIONS

NetBeans IDE (Integrated Development Environment) is used for the editing,

compiling and running of the java code. Basically, NetBeans 6.7.1 is an IDE for java

programs. It works well with Map Object Java Edition. For integrating NetBeans IDE with

Map Objects the most important thing is to add libraries of Map Objects to NetBeans IDE.

The following installations were done to build and run the project:

Install Java (SE) Development kit 1.6 from java site [17].

Install NetBeans IDE 1.0.6 from the netbeans site [18].

The Installation of Map Objects Java Edition is no longer available online so this

installation required contacting Dr. Carl Eckberg to get the installation from him.

Then finally we needed to integrate Map Objects Java Edition to NetBeans; this can

be done by adding Map Objects libraries to NetBeans.

The steps to go to Library Manager from where we find an option to add Map Objects

libraries to NetBeans IDE:

>> Open NetBeans IDE

>> Go to Tools

>> Select Libraries

>> It will open Library Manager

The Figure (Figure 5.1) below shows how the Library Manager window looks.

Using the Library Manager we can add MOJO23 libraries to NetBeans IDE. It was

done in the following steps:

>>Open NetBeans IDE

>> Go to Tools

>> Select Libraries

>> It will open Library Manager

Page 33: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

22

>> Select Add JAR/ Folder option in Library Manager Window

>> Then go to MOJO libraries on my system they are located at C:\esri\MOJ23\lib

>> Then Select all Libraries and hit Add JAR/ Folder

>> It will include all the MOJO libraries to NetBeans IDE

Figure 5.1 shows how the mojo library window looks.

Figure 5.1. Library manager.

Figure 5.2 shows how to select MOJO class libraries through a new library template.

Figure 5.3 shows how to add MOJO class libraries through a new library template.

Figure 5.4 shows how to add .JAR files of Mojo library by browsing JAR file/folder.

Figure 5.5 shows Netbeans palette, which allows the user to add audio JAR file to the

project.

Figure 5.6 shows Netbeans palette, which allows the user to select Swing library for

the project.

Figure 5.7 is the Palette manager, which allows the addition of various components of

JAVA Swing library.

Page 34: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

23

Figure 5.2. NetBeans - New library.

Figure 5.3. Adding MOJO libraries to NetBeans.

Page 35: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

24

Figure 5.4. NetBeans - browse JAR folder.

Figure 5.5. Netbeans palette – adding audio JAR file.

Page 36: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

25

Figure 5.6. NetBeans - palette menu.

Figure 5.8 is the Palette manager, which allows the addition of various components in

MOJO library to Netbeans windows.

Figure 5.9 is the Palette manager, which asks the user to which category to add the

above mentioned components.

With this installation we are good to start our programming and ready to use

NetBeans IDE for writing, editing, compiling and running java application. The following

diagram (Figure 5.10) shows how the NetBeans development environment looks.

Page 37: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

26

Figure 5.7 NetBeans - install components to palette.

Page 38: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

27

Figure 5.8. NetBeans – select components on palette.

Page 39: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

28

Figure 5.9. NetBeans - palette category selection.

Page 40: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

29

Figure 5.10. NetBeans development environment.

Page 41: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

30

CHAPTER 6

PROJECT TOOLBAR AND MENU OPTIONS

Project toolbar contain tools for frequently used functionality in the project. Map

Objects inbuilt functionalities are pan, print, XY, hotlink zoom in, zoom out, etc. The Figure

below displays the project toolbar.

Figure 6.1. Map Objects toolbars.

Pictured above are all the tool icons that are embedded on the tool bar. To use these

tools, first click on the tool icons and then apply them wherever needed. The following table

(Table 6.1) shows tools on the tool bar used for their implementation [8, 19].

Following are the Toolbar names:

Print

Add/ Delete layer

Zoom Pan toolbar

Identify

Hotlink

Find

6.1 PRINT TOOL

Print tool is one of the customized buttons on the toolbar and is mainly used for

providing the functionality of printing a map. This will be convenient for users to take a print

Page 42: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

31

of a map and carry it with them as a reference. This is not a default tool provided by Map

Objects; this tool was implemented as per customer request [8, 19].

Figure 6.2 shows how the print tool works in the project

Figure 6.2. Print tool.

6.2 ADD DELETE LAYER TOOL

This tool allows the user to add and delete a layer. There is an option to add and

delete a layer on the toolbar as well as in menu options. This is an important feature of the

project. This tool is provided by Map Objects.

This can be done by selecting “add layer option” from the Menu bar and then adding

the .shp file from the particular location. The figures below show how to add layers to the

map [8, 19].

Page 43: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

32

Figure 6.3. Using add layer too1.

Selecting shape file from specified location.

Figure 6.4. Using add layer tool 2.

Page 44: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

33

6.3 ZOOM PAN TOOL BAR

Zoom Pan Tool bar is the MapObject provided feature for zooming and panning a

layer.

This tool provides many useful features such as:

Pan and PanOneDirection - Using the Pan tool one can drag the layer in any direction. But

the PanOneDirection tool allows movement of the map in south, north, east or west direction.

The Pan tool does not alter the size of map. It provides a tool for dragging the map to a new

location without altering the size [8, 19].

Figure 6.5. Using Pan Tool.

Zoom In and Zoom Out – The Zoom In tool zooms the map. The Zoom out tool is

used to zoom out the map to its original size [8, 19].

Page 45: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

34

Figure 6.6. Using Zoom toolbar (ZoomIN).

Figure 6.7. Using Zoom toolbar (ZoomOUT).

Zoom to Full Extent – By clicking on this tool it returns the map to the original shape

and full view. It resizes and shows a complete view of the map [8, 19].

Page 46: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

35

Figure 6.8. Using Zoom toolbar (Zoom to Full extent).

6.4 IDENTIFY

The Identify tool is used to display information about a particular point. This is an

inbuilt tool [8, 19].

Figure 6.9. Using Identify tool.

Page 47: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

36

6.5 HOTLINK TOOL

The hotlink tool was implemented because the identify tool in Map Objects toolbars

does not suffice the requirements of the GIS tool. The requirements that the standard identify

tool in Zoom Pan Toolbar cannot provide are:

1. An identify tool which can display the results in a Custom window so that the URL can be launched for the data point identified, and

2. An attractive result window with bold and clear fonts [8, 19].

Figure 6.10. HotLink tool.

x/gmlf/lgmdglzdfg ’dlfgjx’dfgjd’lgjzd ’kfjgj

Page 48: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

37

Figure 6.11. HotLink tool showing the webpage in English. Source: GOOGLE, Translate. Google, https://translate.google.com/, accessed April 2015, n.d.

Figure 6.12. Hotlink tool showing language translation from English to French. Source: GOOGLE, Translate. Google, https://translate.google.com/, accessed April 2015, n.d.

Page 49: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

38

6.6 FIND TOOL

Table 6.1 The Selection toolbar provides capability to create or customize a query on

the selected layer. The user can search for the specific information with the help of

functionalities provided by this toolbar.

Table 6.1. Selection Toolbar

Tool Function

Find It opens a dialog box for locating features whose attributes contain an end-user query [8, 19]

Search It opens a dialog for locating features based on a predefined “stored query” [8, 19]

Select It’s a tool for selecting features in the map [8, 19]

Attributes It is a tool to display attributes of currently selected features [8, 19]

Page 50: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

39

CHAPTER 7

PROJECT LAYERS

Conceptually a layer is a slice of the geographic data in a certain area. It is equivalent

to a legend on a paper map. As examples, rail-routes, national monuments, state boundaries,

mountains and rivers might be considered different layers. This project contains has various

layers that help to show different NFL teams on map. This chapter explains in detail the

layers and the files associated with the corresponding layer.

7.1 FEATURE LAYERS

A feature layer references a set of feature data. The feature data contains geographic

entities in the form of lines, points and polygons. Feature layer files reference geographic

data stored locally on the disk. It references many data sources supported in CAD datasets,

Arc Catalog, CAD drawing datasets, coverage datasets, shape file datasets, and raster

datasets.

This GIS tool has several feature layers:

NFC (National Football Conference) teams layer

AFC (American Football Conference) teams layer

Super Bowl winning (National football Conference) teams layer

Canadian Football league layer

Each of the feature layers generally shows the

Names of teams

City/State of each team

Number of Super Bowl wins per team

Year a team won a Super Bowl/Grey Cup

Links to the webpages that contain more information about each team

The following will help in getting a better idea of the layers:

Page 51: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

40

The three main files for creating a layer are Shape files, Index files and Dbase files:

Shape files store the feature geometry of the layer. This file has extension .shp. Shape files spatially explain geometries such as lines, points and polygons. They could represent lakes and rivers and they might have names or temperature.

Index files store the index of feature geometry of the layer. This file has extension .shx. Index files point to corresponding records in the main file. Index and shape files have the same header.

Dbase files store attributes of the features in the database. This file has the extension .dbf. The record orders should be the same in the dbase and main files [20, 21, 22].

Figure 7.1 is an AFC layer, which shows all AFC teams on the map. This is shown by

adding the layer from the Add/Delete button from the menu of the map.

Figure 7.1. AFC team layer.

Figure 7.2 is an NFC layer, which shows all NFC teams on the map. This is shown by

adding the layer from the Add/Delete button from the menu of the map.

Figure 7.3 is a Super Bowl winning teams layer, which shows all Super Bowl

winning teams on the map. This is shown by adding the layer from the Add/Delete button

from the menu of the map.

Figure 7.4 is a Canadian Football team layer, which shows all CFL teams on the map.

This is shown by adding the layer from the Add/Delete button from the menu of the map

Page 52: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

41

Figure 7.2. NFC team layer.

Figure 7.3. Super Bowl winning (National football Conference) teams layer.

Page 53: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

42

Figure 7.4. Canadian Football team layer.

7.2 TAB DELIMITED TEXT FILES

The Tab Delimited text files are the files used for creating shape files using the QGIS

tool.

These files have columns for longitude, latitude, team name, number of Super Bowl

wins or Grey Cup wins, and links to teams’ respective web page which includes pictures,

videos, and information about the team that becomes an attribute table for shape files [23].

Page 54: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

43

Figure 7.5. Txt file for AFC teams.

Figure 7.6. Txt file for NFC teams.

Page 55: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

44

CHAPTER 8

SCREENSHOTS

The figures shown in this chapter belong to different sections of the project.

1. Figure 8.1 is displayed once the user clicks on the Website button of the application.

Figure 8.1. Main page of the application in English. Source: NATIONAL FOOTBALL

LEAGUE, Home. Nfl.com, http://www.nfl.com/, accessed December 2014, n.d.

Figures 8.2-8.6 can be accessed one-by-one from the links shown on main page.

Page 56: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

45

Figure 8.2. Main page of the application in Spanish. Source: GOOGLE, Translate. Google, https://translate.google.com/, accessed April 2015, n.d.; NATIONAL

FOOTBALL LEAGUE, Home. Nfl.com, http://www.nfl.com/, accessed December 2014, n.d.

Figure 8.3. Web page displaying statistics of all the teams after clicking Statistics Button on the main application. Source: NATIONAL FOOTBALL LEAGUE, Home. Nfl.com, http://www.nfl.com/, accessed December 2014, n.d.

Page 57: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

46

Figure 8.4. Web page displaying news of all the teams after clicking News Button on the main application. Source: NATIONAL FOOTBALL LEAGUE, Home. Nfl.com, http://www.nfl.com/, accessed December 2014, n.d.

Figure 8.5. Web page displaying statistics of all the teams after clicking Statistics Button on the main application in Spanish. Source: NATIONAL FOOTBALL LEAGUE, Home. Nfl.com, http://www.nfl.com/, accessed December 2014, n.d.

Page 58: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

47

Figure 8.6. Web page displaying videos after clicking on Videos button on the main page. Source: NATIONAL FOOTBALL LEAGUE, Home. Nfl.com, http://www.nfl.com/, accessed December 2014, n.d.

2. These snapshots are taken by accessing the Map button of the application.

Figure 8.7. Identify tool on map.

Page 59: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

48

Figure 8.8. Hotlink tool on map.

3. This snapshot is taken from the Quiz button on the application.

Figure 8.9. Quiz displayed after clicking Quiz button on the application. Source: QUIZBEAN, Login. Quizbean.com, https://www.quizbean.com/user/login/default, accessed January 2015, n.d.

4. The last snapshot is taken by clicking the ReadMe button on the application.

Page 60: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

49

Figure 8.10. ReadMe file displayed after clicking the ReadMe Button on the application.

Page 61: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

50

CHAPTER 9

CONCLUSIONS AND OBSTACLES

9.1 CONCLUSION

The main purpose of this application was to help the user (e.g., international students) learn about American football. To serve this purpose, the application was developed in an interactive way by adding pictures, videos, quizzes, etc.

Another feature of this application is its ease of deployment (i.e., users can use it anywhere on any operating system).

More features (e.g., new languages, new layers, and new teams) can be added to the tool.

9.2 OBSTACLES

Creating Shape files using the right tool was one of the biggest challenges and was resolved guidance from Dr. Carl Eckberg

NFL/CFL related data is vast on the internet. Decisions about what is relevant material should be addressed and I was assisted by Dr. Nicole Smith.

Page 62: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

51

CHAPTER 10

FUTURE ENHANCEMENTS

The requirements and information envisioned at the start of the project have been

realized, yet there are further opportunities to refine the learning experience.

Some considerations for future enhancements include:

Implement many more languages.

Adding other countries national popular games (e.g. rugby).

Quizzes can be timed, so users have a time limit to complete them.

A web based version of this project would allow the addition of new quizzes or modification of old ones.

Audio can be added to mechanically pronounce text in French or Spanish.

Page 63: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

52

REFERENCES

[1] NETSUN, Learn Java and build solid career. NetSun, https://netsunnetworks.com/java-training, accessed March 2015, n.d.

[2] B. WILL, A brief explanation of Java versions. BrianWill.net, http://brianwill.net/blog/ 2007/03/03/a-brief-explanation-of-java-versions/, accessed March 2015, March 2007.

[3] TUTORIALS POINT, Java – overview. Tutorialspoint.com, http://www.tutorialspoint.com/ java/java_overview.htm, accessed January 2015, n.d.

[4] TARANNUM, Building Java GUIs using swing API. Tarannumjaswal.blogspot.com, http://tarannumjaswal.blogspot.com/2014/12/building-java-guis-using-swing-api.html, accessed January 2015, June 2014.

[5] ZETCODE, Basic swing components. ZetCode, http://zetcode.com/tutorials/ javaswingtutorial/basicswingcomponents/, accessed February 2015, February 2015.

[6] R. RAJA, Introduction to NetBeans IDE. Wordpress.com, https://rahulrraja.wordpress.com/2010/09/24/introduction-to-netbeans-ide/, accessed November 2014, September 2010.

[7] WIKIPEDIA, NetBeans. Wikipedia, http://en.wikipedia.org/wiki/NetBeans, accessed January 2015, April 2015.

[8] A. LADDHA, Location based computerized multimedia presentation of Theodore Roosevelt’s life history, Master’s thesis, San Diego State University, San Diego, CA, 2012.

[9] WIKIPEDIA, HTML5. Wikipedia, http://en.wikipedia.org/wiki/HTML5, accessed February 2015, April 2015.

[10] WIKIPEDIA, Cascading Style Sheets. Wikipedia, http://en.wikipedia.org/wiki/ Cascading_Style_Sheets, accessed February 2015, May 2015.

[11] TECHTARGET, Prototype definition. TechTarget.com, http://searchmanufacturingerp. techtarget.com/definition/prototype, accessed April 2015, 2014.

[12] GOOGLE, Translate. Google, https://translate.google.com/, accessed April 2015, n.d.

[13] GOOGLE, Java-Google-translate-text-to-speech. Google, https://code.google.com/p/ java-google-translate-text-to-speech/downloads/detail?name=gtranslateapi-1.0.jar&can=2&q=, accessed April 2015, October 2011.

[14] P. ALVAREZ, Map Object tool, Master’s thesis, San Diego State University, San Diego, CA, 2012.

Page 64: LOCATION BASED COMPUTERIZED MULTIMEDIA … · 2.1.2 NetBeans IDE Bundle for Web and Java EE .....6 2.1.3 The Netbeans IDE Bundle for JAVA ... 7.2 Tab Delimited Text Files .....42

53

[15] NATIONAL FOOTBALL LEAGUE, Home. Nfl.com, http://www.nfl.com/, accessed December 2014, n.d.

[16] QUIZBEAN, Login. Quizbean.com, https://www.quizbean.com/user/login/default, accessed January 2015, n.d.

[17] ORACLE, Java SE development kit 7 downloads. Oracle, http://www.oracle.com/ technetwork/java/javase/downloads/jdk7-downloads-1880260.html, accessed December 2014, n.d.

[18] NETBEANS, NetBeans IDE 6.7.1 download. NetBeans, https://netbeans.org/downloads/ 6.7.1/, accessed December 2014, n.d.

[19] ESRI, Home. Esri.com, http://www.esri.com/, accessed December 2014, n.d.

[20] C. ECKBERG, Notes on MapObjects Java Edition, San Diego State University, San Diego, California, 2014.

[21] LOVE GIS, [QGIS tutorial] – create and edit shape file. Youtube.com, https://www.youtube.com/watch?v=GGFAMv4sUh0, accessed November 2014, May 2014.

[22] QGIS, Download QGIS for your platform. Qgis.org, https://www.qgis.org/en/site/ forusers/download.html, accessed November 2014, n.d.

[23] GOOGLE, Convert your spreadsheet into a tab-delimited text file. Google, https://support.google.com/merchants/answer/160569?hl=en, accessed November 2014, n.d.