CITA Comple Modelling

Page 413

RETHINKING PATTERNS : ELEPHOETUS

TOPOLOGICAL MODELLING

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

487

definition: 1) Generating topologically complex manifold meshes, 2) Form finding meshes toward shell bending behaviour, 3) Decomposing unstructured meshes into geodesic developable strips, 4) Generating fabrication and assembly information. A topologically complex manifold is defined here as constituting a continuous, orientable, and non-intersecting surface with a genus larger than zero (i.e. two-sided surfaces with one or more holes/handles). NURBS modelling is fundamentally problematic for this type of geometric representation, as one must combine multiple quadrilateral surface patches for anything more complex than a torus. Polygonal meshes may conversely approximate the topology of any manifold using one continuous and flexible data structure that inherently lends itself well to interfacing design scales from macro to micro (and vice versa). Our generative design modelling logic

here was based upon drawing a medial representation (i.e. a set of spatial curves) describing the positive and negative space of the shell. From these a three-dimensional discrete scalar field can be generated, and a mesh approximating an isosurface through this field can be extracted using the well known marching cubes algorithm [2]. This was implemented in C# scripting components using Dave Reeves’ Spatial Slur geometry processing library [3]. An inherent downside to the marching cubes logic is that the generated mesh vertices are coincident with the cartesian scalar field grid, yielding highly heterogeneous local geometry (i.e. long skinny and short fat triangle faces) and network topology (i.e. vertices with many different valences). To improve the mesh quality for both the downstream form finding and decomposition into strips, a remeshing algorithm was implemented, which iteratively

collapses, splits, and flips mesh edges with the objective of generating an equilaterally triangulated mesh with consistent valence counts [4]. This was implemented into the pipeline using Daniel Piker’s Mesh Machine component, now part of his Kangaroo3D plugin [5]. Kangaroo3D was also implemented for the following stage, in which the remeshed shell geometry is form found towards performing appropriately as a bending active slender plate structure. The form finding logic applied here is similar to the modelling of the elastica curve as applied in the Hybrid Tower and Lace Wall projects (i.e. sequential pairs of line segments along a polyline will attempt to maintain an angle of 180 degrees, while also maintaining their lengths). Only here the 2D curve bending logic is dimensionally extended to 3D surfaces, by instead operating upon the four points describing the hinge at each

closed edge of the mesh. That is, for all edges that are not on the open mesh perimeter, their two neighbouring faces are identified, and these two triangles are instructed to bend out to 180 degrees across their shared edge. Yielding the mesh macro surface to assume an appropriate bending active geometry. These behaviours were implemented using an early build of the Kangaroo2 projection based dynamic relaxation [6] solver, with both the goals and physical system being implemented in GHPython scripting components. Unlike the structured quadrilateral meshes typically implemented for modelling topologically complex manifolds within both design and entertainment (i.e. subdivision modelling methods such as the well known Catmull–Clark scheme [7]), the unstructured triangular meshes output from common remeshing processes do not feature intrinsic natural face loops. From

3

/

/

CITA Complex Modelling

2

488


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.