Constructing Porous Geometry

Similar documents
Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example.

Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Geometric Modelling & Curves

How To Use Design Mentor

COMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies

Volumes of Revolution

Mean Value Coordinates

Essential Mathematics for Computer Graphics fast

Curves and Surfaces. Goals. How do we draw surfaces? How do we specify a surface? How do we approximate a surface?

We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model

Degree Reduction of Interval SB Curves

Computer Animation: Art, Science and Criticism

BEZIER CURVES AND SURFACES

Finite Element Formulation for Plates - Handout 3 -

CHAPTER 1 Splines and B-splines an Introduction

Modeling Curves and Surfaces

CATIA Wireframe & Surfaces TABLE OF CONTENTS

Algorithms for Real-Time Tool Path Generation

1. Abstract 2. Introduction 3. Algorithms and Techniques

NURBS Drawing Week 5, Lecture 10

Georgia Department of Education Kathy Cox, State Superintendent of Schools 7/19/2005 All Rights Reserved 1

FACIAL RIGGING FOR 3D CHARACTER

Selective Degree Elevation for Multi-Sided Bézier Patches

NURBS Drawing Week 5, Lecture 10

A matrix method for degree-raising of B-spline curves *

CSE 167: Lecture 13: Bézier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011

From Scattered Samples to Smooth Surfaces

Robust NURBS Surface Fitting from Unorganized 3D Point Clouds for Infrastructure As-Built Modeling

Copyright 2011 Casa Software Ltd. Centre of Mass

Model Repair. Leif Kobbelt RWTH Aachen University )NPUT $ATA 2EMOVAL OF TOPOLOGICAL AND GEOMETRICAL ERRORS !NALYSIS OF SURFACE QUALITY

Reflection and Refraction

GRAFICA - A COMPUTER GRAPHICS TEACHING ASSISTANT. Andreas Savva, George Ioannou, Vasso Stylianou, and George Portides, University of Nicosia Cyprus

2.3 WINDOW-TO-VIEWPORT COORDINATE TRANSFORMATION

CATIA V5R21 - FACT SHEET

A Short Introduction to Computer Graphics

Introduction to Computer Graphics

Efficient Storage, Compression and Transmission

CENTER OF GRAVITY, CENTER OF MASS AND CENTROID OF A BODY

A Multi Level Sketching Tool for Pencil and Paper Animation

Content. Chapter 4 Functions Basic concepts on real functions 62. Credits 11

Computer Aided Systems

Further Steps: Geometry Beyond High School. Catherine A. Gorini Maharishi University of Management Fairfield, IA

Advanced Surface Modeling

Figure 2.1: Center of mass of four points.

The Circumference Function

Intersection of a Line and a Convex. Hull of Points Cloud

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur

096 Professional Readiness Examination (Mathematics)

Pro/ENGINEER Wildfire 4.0 Basic Design

An Overview of the Finite Element Analysis

prepared by Gabe Landes for T. Purdy 2009

Cabri Geometry Application User Guide

Algebra Academic Content Standards Grade Eight and Grade Nine Ohio. Grade Eight. Number, Number Sense and Operations Standard

Modeling Curved Surfaces

CHAPTER 8, GEOMETRY. 4. A circular cylinder has a circumference of 33 in. Use 22 as the approximate value of π and find the radius of this cylinder.

Welcome to Math 7 Accelerated Courses (Preparation for Algebra in 8 th grade)

Figure 1.1 Vector A and Vector F

Unit 7 Quadratic Relations of the Form y = ax 2 + bx + c

Activity Set 4. Trainer Guide

Algebra Geometry Glossary. 90 angle

A Comparison of. Gaussian and Mean Curvature Estimation Methods. on Triangular Meshes of. Range Image Data

MATHEMATICS FOR ENGINEERING BASIC ALGEBRA

B2.53-R3: COMPUTER GRAPHICS. NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions.

NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS

NURBS with Extraordinary Points: High-degree, Non-uniform, Rational Subdivision Schemes

Topics in Computer Graphics Chap 14: Tensor Product Patches

Computational Geometry. Lecture 1: Introduction and Convex Hulls

Higher Education Math Placement

COMPUTER GRAPHICS IMPORTANT QUESTION AND ANSWERS. Computer graphics

TWO-DIMENSIONAL TRANSFORMATION

Investigating Area Under a Curve

