Tag Archives: computational geometry

Hansmayer Initial Studies \\ Subdivided Pavilions

BACK2BACK with the previous mentions of the FG on Subdivisional Systems

Computational Architecture//Michael Hansmayer

Hansmayer Basics \\ 2D Subdivision

  gettin 3D was an eaazzy wayout -

chcheckitout

☟DAT WAY

In recent years, much of the discussion in the field of algorithmic architecture and generative design has focused on agent-based models and what is more generally termed as complex systems. While there is no doubt that complex systems can produce intriguing results, the aim of this project is to use a very simple process to generate heterogenous, complex output. A simple process has the advantage of more control; its output is easier to predict and can therefore be more easily refined through subsequent parameter adjustments.

ze detail☟

This project begins the exploration of 3-dimensional subdivision processes. By modifying these algorithms to include additional weights, one can generate forms with entirely different attributes.  Each of the pavilions is based on two interlinked cubic frames, similar to a tesseract. The generative process for each of the pavilions is identical, only its parameters – specifically its division weights – are allowed to change.

FG ♥ Hansmayer

About these ads

Hansmayer Basics \\ 2D Subdivision

- Healing time -Subdivision in this project refers to the recursive division of a  polygon into smaller components based on defined rules. Those rules specify how many new quads are produced in each iteration. These rules determine also the shape of the new quads by specifying the placement of their vertices. The position of every new vertex is defined as a weighted interpolation of its parent vertices.

to get more into it, back2theFG –> Computational Architecture//Michael Hansmayer (Link)

Subdivision System I

Constant Weighting Rules

Subdivision System II

Interpolated Weighting

COOL OR WHA?

via(+)

WOW II // 3D scans n’ sh*t

forget the robotic arm you saw in Coop’s office which used to scan ur ACTUAL models.

lets take it to the next level …

OrcaM Orbital Camera System is the shit..-seriously havent seen a machine this impressive in a while-

-Scannin like a boss-

“Developed by a German company called Nek (site is in German), the OrcaM uses a system of seven cameras to create 3D models of any object placed inside its “reconstruction sphere.”

Currently, the machine is limited to objects that are no larger than 31.5 inches wide and 200 pounds in weight. Once placed inside the sphere and sealed shut, the cameras circle the orb taking high definition photos of the object at different angles. Meanwhile, inside the sphere a system of lights illuminate at different times to capture the object’s geometry.

After the photographing session, or the acquisition process as they call it, is over, a computer automatically processes the images to create a 3D model that accurate down to the submillimeter range.

Nek says the aim of the OrcaM Orbital Camera System is to provide high-quality digital representations of objects for use on the Internet, movies, video games, and other digital media. Some examples the company gives is using the 3D models to showcase items up for auction on the Web and creating virtual museums.”

lets check this BABY in some hot ACTION…

So long suckerz…

Note to Frank “hammer-free-form” Gehry

No Frank, unfortunatelly no scanner can fix your model..oh, wait…….

Heroes no more

holla bots,

Christopher Carlson in his Wolfram Blog (+) provides an uber cool mathematical run-through of your favooorite projects. hah

“It started with an innocent experiment in lofting, a technique also known as “skinning” that originated in boat-building. I wanted to explore some three-dimensional forms, and a basic lofting function seemed like a quick ticket to results. I dashed off the functionLoft, which takes a stack of three-dimensional contours and covers it with a skin of polygons.”

"Loft uses Mathematica’s GraphicsComplex primitive to factor out the geometries of the polygons from their topologies. The contour point coordinates are collected in the first argument. The second argument is a list of Polygons whose coordinate values are replaced by integer indices into the coordinate list. My Loft function was straightforward to write, but required a little fancy footwork with indexing to get the polygons wired onto the points in the right way.”

 

“Even this trivial parameterization of a scaled and twisted half-sphere yields an amazing variety of  forms, each of which suggests interesting avenues to explore.”

The last of those forms brought to mind Norman Foster’s Swiss Re building in London, nicknamed by the locals “the Gherkin.”

