Thanks to the growth of computational power and the development of new productiontechnologies, NURBS modeling has become the standard in many fields:Industrial Design, Architecture and, more recently, Engineering.Simplified Complexity is a method for learning NURBS modeling with Rhinoceros®.Born as the synthesis of twenty years of professional experience and teaching,Simplified Complexity consists of a structured knowledge system allowing deepunderstanding of the software. With this method the user can take advantage of Rhinoceros® full modeling potential.The idea behind Simplified Complexity is that even if the software has a clear andintuitive interface, NURBS geometry remains quite complex. In order to become aprofessional user, it is necessary to start from basic geometry knowledge: this willallow to foresee and avoid complexity or, if this is not possible, at least reduce it and optimize it.

Book Details

  • Edited by Giancarlo Di Marco
  • Foreword by Arturo Tedeschi
  • Language: English (The book is available in Italian and Spanish)
  • Paperback:400 pages full color – illustrated
  • First Edition | October 2018
  • ISBN-13: 978-88-95315-45-4
  • Price € 40,00

Buy Now (Click here for shipments to Italy) 


For any questions you can contact us by e-mail info@lepenseur.it

Bookstores, libraries and resellers may get a discount on the book “Simplified Complexity”

Further informations about B2B conditions at following links:

E-mail: info@lepenseur.it






Foreword – Seamless


1_Geometry basics

1.1 Reference systems and coordinates

1.2 Conic curves

1.3 Vector geometry and curve properties

1.4 Differential geometry of curves

1.5 Curvature of a surface

1.6 Interpolation

2_NURBS geometry

2.1 Bézier and spline

2.2 B-Spline

2.3 NURBS curve

2.3.1 Domain and parametric representation

2.3.2 Degree and order

2.3.3 Knot vector

2.3.4 Control points and weight

2.3.5 Edit points

2.3.6 Curve velocity

2.3.7 Curve orientation

2.4 Continuity

2.4.1 Internal continuity

2.4.2 Remarkable curves – the circle

2.4.3 Geometric continuity

3_Rhino Overview

3.1 Reference system in Rhino

3.1.1 Changing the local coordinate system (CPlane)

3.2 Units and tolerance

3.2.1 Absolute tolerance

3.3 Record History

3.4 Drawing curves around a line

4_Curves: interpolation vs. control

4.1 Interpolated curve

4.2 Conic curve

4.3 Control point curve

4.3.1 Degree and deformability

4.3.2 Three practical rules for drawing free-form curves

4.3.3 Tracing an organic sketch

4.4 Tutorial – Construction lines

4.4.1 Preparing the blueprints

4.4.2 Placing the blueprints

4.4.3 Tracing the construction lines

5_Working with curves

5.1 Join and tolerance

5.2 Extend

5.3 Offset

5.3.1 Offset distance and curvature

5.4 Complex connections: blend curves

5.4.1 Geometric continuity settings and editing

5.5 Curve from two views

5.6 Curve boolean

5.7 NURBS curve manipulation

5.7.1 Rebuild curve

5.7.2 Rebuild curve non-uniform

5.7.3 Refit curve

5.7.4 Fair curve

5.7.5 Criteria for the rebuild or refit of a curve

5.7.6 Insert control point

5.7.7 Insert knot

5.7.8 Insert kink

5.7.9 Control points weight

5.7.10 Change degree

5.8 Tutorial – Creating the 3D curves

5.8.1 Create 3D curves

6_NURBS topology

6.1 Rectangular topology

6.1.1 Topology of a sphere

6.2 Orientation of a surface

6.3 Parametric representation of a surface

7_NURBS surfaces

7.1 Deformable plane

7.2 Surface from 3-4 corner points

7.3 Extrusion

7.3.1 Extrusion and continuity

7.4 Revolve

7.4.1 Rail revolve

7.5 Surface from planar curves

7.5.1 Inconsistency

7.6 Surface from edges curves

7.6.1 Deformability

7.7 Loft

7.7.1 Selecting the cross-sections

7.7.2 Style of the loft

7.7.3 Cross-sections options

7.7.4 Twisted loft

7.7.5 Closed cross-sections and torsion

7.8 Sweep1 1657.8.1 Interpolation in Sweep1

7.8.2 Style: Freeform

7.8.3 Style: Roadlike (helical ramps)

7.8.4 Style: Align with surface

7.8.5 Torsion in Sweep1

7.8.6 Complex tubular shapes

7.9 Sweep2

