We noticed that that the K-State campus map, like many other universities, does not include the interior of the buildings, which can be some of the most intimidating place on campus to navigate. We decided that we wanted to solve this problem in a nice universal way that does not involve manually transcribing the blueprints for the buildings by hand.

What it does

This system we created allows an admin to upload raw blueprints in an SVG format to our website, then our system creates a map out of the blueprint by removing the unnecessary parts of the blueprint and then identifying each of the rooms in it. The system then allows a user to search for a building and room and then shows the user where the room is located on the map. The system also allows users to look at maps of each of the floors of a building uploaded.

How we built it

We quickly decided to use Django, a Python web framework, to run the website because we all were interested in gaining more experience with Python. We also used a VM on the Google Cloud Platform for our server and for our domain.

Challenges we ran into

Absolutely none of us had ever used Django, and we all knew very little about web development. We also all had very little experience in writing JavaScript. None of us have ever had to deal with and manipulate vector graphics programmatically. Pretty much everything we did in the project was more or less completely new to all of us.

Accomplishments that we're proud of

Removing the extra stuff off of the blueprints was a huge accomplishment, as well as grabbing form data and writing it to the database. Uploading files to the server was also a giant success. Because so much of this project was new to us, we are pretty proud of it all, but we are especially proud of those three things.

What we learned

We all learned how to work with Django, more about working with Python, and quite a bit of working with svg files. Each of us learned more in the area we prioritized working on.

What's next for Campus Maps

If we decide to continue with this project, the next step would be adding better highlighting to each map display as well as adding the ability to zoom and pan the floor image.

Share this project: