• Ingen resultater fundet

COMPUTING TIMBER

4.3 The blank model

4.3.3 Orienting free‐form glulams

Given a 3D glulam centreline curve, the orientation of the glulam

cross‐section is the other crucial variable necessary to unambiguously define a glulam geometry. Orienting an object on this curve requires calculating a frame of reference on the curve that the object is mapped to from its own frame of reference. This has particular applications in computer graphics, robotics, the study of particle motion, and other fields that study the motion of objects in 3D space. The Frenet‐Serret frame ‐ independently discovered by French mathematicians Jean Frédéric Frenet (Frenet 1852) and Joseph Alfred Serret in 1851 ‐ uses the curve’s tangent and curvature vectors to construct an orthonormal reference frame at any point on a differentiable curve, however this has discontinuities on sections where there is no curvature or where the curvature vector abruptly flips. This is improved upon by the Bishop frame (Bishop 1975) and the Beta frame, which combines the best aspects of the Frenet and Bishop frames (Carroll, Kose, and Sterling 2013).

Another, similar, technique that is widely used in computer graphics is the computation of therotation minimizing frame (RMF)which has the characteristic of minimizing twist around the curve, and therefore results in more continuous interpolations of frames along a 3D curve than the previous types of frames (Wang et al. 2008). In the glulam model, the calculation of an orthonormal frame of reference on the 3D glulam centreline curve is important for mapping the cross‐section along its length. By mapping the cross‐section at intervals along the centreline curve, the outer geometry boundary of the glulam can be modelled ‐ similar to how ”sweeping” and

”lofting” operations work. This makes it possible to derive the precise position and orientation of the cross‐section at any given point along the glulam, using only its centreline curve, and thus get a non‐ambiguous free‐form glulam geometry.

However, the alignment of the cross‐section with the centreline’s RMF is not always desirable in the design of glulam components, and it also depends on the specific implementation of calculating the RMF. In the design and modelling of free‐form glulam structures, the orientation of the cross‐section along the glulam can be driven by a variety of other parameters, such as a global direction vector, a reference surface ‐ such as in the process of

COMPUTING TIMBER

(a) (b)

(a)The main components for modelling a double‐curved glulam blank: a centreline curve (a) and a method to calculate reference frames (b) that define cross‐section orientations.

(b)The geometric boundary of the glulam is generated using the centreline curve as a guide and frames to orient the cross‐sections (grey, shaded areas).

Fig. 4.22:Constructing a glulam model using a guide curve and guide planes.

modelling Centre Pompidou‐Metz, Nine Bridges Golf and Country Club, Omega Swatch Headquarters (Scheurer et al. 2013), and others ‐ or some other points of alignment from other design features.

The glulam blank model therefore implements this variety in a modular way. As with the glulam types before, the orientation of a glulam model is defined as a baseGlulamOrientationclass, from which several subclasses are derived. A common method to all orientation types is the querying of the orientation at a particular point on the glulam centreline, which yields a direction vector. Combining this direction vector with the centreline tangent at the same query point results in an unambiguous orthonormal frame of reference at that point on the centreline. The types of orientation subclasses are:

• KCurveOrientation, which simply constructs the Frenet frame of the curve using the curve tangent and the curvature vector;

• RmfOrientation, which uses the RMF of the curve as described above and as implemented in the RhinoCommon API;

• PlanarOrientation, which aligns all cross‐sections with a vector perpendicular to a planar curve tangent and the normal vector (Z‐axis) of its plane;

• VectorOrientation, which aligns all cross‐sections with a single user‐defined vector, while ensuring that the resultant direction vector is perpendicular to the centreline curve;

168

• SurfaceOrientation, which queries a user‐defined surface at the point closest to the centreline query point and returns the surface normal at that point, while, again, ensuring that the resultant vector is perpendicular to the curve;

• RailCurveOrientation, which returns a vector from the query point on the centreline to a corresponding point on another user‐defined curve;

• VectorListOrientation, which uses an internal list of vectors and corresponding curve parameters that defines specific user‐defined direction vectors at user‐defined points on the centreline curve. These are converted and stored as angular offsets from the RMF, where the RMF is rotated along the curve tangent by a specified amount. This allows the robustness of the RMF to be combined with a user‐defined modulation of its rotation along the centreline. At a query point in between the user‐defined points, the angular offset is interpolated between the surrounding values, and the RMF is rotated accordingly.

Using this modular approach allows a combination of different glulam centreline types with different orientation strategies. However, as mentioned before, there are caveats. The production of simple, straight glulam blanks does not involve the twisting of the cross‐section. This means that for a glulam model to be aStraightGlulam, its orientation must be aVectorOrientationwhich provides a single, consistent orientation for its cross‐section. Similarly, the cross‐section of a single‐curved glulam is typically aligned with its plane of curvature: this corresponds to the way it is pressed and the use of wide, thin planks that can only bend around their thin section. Therefore, this means that aSingleCurvedGlulamcan also only have an orientation that results in vectors that lie in the same plane of curvature.

While these are limitations that arise out of the production process of these glulams, they can be overlooked if the model is used not to model the glulam blank, but if it instead is used to model the glulam component that is machined out of the blank. For example, aSingleCurvedGlulam with a free orientation can describe a double‐curved component that is following some surface using aSurfaceOrientation. This means that the component as‐is cannot be fabricated using a standard single‐curved glulam press due to the twisting cross‐section. However, since the centreline is planar, the centreline curve can be re‐used to model a single‐curved blank that envelopes the designed component, with the appropriate cross‐section orientation constraint in place. The double‐curved component can then be machined out of the single‐curved blank. This shows a bifurcation in the application of the glulam blank model, where it can be used to model

COMPUTING TIMBER

constrained glulam blank models, or can be used more freely to design glulam‐like geometries that have a relationship to specific types of glulam blanks.

Much like the first spline curves in computer graphics derived from real bands of wood or metal, pinned by ”ducks” Farin 2007, p. 4‐7, a similar analogous model needs to be determined or found, which takes into account the bending and twisting of free‐form glulams.