Mar/08
Ryan Michael Schmidt

Computer-Aided Perspective Drawing

Automatic interpretation of drawings is a problem that has been explored by researchers in artificial intelligence, machine learning, human-computer interaction, and computer graphics. A particular focus has been placed on understanding 3D drawings, which if possible would allow designers and architects to leverage their existing artistic skill sets. While many freehand 3D sketches are highly under-constrained, some styles of technical drawing have clear underlying mathematics.

I will describe an interactive tool which directly implements "analytic drawing", a pencil-and-paper system used by designers to aid in precise construction and interpretation of 3D geometry from a 2D drawing. Combining the rules of analytic drawing with constrained 3D inference allows a "3D scaffold" of lines and curves to be sketched from one or more views. The resulting system interactively interprets perspective drawings with high accuracy. We found that designers could use the basic aspects of our tool with no training, and with a bit of time invested, surprisingly complex 3D curve networks can be sketched.

Ryan Michael Schmidt

Head of Design & Fabrication Group, Autodesk Research, Toronto

Ryan Schmidt is Head of the Design & Fabrication Group at Autodesk Research in Toronto, Canada. His research focuses on interactive 3D design tools, with the goal of making them more expressive and efficient. This work involves aspects of Computer Graphics (geometry processing, surface representations, interactive rendering) and Human-Computer Interaction (2D/3D interaction techniques, workflow optimization). Ryan's research has resulted in several novel 3D tools, including the sketch-based modeler ShapeShop (http://www.shapeshop3d.com), the easy-to-use mesh cleanup / composition / sculpting tool Meshmixer (http://www.meshmixer.com), and a computer-aided 3D perspective drawing system. Currently he is exploring design interfaces in the context of emerging personal 3D fabrication workflows.