7.9.1 Cross-section in middle position

7.9.2 Sweep2 topology

7.9.3 Add slash and regularity

7.9.4 Rails from surface edges

7.9.5 Significant surfaces with Sweep2

7.9.6 Sweep2 and complexity

7.9.7 Limits of the Sweep2

7.10 Network surface

7.10.1 Tolerance and complexity

7.10.2 Creating the network

7.10.3 Continuity

7.11 Patch

7.11.1 Attractor points

7.11.2 Digital Terrain Modeling

7.12 Heightfield from image

7.12.1 Heightmap

7.12.2 Command description

7.13 Tutorial – Modeling the wheels

8_Working with control points

8.1 NURBS surface manipulation

8.1.1 Deformable sphere

8.1.2 Inserting control points, knots and kinks

8.2 Selecting points

8.3 Setting coordinates

8.4 Smooth deformations

8.5 Free deformations

8.6 Tutorial – Modeling the body of the car

9_Surface analysis

9.1 Parametric directions of a surface

9.1.1 Command _Dir

9.2 Curvature of a surface

9.3 Geometric continuity

9.3.1 Zebra analysis

9.3.2 Environment analysis

10_Curve-surface interaction

10.1 Edge, border and isocurve

10.1.1 Working with edges

10.2 Intersections and sections

10.3 Projections

10.3.1 Project

10.3.2 Pull

10.4 Holes in thick objects

10.5 Projection with minimum deformation

10.6 Managing curves complexity

10.6.1 Rebuild of a curve on surface

10.6.2 Dynamic rebuild/refit

10.7 2D drawings

10.7.1 Make2D

10.7.2 Inclined projections

10.7.3 Sections

10.7.4 3D and perspective sections

11_Working with surfaces

11.1 Trim and split

11.1.1 Preservation of the control structure

11.1.2 Trim and split of a closed surface

11.2 Fillet and chamfer of surfaces

11.3 Surface Offset

11.4 Surface extension

11.5 Complex connections between surfaces

11.5.1 Sweep2

11.5.2 Network surface

11.5.3 Blend surface 11.6 Tutorial – Projections and trim objects

11.6.1 Trim curves

11.6.2 Details

11.6.3 Interiors


12.1 Main deformations

12.2 Flow

12.2.1 Flow along curve

12.2.2 Flow along surface

12.3 Cage 300

12.3.1 Types of lattices

12.3.2 Global and local deformations

12.3.3 How to work with the lattice

12.4 Tutorial – Various edits

13_ Emboss and engraving

13.1 Drawing on surfaces

13.1.1 Curves on surface

13.1.2 Projections

13.1.3 UV curves

13.2 Engraving and embossing

13.2.1 Constant height embossing

13.2.2 Variable height embossing

13.2.3 Tubular embossing

13.2.4 Embossing with blend

13.2.5 Embossing with flow

13.3 Tutorial – Adding details

14_Modeling for production

14.1 Solid modeling

14.1.1 Joining surfaces

14.2 Connections

14.2.1 FilletEdge

14.2.2 BlendSrf

14.2.3 When to round off edges

14.2.4 Connections and complexity

14.3 Solid check

14.3.1 Naked edges

14.4 Mesh geometry

14.4.1 Mesh topology

14.4.2 Production: NURBS  Mesh conversion

14.5 3D printing

14.5.1 Preparing the model for 3D printing

14.6 Cutting

14.6.1 Stereotomy and waffling

14.6.2 Developable surfaces

14.7 CNC milling

14.7.1 Preparing the model for CNC milling

14.7.2 Knots and curve velocity

15_Modeling for visualization

15.1 Render: NURBS  Mesh conversion

15.2 High-resolution and optimization

15.3 Edges rounding

Drawing brazenly

ONO: Designing a revolution

Command Index

Decoded QR codes





Giancarlo Di Marco  is a computational designer with a background in Engineering/Architecture and fine jewelry, specialized in 3D Design, Parametric Design, Digital Manufacturing and BIM. Together with the General Confederation of Italian Industry he has collaborated with several Italian companies as a Sr. Advisor for product and process innovation. As a CAD/BIM specialist he works with Architecture and Engineering studios to implement best practices in design departments. He lives in Mexico City where he founded Studio Giancarlo Di Marco, a design firm offering consulting and training services to companies and professionals, as well as online and classroom courses. Speaker in various international congresses, he is professor of Digital Design, Parametric Design and Digital Fabrication in undergraduate and postgraduate courses.