2026
“AR-327-Introduction to computational architecture” is an hands-on course taught at bachelor level at EPFL. The main goal is to transmit to students a computational thinking in design via the use of text programming. The course is designed for absolute beginners in programming. For the 2026 spring semester we focus on the use of Python in Rhino3D for computational timber design.
Legend: Theory + in-class exercise Assignement deadline
1 Rhino
[1] TBD: Rhino-intro, Rhino-interface, Rhino-viewport, Rhino-transform, Rhino-macros assignement due:TBD: 01-custom-macros
2 Python
[2] TBD: Intro-to-programming, IDE Intro-to-Python, Variable, Primitive-datatypes, String, Int/Float, Boolean assignement due:TBD: 02-Python-basics
[3] TBD: Collections, List, Tuple, Set, Loops, Dictionary, Functions Functions-good-practices assignement due:TBD: 03-Python
[4] TBD: OOP, Class, Attributes, Methods assignement due:TBD: 04-Python-oop
[5] TBD: Magic-methods, Static-methods, Encapsulation, Properties, Inheritance, Composition
3 RhinoPython
[6] TBD: Modules, Libraries, RhinoPython-intro, RhinoPython-RhinoCommon, RhinoPython-RhinoScriptSyntax, RhinoPython-How-to-use-the-docs
assignement due:TBD: 05-libraries-and-modules
[7] TBD: Intro, Points, Lines, Polylines, Vectors, Planes, Circles
assignement due:TBD: 06-2D-objects
[8] TBD: Transformation, Translation, Rotation, Uniform-scaling, Non-uniform-scaling, Plane-to-plane
assignement due:TBD: 07-transformations
[9] TBD: Intro-to-3D-objects, Boxes, Bounding-Box, Cylinder
[10] TBD: BREP, BREP-Properties, BREP-Methods
[11] TBD: BooleanOp-intro, BooleanOp-union, BooleanOp-difference, BooleanOp-intersection, BooleanOp-split
assignement due:TBD: 08-BREP joints
[12] TBD: TBD assignement due:TBD: 09-ComputationalTimber