Skip to content

MM871/PaiMap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 

Repository files navigation

PaiMap

A high-performance interactive mapping application built in C++ using OpenStreetMap data. Achieved O(1) spatial queries across 100K+ Toronto intersections with all functions executing under 150ms.

Warning

Source code is kept private per course policy (UofT ECE297). This repository contains documentation and visuals only.

Screenshots

image

Map View with POI Filtering

image

Map View with all Collapsed Menus

image

Route Finding

image

Chatbot (Gemini API)

image

Performance Profiling (perf flame graph)

image

Performance Highlights

  • Query time: 500ms → 0.2ms (90%+ reduction via perf profiling)
  • O(1) intersection lookups using a 160×160 geo-grid index
  • Smooth 60fps zoom and pan across 10+ cities
  • Zero memory leaks verified across all map datasets
  • All required functions execute in under 150ms

Tech Stack

  • Language: C++, STL
  • Graphics: EZGL / GTK3 / Cairo
  • Data: OpenStreetMap APIs
  • Profiling: perf, Valgrind, Chrono library
  • Version Control: Git (3-person team)

Features

  • 160×160 geo-grid spatial index for O(1) intersection lookups
  • Partial-name search with click-to-highlight intersections
  • POI filtering by category (food, medical, transit, etc.)
  • Light/dark mode toggle
  • Multi-city support
  • Integrated "Paimon" travel guide assistant with local recommendations
  • Route visualization between any two intersections

Team

4-person team project — UofT ECE297 (Software Design and Communication)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages