An Interactive Digital Guide Map of Dhaka City

For example, the Hotlink can be used to see the beautiful image of ‘National Museum’ as well as learn its history from the list of ‘Museums and Historical Places’ shown in Fig. 4.


Fig. 2: Customization of ArcView Interface



Fig. 3.1: Message box containing list of themes



Fig. 3.2: Message box containing list of features in the selected theme



Fig. 3.3: The associated feature is highlighted and displayed in the view



Fig. 4: Hotlink action displays the beautiful image and information of ‘National Museum’


Conclusion
The paper describes the preparation of a GIS-based interactive map of Dhaka City integrated with few extended capabilities which can be used as a guide map. ArcInfo and ArcView GIS software are used to prepare the interactive map, which includes preparation of digital map and customization of user interface. For this purpose software and hardware were used to capture, store and organize, manipulate, analyze and display spatially referenced information. The system, including its graphical user interface, was implemented with PC ARC/INFO's Simple Macro Language and ArcView's Avenue Programming Language. In this study, an attempt was made to prepare an interactive map of Dhaka City showing a variety of features. But due to constraints, only some rudimentary interactive features were included, but the exercise provided insights and skills that would be required if the study is carried out further to include more powerful planning routines. Also, this study has tremendous scope in different activities of planning and other field and can serve as a basis for future relevant research and studies.

References
  • Anonymous (no date) IFLA Section of Geography and Map Libraries, http://magic.lib.uconn.edu/ifla/.
  • ESRI (1996) Avenue: Customization and Application Development for ArcView, Redlands, CA., USA, p. 1.
  • Pfister, B., Burgess, K. & Berry J. (2001) What’s a Map? - Media Mapping Technology is Redefining the Term, Geoworld, Vol. 14, No. 5, p. 43.
  • Pictographics (no date) Pictographics' GIS and Internet Mapping Solutions, http://www.pictographics.com/gis.lasso.
  • Star, J. and Estes, J. (1990) Geographic Information System – An Introduction, University of California, Santa Barbara, Prentice Hall, Inc., p. 175.

Appendix

List of Avenue Scripts

1. View.Highlight

theView = av.GetActiveDoc
theThemeList = theView.GetThemes
YourChoice = MsgBox.ChoiceAsString(theThemeList, "Choose a Feature",   "Different Features")
if (not (YourChoice = nil)) then
      a = theThemeList.Find(YourChoice)
theThemeList.Shuffle(theThemeList.Get(a), (theThemeList.Count))
for each t in theView.GetActiveThemes
     t.SetActive(false)
end
theThemeList.Get(theThemeList.Count - 1).SetActive(true)
theView.InvalidateTOC(nil)
theView.GetDisplay.Invalidate(true)
for each t in theView.GetActiveThemes
    theFTab = t.GetFTab
    theField = theFTab.FindField("Name")
    NameList = {} 'initialize list of names
    for each rec in theFTab
        val = theFTab.ReturnValue(theField, rec)
        if(val <> "") then
            NameList.Add(val)
            NameList.RemoveDuplicates
            NameList.Sort(True)
        end
    end
   aChoice = MsgBox.ChoiceAsString(NameList, "Choose a Name", "Names")
    if (not (aChoice = nil)) then
        av.UseWaitCursor
        theBitmap = theFTab.GetSelection
        expr = "([Name] = "++aChoice.Quote+")"
        theFTab.Query(expr, theBitmap, #VTAB_SELTYPE_NEW)
        theFTab.UpdateSelection
        av.GetProject.SetModified(true)
        r = Rect.MakeEmpty
        for each t in theView.GetActiveThemes
            if (t.CanSelect) then
                r = r.UnionWith(t.GetSelectedExtent)
            end
        end
        if (r.IsEmpty) then
            return nil
        elseif ( r.ReturnSize = (0@0) ) then
            theView.GetDisplay.PanTo(r.ReturnOrigin)
        else
            theView.GetDisplay.SetExtent(r.Scale(1.1))
        end
      end
   end
 end


2. View.Display

theGIFFileName = Self.Get(0)
theTextFileName = Self.Get(1)
MsgBox.Info("One moment please..."
 +NL+"Hit OK to continue.","Multi Hotlink")
if (File.Exists(theGIFFileName.AsFileName))
  then
    theImageWin = ImageWin.Make(theGIFFileName.AsFileName,theGIFFileName)
    else
    MsgBox.Info("There is no Image File","")
end
if (File.Exists(theTextFileName.AsFileName))
  then
    theTextWin = TextWin.Make(theTextFileName.AsFileName,theTextFileName)
else
  MsgBox.Info("There is no Text File","")
end
if (theImageWin <> nil) then
  theImageWin.Open
  theImageWin.Resize(240,180)
  theImageWin.MoveTo(1,100)
end
if (theTextWin <> nil) then    
  theTextWin.Open
  theTextWin.Resize(240,180)
  theTextWin.MoveTo(240,100)
end

Link Script

theView = av.GetActiveDoc
found = FALSE
listofFieldNames = {"GIFField","TextField"}
listofValues = {}
p = theView.GetDisplay.ReturnUserPoint
t = theView.GetActiveThemes.Get(0)
  if (t.Is(FTheme))
    then
      found = TRUE
      theFTab = t.GetFTab
      rec = t.FindByPoint(p).Get(0)
        for each f in listofFieldNames
          theVal = theFTab.ReturnValueString(theFTab.FindField(f),rec)
            if (theVal <> NIL)
              then
                listofValues.Add(theVal)
              else
                listofValues.Add("a")
            end
        end
  end
av.Run(t.GetHotScriptName,listofValues)
if (not found)
  then
    System.Beep
end


Page 3 of 3
Previous