CAD Computer-Aided Design Journal
The rigid-block equilibrium (RBE) method uses a penalty formulation to measure structural infeasibility or to guide the design of stable discrete-element assemblies from unstable geometry. However, RBE is a purely force-based formulation, and it incorrectly describes stability when complex interface geometries are involved. To overcome this issue, this paper introduces the coupled rigid-block analysis (CRA) method, a more robust approach building upon RBE’s strengths. The CRA method combines equilibrium and kinematics in a penalty formulation in a nonlinear programming problem. An extensive benchmark campaign is used to show how CRA enables accurate modelling of complex three-dimensional discrete-element assemblies formed by rigid blocks. In addition, an interactive stability-aware design process to guide user design towards structurally-sound assemblies is proposed. Finally, the potential of our method for real-world problems are demonstrated by designing complex and scaffolding-free physical models.
Course Project, collaboration with Ting-Yu Chen, Wen-Chieh Tung, Kaiyue Shen, Zimeng Jiang.
High-dimensional 3d scanned point cloud face data. Implemented rigid registration, non-rigid warping, PCA methods, data processing pipeline of 3D geometric learning, and generated unlimited faces. GUI design for users to morph between faces.
Teaching assistant and mentored students in one-month MIT Design-Build Workshop 2019 in Shanghai. Robotic Force Printing is a joint workshop from MIT Architecture, ETH Zurich Block Research Group, and Tongji University. The workshop explores robotic additive manufacture and assembly of novel shell structures.
More information to see my blog post
Multi-projects & multi-users BIM issue management system with commenting feature and various model review add-ins
More information to see Hojoong's website
Class Project, collaboration with Riccardo Manitta, Hojoong Chung.
Light Sculpture is created by an industrial robot. The robot movements were generated by scanning ourselves utilizing Kinect V2 and creating the robot path with the resulting point cloud and pathfinding algorithm.
More information to see Hojoong's website
Using modern programming language as a file format for describing/sharing/visualizing the 3D product information.
Presented at the Linked Data in Architecture and Construction(LDAC) 2017 with Hojoong Chung at Dijon, France.
More information to see Hojoong's website
Leopard is an open source mesh processing solution for grasshopper that
allows users to interact with rhino geometry and create customised mesh shapes.
By selecting Mesh vertices, edges and faces, users have more freedom to edit
meshes intuitively and use different subdivision schemes to selectively choose
multiple areas to fix.
Mesh data using Plankton for internal processing.
Leopard is still in the very early development stage, so please use it
for your own risk and we welcome any feedback, discussion or insight you may provide.
Leopard © 2016 - 2023 Gene Ting-Chun Kao and Alan Song-Ching Tai
More information see Grasshopper forum
PhysX.GH is a rigid body simulation tool for Grasshopper. It uses open source real-time physics engine NVIDIA PhysX and a C# wrapper from stilldesign/PhysX.Net. It runs with GPU and provides users with fast simulation results. More to my blog post
This simple swarm script with GUI interface was written in Processing.
Now I figure out lots of code from this script should be improved! For instance, we can implement KDTree later...
Hope this code from the previous version will help people who needs or interested in it.
Swarm Behavior + Attractor : Agent methods:
Attractor methods: (Controlling the shape)
From starting points move to target points to create bridge.
Using swarm simulation in Grasshopper is in this post:
Swarm Python GH Component
This project was my undergraduate architectural thesis design using Processing + Java code
Take a look if anyone is interesting, and welcome to download it.
Java environment is Java SE 6.
The Digital Lamp of Architecture - A New Church Prototype
Thesis Video
3D Printed Model (Also generated by this java code)
This is GUI software of Project of "The Digital Lamp of Architecture" Code written in 2013
Code credit to Jared Counts Curtain Coding Structure in BlueThen.com
The Digital Lamp of Architecture referred to John Ruskin's book
"The Seven Lamps of Architecture, " and make a comparison between its age
and our digital age. Through traveling, description in theory can be highly
discovered within backpacker's own eye. Finally, digital technology was implanted
into church architecture as an example to reflect on Ruskin's theory. One of the
most important element is "Sublime." Besides, scale, structure and ornamentation
was used to interpret and practice in Digital Architecture.
I was in the computational design team while designing the
ICD/ITKE
Research Pavilion 2015-16 and was mainly in charge of developing computational tools.
Here is the demonstration video to show the geometrical implementation.
One of the input parameters from the plugin is a mesh surface,
and the output parameters are all tree data structure thus some double-layer
light weight structure as well as some planar plates can be generated
(Planar plate wasn't realized due to the decision making and scheduling
during the development). All the geometries are labeled in the right sequence
so they can be fabricated directly:
The demo video above shows the workflow from mesh to pavilion geometry by using
our customised Grasshopper
component, and we can select vertices from the mesh by using
Selectable Preview
plugin. Finally, the customised component can generate plate and double layer
topology seamlessly.
Some part of the code is on my
github and the code project was developed together with Julian Wengzinek,
Thu Nguyen-Phuoc and Long Nguyen.
The video of ICD/ITKE pavilion project can be seen here.
This paper proposes a workflow for Assembly-Aware Design (AAD) of masonry shell structures and introduces an interactive tool in a CAD environment to assist the design process while simulating the step-by-step assembly of masonry blocks. Thus designers can explore the design space of masonry shell structures and be aware of structural performance before the assembly phase, at the early design stage. Masonry shell structures are an old construction technique, which has recently received a lot of attention due to new computational methods. Even though the form of such a structure is optimised for structural performance, its incomplete form during construction often requires the support of falseworks, which can be extensive, costly and time-consuming. To tackle this unsolved problem, we developed an assembly strategy that significantly reduces the falsework usage while still maintaining the equilibrium of the incomplete shell at each assembly step. The key idea is to compute a disassembly strategy inspired by the Jenga game and then reverse it to obtain the actual assembly sequence of the masonry blocks. Rather than using discrete element methods to predict the structural behaviour of the masonry blocks, we employed the GPU-based rigid-body dynamic solver from the engine NVIDIA PhysX, this allows very fast computation speeds while still offering sufficient accuracy for our purposes. Finally, we verified our method using small-scale 3D printed models.
More pictures and description can be seen on my website GENEATCG
LEGO component for 3d printing. You can design and 3d print your own lego component by using this small tool.
LEGO customized components developed through Python script using Rhino 3D software.
Mouse left click => make LEGO up part.
Mouse left click => make LEGO down part.
Basically, the methodology is quite simple.