Coding Archive
19 Jun 2015
Obtaining the points that make up a polyline in Grasshopper/Rhino

As part of my EngD I work alongside other engineers solving day-to-day problems. James, a fellow research engineer at BuroHappold, and I regularly venture down the path of Grasshopper development. James works in Grasshopper for the majority of his work and his website (viewable here) contains a lot of hints and tips on getting Grasshopper
18 Jun 2015
C# Global Keyboard Listeners – implementation of key hooks

In a previous post I briefly outlined the pros and cons of using global event listeners. Although the summary was to use them with caution, the entire use of listeners only came about due to a quick bit of personal programming I did yesterday, in which global listeners were a necessity (due to the program
18 Jun 2015
Global keyboard listeners – pros and cons

As discussed previously, event listeners are a key component to GUI development and good software development. Being able to record mouse clicks, or keyboard keys can enhance the usability of software for the end-users. In this post, I intend to show you how to implement a global keyboard listener for C#. What is a global
09 Jun 2015
C++/CLI Wrapper – marshalling GUIDs

GUIDs, unique identifiers which can be assigned to items in C# and C++ are another set of variables which, despite sharing many characteristics, need to be marshalled between the C# implementation and C++ implementations when using the CLI wrapper. Marshalling GUIDs between System.Guid and GUID GUIDs are useful variables to pass between C# and C++
06 Jun 2015
C++/CLI Wrapper – marshalling strings

As mentioned previously, C++/CLI code makes use of managed data types to pass data between C# and C++. Primitive data types are not affected by this (int, double, bool, etc.) but others, such as strings, are. Marshalling strings between system and std Strings in C# are referred to as System Strings as they are a
06 Jun 2015
C++/CLI Wrapper – how to set up a CLI file

What is CLI and what is it used for? The Common Language Infrastructure (CLI) is a part of .NET programming. It is commonly referred to as the C++/CLI wrapper (this may be important if ever you’re Googling for help) and is used for managing code between different .NET based code. As mentioned previously (here and
05 Jun 2015
C++ Error C2784 – Working with GUID keys in map data structures

Error C2784 is caused by problems with the compiler for using a key in map data structures. Map data structures are very useful in C++, their C# equivalent being the Dictionary structure. They allow you to store data to a key, which means when you come to need that data you can use the key,
04 Jun 2015
C++ Error C2011 – What it is and how to fix it

Errors are never fun to deal with, especially late at night with no one around to bounce ideas off of. During the course of my programming adventures I encounter many errors in compilation and hopefully, by posting them and the solution for them I might help myself later, or others, in solving the problem. Error
03 Jun 2015
Basic File IO – Java/C#/C++ examples

File Input/Output (FileIO) is a necessary piece of programming for software development where outputs need to be saved, or inputs used for calculations. All pieces of software create, to some degree, data which needs to be output to a permanent source on the file system. These files are not written magically and need to be
03 May 2015
Personal Project 2015

Every year as far back as I can recall I’ve had a project on the go, some to pass the time and others to serve a purpose, usually for an aspect of motorcycle racing. I think it goes back to 2007 when I started by first website, Doctor Who for Newbies (DW4N), a (funnily enough)