++ Make point arrays
++ Make polylines with the point arrays
++ Set the polylines as output A

++ Repeat for output B

step01_02

www.woojsung.com

++ Repeat for output C

++ Repeat for output D

++ Output : 4 sets of triangular polylines

step01_03

www.woojsung.com

STEP02 . COMPONENT
++ To avoid data matching confliction, start with 2
triangular polylines instead of one
++ Connect rhino curves with GH curve object
++ Connect Graft Tree with GH curve object
•• Note the different data structures
•• By Grafting, every item is now in the same
hierarchy instead of being a member of 1 dimensional list, which will eventually give more
control on them

++ Get centroids

++ Draw lines using a Line SDL object

++ To get normal vectors at each centroid, attach
SrfCP and EvalCrv object
•• SrfCP is to get a surface uv point which is the
closest one from a certain point. Usually, the
point does not necessarily have to be on the
surface. However in our case, since the centroid
is on the surface itself, SrfCP object simply
converts the coordinate system of the centroid
from world into UV.

step02_01

www.woojsung.com

++ Explode surfaces to get edge lengths
++ Convert edge curves into lines to use open nurbs
length method
++ Attach VB script object to get the longest edge
lengths

++ Line lengths (Height of the components) are to be
75% of the lengths of the longest edges

++ Evaluate(L=0.2) the lines to get reference points
for move

++ Move the base surfaces to the reference points
weâ&#x20AC;&#x2122;ve just got

step02_02

www.woojsung.com

++ Scale the surfaces by 0.2

++ Get vertices out of the scaled surfaces : explode
and then retrieve vertices using cull patterns (T-FF/F-T-F/F-F-T)

++ Repeat for the lower surfaces

++ Make 4 point curves with degree 3, not periodical
++ Connect point objects(parameter) to Crv object
following the order

1st
2nd
3rd
4th

step02_03

www.woojsung.com

++ Connect points to the Crv object
•• Note the point connecting order

04

03

02

01

++ Fails to draw curves
•• Note the different data structures

++ To make them have the identical data structure,
attach Graft tree objects as shown

++ Repeat for the other curves

step02_04

www.woojsung.com

++ Attach offset objects to the curves

++ Offset distances are 10% of the longest edge
lengths

++ Set offset base planes

++ Repeat for the rest of curves
++ Bottom curves are done

step02_05

www.woojsung.com

++ To get side curves, move the base surfaces along
with center lines to the points at L=1, L=0.6, L=0.4
and L=0.2

++ Set scale factors : 0.2/0.2/0.3/1.0

++ Explode the surfaces and retrieve vertices

++ Repeat for the rest of surfaces

step02_06

www.woojsung.com

++ Get curves through points

++ Repeat for the other curves
++ Side curves are done

++ To get the middle curves, move the base surfaces
to the points at L=0.4 and L=0.2
++ Set the scale factors : 0.3 / 1.0

++ Explode the lower surfaces and retrieve vertices

step02_07

www.woojsung.com

++ Explode the upper surfaces and evaluate edges at
L=0.5 to get midpoints

++ Retrieve points

++ Make curves through 3 points with degree 2

++ Repeat for the other curves
++ Done with the middle curves

step02_08

www.woojsung.com

++ Get top curves

++ Move the base surfaces at L=1.0 and scale down
by 0.2

++ Retrieve edges
++ Top curves are done

++ Now, we need some more curves to build bottom
surfaces
++ First, we need curves shown in the figure. To avoid
confusion, extract those curves using receiver
objects

step02_09

www.woojsung.com

++ Second, we need center points shown in the
figure, so get it from eval object from the previous
step

++ Also, we need the base surfaces to get vertices out
of them

++ Align them to make it clear

++ Get mid points out of curves(L=0.5)

step02_10

www.woojsung.com

++ Get vertices out of the base surfaces

++ Make interpolate curves through 3 points
++ Not working

++ Compare data structures

++ To make them have identical data structure, attach some Graft tree objects to the corresponding
points

step02_11

www.woojsung.com

++ Complete interpolate curves

++ Split curves using shatter object
â&#x20AC;˘â&#x20AC;˘ Note how to get t values

++ Repeat shattering

++ Shatter the interpolate curves

step02_12

www.woojsung.com

++ Get t values using CrvCP object
•• CrvCP is basically same with SrfCp, but it works
on curves