May 5 - Rhino 3D | Intro to programming
May 13 - Rhino 3D | Data structures
May 19 - Rhino 3D | Intro to the Rhino API
May 25 - Rhino 3D | Hands-on theory
June 2 - Rhino 3D | Building your first plugin
Rhino/Grasshopper C# Programming: Beginner Course
Intro to programming in a general sense: data types, variables, constants, control flow, etc.
Intro to data structures: what are data structures? C# data structures, Grasshopper/Rhino3d data structures.
Intro to RhinoCommon: what’s an API? How to navigate the documentation. Using basic commands.
Hands on: algorithmic complexity/optimization, translating pseudo code to code, concurrency.
Student project: pick your poison.
Rhino/Grasshopper C# Programming: Intermediate Course
Building a C# plugin for Grasshopper.
Complexity in simplicity: chaos theory, fractals, IFS (Iterated Function Systems).
Simulation: basic physics recap, methods of integration, visualization.
GPGPU: fragment, vertex and compute shaders, OpenCL.
Student project: pick your poison.
In this course you will start from a beginner level of knowledge in programming to an intermediate level. You will learn the basics of programming from a practical point of view in which abstract concepts will be grounded into problems that are usually seen in the industry.
The course will dive into interacting with the Rhino API through C# in Grasshopper, allowing the problems to have a 3D/2D geometrical sense in which abstract concepts can be literally materialized. The choice of software is given thanks to the easy beginner level needed to get into computational design while also providing the building blocks for advanced workflows. No longer will existing technology be a factor for not being able to create amazing stuff. Felipe Gutiérrez, graphics engineer will lead the course maintaining a back and forth interaction with students providing and receiving feedback for hands-on projects created during the course.
The C# Grasshopper editor.
The Rhino geometry engine: RhinoCommon API.
C# basic concepts.
Geometrical operations using the Rhino API.
Creating complex objects from basic rules.
After taking this course you will be able to express your thoughts in a mathematical/programmatical manner that will increase your ability to solve complex problems not only by being able to translate some steps into computer code, but to think in a structured way that will benefit how you approach problem solving.
About the Instructor
Felipe Gutiérrez Duque is a software/graphics engineer. Like a true engineer, he likes pulling things apart to see how they work. His passion is bridging the gap between different disciplines through computers to bridge the gap between art, design and engineering.
Introduction to programming
- Data types
- What is a data structure?
- Why should I care
- C# data structures
Grasshopper data structures
Introduction to the Rhino API
- Learning to explore the documentation
- Overview of the ObjectedOrientedProgramming paradigm
Using the API as an engine for simple geometric operations
- Time complexity
- Pseudo code
Building the first plugin
- What is an interpreted programming language?
- What is a compiled programming language?
- Why should I care.
Porting our interpreted examples into our first shippable plugin!
Complexity in simplicity
- Chaos theory
Iterated Function Systems
Is reality a simulation?
- Quick physics recap
- Methods of integration
- Build your first physics simulation
Using meshes to be able to visualize 2D/2.5D simulations
- What is a GPU?
- OK that's parallel so what
- Fragment/Vertex shader programming