“I wondered how convincingly I could model the Gherkin in Mathematica. It was immediately obvious that my simple Loft function was not up to the task of replicating the white diagrid framing structure employed in the Gherkin, so I set out first to generalize Loft. One thing lead to another, and soon I had the much larger but much more flexible function Build, with which I could explore not only Foster’s Gherkin but a large number of other architectural forms based on the simple idea of hanging panes, panels, mullions, and framing members on grids of points.

My Build function works like Loft, but gives me much more flexibility in specifying elements like tubes and polygons and how they are repeated on the contour grid. LikeLoftBuild’s first argument is a set of contours. The second argument is aGraphics3D-style primitive list whose primitives contain an extra argument that specifies how they should be repeated on the contour grid.

If you imagine the contours numbered from bottom to top and the points in the contours numbered from left to right, {point, contour} indices correspond to coordinates in an integer coordinate system. The primitive
Polygon[{{0,0},{1,2},{1,0}}] appears on a contour grid like this.”

 

“In linear primitives like Line and Tube, the repetition argument specifies the frequency with which the primitive is repeated horizontally, or for horizontal primitives, vertically. By combining repetitions of polygons, tubes, and lines, Build gives me great flexibility in describing assemblages of panes and structural members. Here’s an abstract structure I generated to exercise all of Build’s primitives.”

As a final step, I refined the contour points at the top to add the dome-like cap at the top of the Gherkin.

I won’t deny that from there it required a surprising amount of detailed work usingBuild to make a finished model. The Gherkin’s body, its cap, the topmost dome, the rings, and the boundaries of and transitions between the separate parts all required individual attention. To select material properties and lighting, I set up Manipulaterigs and exercised the sliders until I found the right values. Here is the result.

Post-processing via replacement rules can operate on the geometry of an object as well as its appearance attributes. Because all of the coordinate data of my model resides in the first argument of GraphicsComplex, coordinate transformations are particularly easy. And since all of the graphics primitives are all wired to the same coordinates, the primitives automatically move in concert and remain connected when the coordinates are transformed.

Using that technique, I wrote this Manipulate to explore variations in the radial geometry of the Gherkin.

 

 

*BONUS*

 

 

 

OODA Disaster, Fail // you name it

This seems to be a good day

Although not big fans of designboom, we need to to send a big “thank you” to these guys for sharing this killer project (+)

So,

world famous architecture office OODA participated in the recent Istanbul Disaster competition and submitted an actual DISASTER! (hah you see how funny am i? i play with words lol)

we will start with a visitor’s comment on design boom:

“This is terrible.

This is not architecture.

It’s just fitting a program into an arbitrary form, and then wrapping it up with a pattern.”

by Patricio

OODA: “ natural light filters through the facade derived from arabic patterns”

- hah no dude. As soon as you have a hole light will get in + this is not an arabic whatever pattern. Is a grasshoper surface made by your chinese interns in 2 hours using a cube

A new ZARA store will be accommodated in case this entry scoops the first prize (: ,)

Above you can see a new architectural notion. the EGO skin. when you got a perfectly (lol) working building wrap it up with something stoopid and there you go. It probably works better with Arab Clients (thats why we will include in our tags “arab money” for this post)

First year students could fail presenting this plan!

*If someone finds a worst place to place the ADMINISTRATIVE (oh yeah!) OFFICES gets a prize!!

Ok, WHY this FORM?

self explanatory diagram below…

as we started we will finish with a comment of another furious visitor of designboom:

“That is not architecture.

That is Communication.

Have You finish School? ARchitecture?

Perhaps Just 3D and Rhino.”

by Oiza

Ciao see you later

Computational Geometry // LIBGAUDI

ok, we both know how much we like to make fun of your little architecture whatever society u got going on, but some things are actually interesting and worth sharing.

So, since on thursday we decided to play LAG today we share serious knowledge and XP points

——> get them here donks:

Antoni Gaudi was a Spanish Architect know for his eccentrically beautiful fluid forms. libGaudi is a fledgeling subdivision of surface modeling library based on the Doubly Linked Face List data structure. Right now Gaudi is a collection of routines to work with computational geometry, integrating 3D surface modeling and physical systems to solve real and imagined problems. The goal of libGaudi is to develop an easy to use and flexible library for making complex forms and solving complex geometric and fluid dynamic problems. Ultimately its a platform for my education in computational geometry and physical modeling and a way to explore infinite subdivision of surfaces based on tweaking the subdivision rules through simple operations such as twisting vertices, emphasizing edges and physically based surface interactions. Eventually libGaudi will be included in a 3D modeling program.

