CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen...
Transcript of CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen...
![Page 1: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/1.jpg)
CatenaryCAD: An Architectural Design Tool
Team SixteenDan ChakMegan GalbraithAxel Kilian
6.837 Computer Graphics
![Page 2: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/2.jpg)
Antonio Gaudi designed complex structures using catenary systems
![Page 3: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/3.jpg)
Beautiful forms were created by
suspending pieces of string from hooks,
deforming them with weights and strings,
then inverting the structural elements.
![Page 4: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/4.jpg)
We created design software for architects interested in using catenary systems.
CADenary
![Page 5: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/5.jpg)
CADenary is implemented using
C++ (physics modeling)
OpenGL (graphics rendering)
Tcl/Tk (user interface)
![Page 6: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/6.jpg)
Goals We Met
Interactive that runs in real-time
Realistic-looking models of objects under gravity
Hooks and strings placed in 3D world
Hooks accurately placed both in space and on strings
Computed reasonable physics for the strings
Can flip designs 180 degrees to view as buildings
Good software design
Good design software
![Page 7: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/7.jpg)
Goals We Did Not Meet
Visualize external and internal forces on string particles
Skins that render over the “wire frame” string structures
Ability to save models for 3D printing
Implementing OpenNURBs
![Page 8: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/8.jpg)
How We Approached the Project
![Page 9: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/9.jpg)
cdObject
cdForce
Vect
LineSegment
a, b
cdHook
cdStringHook cdSkyHook cdStringcdWeight
cdModel
pos cdSpring
cdForceEntry
cdParticle
cdParticleEntry
a,b
cdParticleSystem cdParticleBucket
Data Model Physics SimulationGeometry
Program Data Model
![Page 10: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/10.jpg)
Tcl/Tk User Interface
Create a new SkyHook
Create a new StringHook
Create a new String
Select an object
View the parameters of an object
Spin the simulation 180 degrees
Real-time graphics window
Interactivity
![Page 11: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/11.jpg)
Physics Simulation
Spring-Particle System
Chose Runge-Kutta solver (explicit)
Produces reasonably robust solutions
Susceptible to breaking with scale changes or excessive stress
Lack of conservation of length means a string stretches 1.5 times the “at rest” length
System unstable if stiffness parameter is set beyond 1
![Page 12: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/12.jpg)
What We Learned
How to code in unfamiliar languages
Challenges of rendering 3D spaces and maintaining believable interactions with objects in the space
Important to choose appropriate solvers based on speed requirements, robustness, and required precision of the calculations
Physics simulations can be tricky in 3D
Team (and code) management skills
![Page 13: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/13.jpg)
What We Wish We Could Change
C++ may not have been the right choice... Java?
Use one unified language for all aspects of the program
Create the ability to develop the code on a variety of platforms rather than only Linux
![Page 14: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/14.jpg)
Individual Contributions
DanSetting up the development environmentWriting the code that binds the C++ classes with the UI
MeganBuilding the user interface in Tcl/TkPutting together the written report and presentation
AxelBuilding the physics simulation/string models in C++
![Page 15: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/15.jpg)
Deliverables
CADenary program with basic features
Java versions of the particle system
Collection of short movies
Source code
Final Project Paper (.pdf)
Final Presentation (.pdf)
![Page 16: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/16.jpg)
CADenary
![Page 18: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/18.jpg)
Short Movies
1 2
3 4
![Page 19: CatenaryCAD: An Architectural Design Tool · CatenaryCAD: An Architectural Design Tool Team Sixteen Dan Chak Megan Galbraith Axel Kilian ... Tcl/Tk (user interface) Goals We Met Interactive](https://reader034.fdocuments.us/reader034/viewer/2022042305/5ed07da1fddcea009e4ea491/html5/thumbnails/19.jpg)
The End!