This is an introductory lab for students learning about geomatics and spatial networks. When embarking on such a learning experience together I find it super important to make sure everyone’s on the same page with regard to the tools they’re going to be needing. And, if required, has the chance to get some help and get up to speed before it’s too late.
You’re going to:
Show that you’re familiar with using spreadsheets (yes spreadsheets!) for basic spatial applications
Show that you’re familiar with using C++ (in a browser-based environment and in Microsoft Visual Studio) for basic spatial applications
Use a C++ library called Eigen to add linear algebra, vector, and matrix functionality to your C++ code
Use those skills to do a first little adjustment
Use our reporting template for the first time
Read the following introduction
This lab has four parts:
1. In the first, you’re asked to create your own Google Spreadsheet to solve a spatial analysis problem. I’m going to provide you with the problem and a sample solution, so your focus here is just meant to be on making sure you know how to use a spreadsheet environment to do this kind work. And on reviewing that kind of solution if you don’t remember it. In turn, this is because these will be so important for you for prototyping your lab solutions in this course.
2. In second part, you’re asked to solve the same problem by creating and compiling a C++ application in a browser-based environment called repl.it. I will provide some guidance on doing that. As you’ll see, your application needs to solve the problem, test drive a super useful matrix template library called Eigen, and output some stuff to the screen.
3. In the third part, you’re asked to take your solution from the second part and create a console application in C++ using Microsoft Visual Studio. Same thing, but a different (and more powerful) environment.
4. In the last part, you’re asked your skills to work to do a (very crude) estimation of the width of the hallway outside of my first year classroom. I’m not going to provide the solution to this one. Instead, I want you to do it yourself from end-to-end in either of the spreadsheet or browser-based C++ environments.
Directions for these four parts are provided in the lessons at the bottom of this page.
Why this lab?
This lab is pretty basic, I admit. But if you can’t do it then you’ll be in trouble later. It’s important because it helps us make sure everyone’s got some key computational and analysis tools in their tool belts before proceeding with the more detailed labs ahead. As you program your own network analyses and adjustments in this course, I want you to have the programming basics well in hand. And it’s hard to express how much the development of good practices now will help you in the future. It’s a fundamental literacy thing: doing this course without this stuff in hand is a bit like to listening to a lecture without knowing the language in which it’s being delivered.
And why the different environments? Mainly because they can all play important roles in the work we’re going to do here and the work you’ll do as an engineer. C++ is a powerful programming language and spreadsheets are a great numerical analysis tool. Generally, I like to use spreadsheets for quick calculations, prototyping algorithms, and visualizing what my data are saying. And I like C++ because it’s arguably more powerful and portable in our field. On balance, you can think of spreadsheets and the browser-based coding as sandbox tools and Microsoft Visual Studio for faster more portable applications.
(And if you’re already a pro at all of this, then go ahead and whip this off. That’s awesome.)
The due dates for this work are outlined on our course page which you can access with the tabs at the bottom right side of any page on this site.
A detailed marking rubric will be handed out via D2L and discussed in class.
Individual vs. team
This first lab is to be completed and submitted by every student individually.
Lab report template
A lab report template will be handed out via D2L and discussed in class. You’re asked to use this report format when submitting your lab.
Check out these related modules
The following modules might be helpful if you’re not already familiar with all of this:
- Introduction to using spreadsheets as a sandbox tool for spatial applications
- Introduction to browser-based coding as a sandbox tool for spatial applications
We assume you already know how to use Microsoft Visual Studio from your earlier courses. However, just in case, we also link you to some tutorial videos in the appropriate lesson below.
You need to be signed in and enrolled (see above) in order to do this step.