The basis functions of normalized simplex splines are then defined

Basic Understandings

UNIT H1 Angles and Symmetry Activities

GRADES 7, 8, AND 9 BIG IDEAS

TEXTURE AND BUMP MAPPING

Section 16: Neutral Axis and Parallel Axis Theorem 16-1

Making 3D Threads in Feature Based Solid Modelers

Tennessee Mathematics Standards Implementation. Grade Six Mathematics. Standard 1 Mathematical Processes

NEW MEXICO Grade 6 MATHEMATICS STANDARDS

Platonic Solids. Some solids have curved surfaces or a mix of curved and flat surfaces (so they aren't polyhedra). Examples:

Electromagnetic Sensor Design: Key Considerations when selecting CAE Software

Pre-Algebra Academic Content Standards Grade Eight Ohio. Number, Number Sense and Operations Standard. Number and Number Systems

GEOMETRY. Constructions OBJECTIVE #: G.CO.12

Analyzing Facial Expressions for Virtual Conferencing

MATH. ALGEBRA I HONORS 9 th Grade ALGEBRA I HONORS

Off-line Model Simplification for Interactive Rigid Body Dynamics Simulations Satyandra K. Gupta University of Maryland, College Park

ON SELF-INTERSECTIONS OF IMMERSED SURFACES

Solving Geometric Problems with the Rotating Calipers *

3. Interpolation. Closing the Gaps of Discretization... Beyond Polynomials

NCTM Curriculum Focal Points for Grade 5. Everyday Mathematics, Grade 5

Prentice Hall Mathematics: Algebra Correlated to: Utah Core Curriculum for Math, Intermediate Algebra (Secondary)

Intermediate Tutorials Modeling - Trees. 3d studio max. 3d studio max. Tree Modeling Matthew D'Onofrio Page 1 of 12

Efficient Meshing in Sonnet

a 11 x 1 + a 12 x a 1n x n = b 1 a 21 x 1 + a 22 x a 2n x n = b 2.

MA 323 Geometric Modelling Course Notes: Day 02 Model Construction Problem

Modelling 3D Avatar for Virtual Try on

Mathematics Georgia Performance Standards

CALIBRATION OF A ROBUST 2 DOF PATH MONITORING TOOL FOR INDUSTRIAL ROBOTS AND MACHINE TOOLS BASED ON PARALLEL KINEMATICS

Using MuPAD and JavaView to Visualize Mathematics on the Internet

Transcription:

Constructing Porous Geometry Gershon Elber Dept. of Computer Science, Technion IIT, Haifa 32000, Israel gershon@cs.technion.ac.il Abstract This work introduces a modeling constructor for porous geometry via surface-trivariate compositions. By using 2- manifold (porous) surface tiles and paving them multiple times inside the domain of a 3-manifold trivariate function, precise yet general, porous and watertight, geometry might be constructed, via composition. The 2-manifold tiles are demonstrated to be either polygonal meshes or (a set of) B-spline surfaces whereas the 3-manifold trivariate is either a Bézier or a B-spline function. After laying down the theoretical foundations, we demonstrate the power of this constructor over some models, only to present some 3D printed tangible examples. 1 Introduction and related work The idea of freeform deformations (FFD) was introduced around thirty years ago [11] as a global deformation mapping, T : IR 3 IR 3, and was based on trivariate tensor-product Bézier vector functions. Since then, a large body of work was presented on a variety of FFD techniques, including extensions to B-spline support [7] and the use of FFDs [3] as an animation tool. While in general, FFDs map a box-shaped domain into a deformed-box in Euclidean space, [2] introduces Extended FFDs to form a deformation that better resembles the shape of the input model. [2] suggested the use of prismatic and cylindrical FFD functions that can approximate some geometric models better than box-shaped tensor product FFDs. More general FFDs suggested the use of arbitrary topology FFDs based on subdivision volumes for free-form deformation [8]. Other, more recent variations, even suggested variations of FFDs that remove some topological restrictions from the deformed object. [6] suggested teared surfaces that incorporated non-iso-parametric curves of C 1 discontinuity inside B-spline surfaces. Similarly, [10] suggested the exploitation of discontinuous FFDs to induce tears in the deformed models for animation and surgery incision simulations. Interestingly enough and while the body of FFD work is significant, FFDs were never seen as modeling tools. Almost exclusively, FFDs were applied to an input model, resulting a modified model. In this work, we combine the general FFD s idea with a surface detailing technique, such as [5], into a modeling constructor of porous geometry. In [5], surface detailing geometry is encoded over 2-manifolds in 3D, with examples like scales and thorns. The existing body of FFD work updates or augments an existing model as are surface detailing techniques. Herein, we propose a simple change of concept, and introduce a variation of FFD as a modeling constructor. The Trivariate function T can be of any general shape. Techniques to build trivariate functions are known and almost any 2-manifold surface model can be made into a 3-manifold trivariate using constructors like ruled volumes or volumes of revolution. Then, the 3D domain of T will be paved with simple porous elements, aka tiles, toward the construction of a periodically looking complex, porous model, in the general shape of T The rest of this work is organized as follows. Section 2 presents the different stages of this proposed FFD variant and the necessary tools. In Section 3, some examples and results are presented, only to conclude, in Section 4.

2 Algorithm Let T be a trivariate Bézier or B-spline vector function: T (x, y, z) = n 1 n 2 n 3 i 1 =0 i 2 =0 i 3 =0 P i1,i 2,i 3 B i1,n 1 (x)b i2,n 2 (y)b i3,n 3 (z), (1) where P i1,i 2,i 3 are the control points of the 3D mesh of T and B i1,n 2 (u) are the Bézier or B-spline basis functions. The mapping of a triangle through T can be approximated by simply mapping its three vertices, V k, k = 0, 1, 2, as T (V k ). Such a mapping is precise only at the vertices and some FFD related work aimed to control this error, possibly by dividing the triangles to smaller ones, adaptively. A surface tile that is a polygonal mesh can then be mapped one triangle at a time. Note that general n-gons, such as rectangles and pentagons, are not necessarily going to remain planar after the mapping of their vertices through T and hence, typically, the polygons in the tile are refined to consists of triangles only. Now consider a surface tile that is a Bézier or a B-spline surface S(u, v) = (S x (u, v), S y (u, v), S z (u, v)): S(u, v) = m 1 m 2 j 1 =0 j 2 =0 Q j1,j 2 B j1,m 1 (u)b j2,m 2 (v). (2) One can map the control points, Q j1,j 2, of S through T but this mapping of S, is only an approximation, much like the polygonal tile case, where only the vertices were mapped. Further, continuity will not be preserved and the geometry will not follow the curvature induced by T (See also Figure 1 ). Alternatively, a precise mapping of S through T ((See also Figure 1 (d)) can be computed using composition [4]: T (S(u, v)) = T (S x (u, v), S y (u, v), S z (u, v)) = n 1 n 2 n 3 i 1 =0 i 2 =0 i 3 =0 P i1,i 2,i 3 B i1,n 1 (S x (u, v))b i2,n 2 (S y (u, v))b i3,n 3 (S z (u, v)), (3) which amounts to the computation of products of terms in the form of B i1,n 1 (S x (u, v)). If B i1,n 1 is a polynomial (Bézier) function and Q j1,j 2 = (qj x 1,j 2, q y j 1,j 2, qj z 1,j 2 ), then: B i1,n 1 (S x (u, v)) = = ( ) n1 i 1 ( ) n1 m 1 i 1 S x (u, v) i 1 (1 S x (u, v)) n 1 i 1 m 2 j 1 =0 j 2 =0 m 1 1 qj x 1,j 2 B j1,m 1 (u)b j2,m 2 (v) m 2 j 1 =0 j 2 =0 i 1 1 i 1 qj x 1,j 2 B j1,m 1 (u)b j2,m 2 (v) n, (4) or merely products and summations of Bézier or B-spline basis functions. See [1] for more on the computation of products and summations of splines. Interesting enough, if T is a B-spline trivariate, S cannot cross knot lines in T or otherwise S must be divided along the knot lines of T into smaller, not necessarily rectangular surface patches. Further, those new patches must be again divided into rectangular patches, a feasible process that is unfortunately far more difficult and that also affects the regularity and continuity of the tiles. Hence, herein we limit ourselves to tiles that cross no knot lines in T. Having the ability to compute T (S) for both polygonal and surface tiles, we consider periodic tiles in 3D that pave the domain of T (c x c y c z ) times. See also Figure 1. A tile is considered periodic if

(d) Figure 1 : A simple example of a tile S with three cylindrical surfaces in the shape of a 3D cross paved (4 4 4) times in the domain of the given trivariate T. presents the result when mapping just the control points of the surfaces in the cross resulting in a piecewise C 1 geometry (shown embedded in the transparent trivariate) whereas (d) shows the precise smooth composition result of T (S) (note one tile is highlighted in cyan). the shapes of the openings (holes) in the tile on the xmin, ymin, zmin boundaries match the shapes of the openings in the tile on the xmax, ymax, zmax boundaries, respectively. If the given tile is either closed or open and periodic, a watertight model can be formed. If the matched openings offer a smooth transition or even higher continuity (and T is sufficiently continuous), a smooth periodically constructed model will form. In the next section, the power of this modeling constructor is fully revealed and demonstrated. 3 Results and Examples A modeling constructor based on FFD can be powerful. It enables the fabrication of geometry that is very difficult to construct in alternative ways. Figure 2 shows a polygonal tile of over 1000 polygons paved (4 4 20) times in the domain of a B-spline trivariate in the shape of a duck. The duck was provided as a sweep surface and converted into a trivariate using volumetric Boolean sum over six faces, four around the sweep surface and two near the head and the tail. The domain of the same duck is paved, in Figure 3, with B-spline surfaces tiles, only to be using precise surface-trivariate composition computation, following Equation (3). Six bilinear B-spline surfaces defined this hollowed tile. The result of the composition is shown in Figure 3 whereas Figure 3 presents a similar result when the surfaces of the tile are first converted to polygons while only the vertices of the polygons are mapped through T. Note the silhouettes near the belly area, in Figure 3, that are clearly C 1 discontinuous where they should have been smooth, at common boundaries between two different tiles. We seek viable models which means they should be watertight. If each tile is watertight and closed, the result will be watertight but consisting of numerous disjoint parts. If the tiles are periodic (and possibly smoothly periodic) between (xmin, ymin, zmin ) and (xmax, ymax, zmax ), the interior will be watertight but we still need to close boundary openings along the boundary of T. This closure is simple to achieve - every tile that is a boundary tile in some direction, in the pavement of the trivariate s domain, will be clipped and sealed with the plane of that boundary, possibly using a Boolean set operation. Figure 3 (d) shows a watertight porous model that resulted from applying this boundary clipping operation to the model in Figure 3. In Figure 4, we pave 3D twisted tubes in a domain of a trivariate in the shape of a knot. The knot surface was created as a regular sweep of a circular cross section along a 3D knot curve. Then, volumetric Boolean sum was again used to convert the sweep surface to the trivariate that is shown in Figure 4. The tile in Figure 4 consists of four bicubic helical B-spline surfaces, constructed using algebraic sum [9] between

Figure 2 : A polygonal 3D cross is tiled (4 4 20) times in a B-spline trivariate of orders (3 3 4) and lengths (6 5 17) in the shape of a duck, resulting in (note one tile is highlighted in cyan). (d) Figure 3 : Six bilinear B-spline surfaces form the tile in that paves the domain of a trivariate in the shape of a duck. presents the smooth and precise surface-trivar composition. In, the tile is converted to polygons and vertices are mapped through the trivariate, resulting in C 1 discontinuities (note the belly area). Note the interior of the resulting surface is exposed, in magenta, in and. (d) shows the result of the boundary clipping, creating a watertight model. See also Figure 6 (left). a quarter of a helix curve and a circle. In this example, we pave the tiles mostly in one direction - along the axis of the knot trivariate. The tile (smoothly) shifts between the four boundary openings, bottom to top, creating the twisting effect, in the C 1 continuous final result shown in Figures 4 and (d). Figures 4 (e) to (h) shows the same trivariate paved using different resolutions, in all three axes. The complexity of the final model depends on the resolution of the pavements but also on the complexity of the individual tile. Figure 5 shows an example where a fairly complex tile is exploited. The tile, in Figure 5, is paving the domain of a torus trivariate in Figure 5 and Figure 5, using two different pavement s resolutions. Finally, and as a proof for the viability of the constructed models and their watertightness, Figure 6 presents two of the presented examples 3D-printed using additive manufacturing. 4 Conclusions In this work, we have presented a modeling constructor for creating complex, porous, geometry, exploiting FFD techniques. If the input geometry is precise in the form of B-spline surfaces, the output will be precise as well, to within machine precision, also in the form of B-spline surface. However, the output B-spline will be of higher degrees due to the composition operations. For example, the bilinear B-spline surfaces in the tile of the duck example of Figure 3 are mapped to new surfaces of orders (6 6) and mesh size of (21, 6) and the helical bicubic surfaces (of mesh size (10 9)) in the tiles of the knot example of Figure 4 are mapped to new surfaces of orders (28 28) and mesh size of (109, 163). While fairly high orders, all computations in the presented examples took from seconds to dozens of seconds to complete, in practice, and with no observed instability or inaccuracy. In this work, we have presented constructors using tiles that are either polygonal or spline based. The

(e) (f ) (g) (d) (h) Figure 4 : A tile consisting of four B-spline helical-looking surfaces is paved (1 1 47) times in the domain of a B-spline trivariate of orders (4 4 4) and lengths (4 4 50) in the shape of a knot, resulting in (note one tile is highlighted in cyan). (d) shows a different view of the same final result, embedded in the transparent knot trivariate. (e) to (h) present different results using different resolutions of pavements, with one tile highlighted in cyan. Figure 5 : A fairly complex polygonal periodic tile consisting of around 20k polygons in is paving the domain of a torus trivariate using two different resolutions in and. See also Figure 6. same concepts can be employed for tiles that formed out of curves, having a set of curves as the result of a curve-trivariate compositions. Alternatively, the tiles can consist of trimmed surfaces, where only the tensor product B-spline surfaces undergo through the mapping T and the trimming information is simply copied as is. Finally, the input tile can also be a trivariate, resulting in a porous trivariate model, using trivariatetrivariate composition. The presented geometry construction scheme can be further refined and improved in other directions. Attributes like colors or texture can be mapped to the resulting geometry where the attributes specifications can either be local, coming from the tile and repeated for all tiles, or be global as a specification over the

Figure 6 : A 3D printed porous duck (left) from Figure 3 and a porous torus (right) from Figure 5. Printing courtesy of Stratasys. trivariate itself. Herein, the same tile was used throughout the pavement of a trivariate, one can select each tile out of a (predetermined or created on the fly) random (set of) tile, resulting in a randomly looking porous geometry. 5 Acknowledgments This research was supported by the ISRAEL SCIENCE FOUNDATION (grant No.278/13). References [1] C OHEN, E., R IESENFELD, R., AND E LBER, G. Geometric modeling with splines: an introduction. 2001. AK Peters, Ltd., Massachusetts, USA, 2001. [2] C OQUILLART, S. Extended free-form deformation: a sculpturing tool for 3d geometric modeling. In Proceedings of the 17th Annual Conference on Computer Graphics and Interactive Techniques (Aug. 1990), vol. 24, ACM Press, pp. 187 196. [3] C OQUILLART, S., AND JANCNE, P. Animated free-form deformation: an interactive animation technique. In Proceedings of the 18th Annual Conference on Computer Graphics and Interactive Techniques (July 1991), vol. 25, ACM Press, pp. 23 26. [4] D E ROSE, T. D., G OLDMAN, R. N., H AGEN, H., AND M ANN, S. Functional composition algorithms via blossoming. ACM Trans. Graph. 12, 2 (Apr. 1993), 113 135. [5] E LBER, G. Geometric texture modeling. IEEE CG&A 25 (July-August 2005), 66 76. [6] E LLENS, M. S., AND C OHEN, E. An approach to c 1 and c0 feature lines. Mathematical Methods for Curves and Surfaces (1995), 121 132. [7] G RIESSMAIR, J., AND P URGATHOFER, W. Deformation of solids with trivariate b-splines. In Eurograpghic 89 (1989), pp. 137 148. [8] M AC C RACKEN, R., AND J OY, K. I. Free-form deformations with lattices of arbitrary topology. In Proceedings of the 23rd Annual Conference on Computer Graphics and Interactive Techniques (1996), ACM Press, pp. 181 188. [9] P IEGL, L., AND T ILLER, W. The nurbs book. 1997. [10] S CHEIN, S., AND E LBER, G. Discontinuous free form deformations. In Proceedings of Pacific Graphics 2004 (October 2004), pp. 227 236. [11] S EDERBERG, T. W., AND PARRY, S. R. Free-form deformation of solid geometric models. Computer Graphics 20 (Aug 1986), 151 160.