So what is a Doubly Linked Face List (DLFL)? Its a graph based data structure with embedded faces. Basically meaning that the faces straddle the graph, and the nodes of the graph act as the vertices. This is accomplished by using encoding the faces of the corners seperately from the vertices as a circular linked list. Its quite similar to the DCEL or Doubly Connected Edge List, or Half Edge data structure

What makes the DLFL interesting is the INSERT_EDGE operation. By connecting points together, sequentially you begin to build 2-manifold geometry. For instance, connecting together three points will create a 2-face, or a double sided face. By connecting a third vertex, you create a 3 sided pyramid. This is based on the notion of a graph rotation system, an obscure theorem that describes a 2-manifold geometry based on the ordered rotations of edges around a vertex.
onSequitar blog:
“Currently I have only implemented Catmull-Clark subdivision of surfaces, and some simple modeling primitive operations, but as I progress, I would like to incorporate some concepts from computational geometry, mesh skinning of a three-dimensional graph or lattice data structure, and infinite subdivision based on voxelization of manifold geometry.
A notion I’ve had is to integrate a non-destructive deformation engine and a bones engine into the modeling flow so that 1) Gaudi can construct good topology for deformation and 2) the modeler can test that topology and change the parameters of mesh generation. I think that if the high-resolution detail painting engine has a separate topology from the underlying model then then as long as the underlying topology doesn’t changed too much, then the detail can be remapped pretty easily to the new topology
Additionally, I have been interested in a simplex-lattice modeler based on a simplex data structure. This would more naturally extend to physical modeling, and keeping track of cavities and higher genus structures. A system of keeping track of an object’s hull, based on triangulation, then removing “bad” simplices might yield an interesting modeling interface. Further more the Hull can be independently subdivided to create smooth manifolds. Operations on the Hull, such as vertex insertion, or subdivision could then alter the underlying lattice.”
Skinning
Skinning takes a graph and produces a 2-manifold skin around the graph. Skinning was produced in order to develop primitive objects for additional modeling operations and for use in animation with a bones system, however the structures it produces are pretty cool themselves.

The manifold is produced by defining a quaternion for each edge in the graph, extruding a shape in the direction of the quaternion, producing a convex hull for each face in the node, then fusing the whole thing together. Future iterations will optionally insert Steiner points at each node to produce more round nodes.

The graph depicted in this image was randomly generated using a spring electric model for layout. Theoretically with proper import bindings any network could be used.

Computational Geometry

Within the realm of 2-manifold geometry, libGaudi has a growing list of computational geometry and topological operations. If you’re looking for accuracy you’re probably looking for CGAL. If you’re looking for art and graphics, libGaudi is be your thing.

convex hull operation using the Quickhull method (only 75 points, but you get the idea).

Dual of the Convex Hull.

Dual of the Subdivision of the Convex Hull.

Skin of the edge graph of the dual of the subdivision of the Convex Hull.

Voxelization of a 2-manifold object.

Fluids

In addition to some light computational geometry and algorithmic modeling, libGaudi also exists to prep geometry for fluid simulation. The fluid model is an implementation of the Immersed Boundary Method (IBM). The IBM is the coupling of a particle (Lagrangian) based fluid with a grid based fluid in order to model the interactions soft bodies immersed in a fluid medium. In this case the particle system is based on a linearized mass spring model used for modeling hair. The fluid solver uses a (1,2) projection method coupled with a semi-lagrangian advection step. The solver for the spring system is a conjugate gradient method, and the fluid system uses a multi-grid method based a on red-black gauss-seidel smoother. Domain decomposition and porting to the GPU are in the works.

This image shows a sphere immersed in a stokes fluid with a velocity injected into the sphere. Currently I’m working to simulate flow through a network of arteries, and this model will be coupled with a linear model of blood flow. The immersed boundary method is a little on the leaky side, I’m currently researching methods to improve the relatively primitive model I’ve implemented. And yea, its a little bit ugly right now, but I’m not too interested in making things look pretty yet.


source: (+)