Learn CAD Skills by Building 2D and 3D Models

Introduction to Computer-Aided Design

Learn CAD Skills by Building 2D and 3D Models

Course Description

Computer-Aided Design (CAD) skills are required in robotics, engineering, science, architecture, game design, and in many other areas. In this course trainees learn how to use Constructive Solid Geometry (CSG) to manipulate objects in the XY plane and in the 3D space, and how to combine them to build complex CAD models. The main objective of the course is to help trainees develop strong spatial reasoning skills (“thinking in the 3D space”).

Trainees learn Constructive Solid Geometry (CSG) actively by building 2D and 3D models. They begin with simple 2D shapes and gradually progress to complex 3D models. Their models are automatically checked and trainees receive useful real-time guidance, which helps them learn most efficiently. As a result, trainees acquire advanced CAD skills along with visual-spatial reasoning skills, and ultimately they become prepared for a smooth transition into advanced commercial CAD systems.

At the end of this course, trainees create a capstone 3D model of their own choice under the supervision of an NCLab instructor.

The companion CAD App in NCLab allows trainees to create their own 3D models, save them in their user accounts, export as STL files for 3D printing, and even share with others online.

This illustrative video shows how 3D shapes can be created easily by typing simple commands:

Complex 3D models can be built easily by combining and manipulating 3D shapes:

Required Background

This course requires middle school geometry and keyboarding experience.

Equipment Requirements

Internet access

Email and Browser

Course Structure and Length

This course is self-paced, and trainees will practice each skill and concept as they go. Automatic feedback is built into the course for both practices and quizzes.

The course is divided into four Units, and each Unit is composed of five Sections. Each Section consists of 7 instructional/practice levels, a quiz, and a master (proficiency) level. Trainees can return to any level or quiz for review.

This table illustrates the course structure as units, sections, and levels.

Trainees will need approximately 80 hands-on hours, based on their ability level, to complete this course. Since the course is self-paced, the amount of time required to complete the course will vary from trainee to trainee. Trainees are responsible for learning both the tutorial content and the skills acquired through practice.

Unit 1

Section 1 (2D Shapes I)

  • What is CSG, scripting CAD, and PLaSM
  • All commands and keywords of the PLaSM language are uppercase
  • Every object has a default initial position
  • Use predefined colors
  • Create squares, rectangles and circles
  • Assign colors to objects, and display objects

Section 2 (2D Shapes II)

  • Create rings, points, triangles and quadrilaterals
  • Display multiple objects together
  • Subtract objects

Section 3 (2D Shapes III)

  • Create regular polygons and boxes.
  • Create unions of objects
  • Extrude 2D shapes to 3D as prisms
  • Create advanced 3D objects by combining prisms of different heights

Section 4 (2D Translations)

  • Learn how to translate (move) objects in the XY plane
  • Move objects in the X direction
  • Move objects in the Y direction
  • Move objects in the negative X direction
  • Move objects in the negative Y direction
  • Move objects in the X and Y directions at the same time

Section 5 (Applications)

  • Practice previously learned concepts by building advanced 2D models
  • Create copies of objects


Unit 2

Section 6 (2D Rotations)

  • Learn how to rotate objects in the XY plane by playing Tetris
  • Positive and negative rotation
  • Rotation about the origin (0, 0)
  • Rotation about an arbitrary point in the XY plane:
    • Center of rotation inside the object
    • Center of rotation on object’s boundary
    • Center of rotation outside of object

Section 7 (Applications)

  • Practice 2D rotations and translations by building Tangram puzzles

Section 8 (3D Shapes I)

  • Learn first 3D objects and build simple 3D models
  • Create spheres, cubes, cylinders and cones

Section 9 (3D Shapes II)

  • Create pipe-like objects (tubes, pipes, 3D rings etc.)
  • Create boxes and toruses

Section 10 (3D Translations and Rotations)

  • Learn how to rotate and translate objects in the 3D space by playing Tetris 3D
  • There are six possible rotations in the 3D space
  • Z-axis rotations are the same as XY-plane rotations
  • Right-hand rule
  • Special cases of rotations discussed separately: 
    • Rotation point is inside the object
    • Rotation point is on object’s boundary
    • Rotation point is outside of object


Unit 3

Section 11 (Applications)

  • Practice 3D rotations and translations by creating a variety of 3D objects related to sports
  • Create truncated cones and arcs

Section 12 (Exploiting Symmetry I)

  • Learn how to exploit axial and planar symmetry to simplify designs
  • Mirror 2D objects about lines parallel to the X or Y axes
  • Mirror 3D objects about planes that are perpendicular to the X, Y or Z axes
  • Exploit multiple symmetries in one design

Section 13 (Exploiting Symmetry II)

  • Learn how to exploit rotational symmetry to simplify designs
  • Combine axial / planar and rotational symmetries

Section 14 (Applications)

  • Solve spatial puzzles in order to develop their spatial reasoning skills

Section 15 (Applications)

  • Practice previously learned concepts by building advanced 3D models related to movies 
  • Scale (shrink or stretch) 2D and 3D objects
  • Erase parts of objects


Unit 4

Section 16 (Curved Surfaces)

  • Curved surfaces are represented via straight triangles, and how to take advantage of this fact to create new shapes
  • More accurate surface representation leads to larger data files and increased memory and computing time
  • Make computations faster by reducing the number of sides in cylinders and cones 
  • Create elbows (elbow = part of a torus)
  • Create new objects by reducing the number of facets on elbows and spheres
  • Create intersections of objects
  • Boolean operations are more efficient when objects have fewer facets

Section 17 (Spirals)

  • Create spirals by revolving a given 2D object in the XY plane about the Y axis with a given angle of revolution, and elevation gain per one complete turn 
  • Create a rail to a staircase
  • Create helical screw blades for a meat grinder
  • Create a nut with thread, and a double-helix DNA model
  • Create a minigolf obstacle
  • Complete a freeway intersection
  • Build a slide for children’s playground

Section 18 (Design Automation I)

  • Identify repeating patterns and exploit them to simplify models
  • Python for-loop

Section 19 (Design Automation II)

  • Use Python for-loop to automate simpler designs
  • Create color bars with changing colors, stars of gradually increasing heights
  • Create a pyramid by stacking rectangular prisms of gradually decreasing diameter
  • Create a round staircase

Section 20 (Design Automation III) 

  • Use design automation for advanced projects
  • Build a railroad with many wooden ties
  • Build a spoked wheel, and a snowflake
  • Build a flower with many petals
  • Build a clock with minute marks
  • Build a sophisticated double-helix DNA model using balls and sticks