MARC FORNES & THEVERYMANY™

PRACTICING AT THE INTERSECTION OF ART + ARCHITECTURE ^ COMPUTATION

061228_MF | Flat Quad Panels on Nurbs Surfaces

Speculation onto temporary structures within low budget…
Problematic: descriptive geometry of complex curvature with flat panels…
Test protocol: plot within specific sequence (even numbers) flat planes, look at neighbors nearest points, and describe components via nurbs crv and planar srf…
Parameters: density, sequences, components…
Challenge: connexions has to be addressed as tolerance…
In process…




Tips’n tricks: very similar start as David Rutten code plotting flat planes onto nurbs surfaces…

Call WhoFramedTheSurface()
Sub WhoFramedTheSurface()
Dim idSurface : idSurface = Rhino.GetObject(“Surface to frame”, 8, True, True)
If IsNull(idSurface) Then Exit Sub

Dim intCount : intCount = Rhino.GetInteger(“Number of iterations per direction”, 20, 2)
If IsNull(intCount) Then Exit Sub

Dim uDomain : uDomain = Rhino.SurfaceDomain(idSurface, 0)
Dim vDomain : vDomain = Rhino.SurfaceDomain(idSurface, 1)
Dim uStep : uStep = (uDomain(1) – uDomain(0)) / intCount
Dim vStep : vStep = (vDomain(1) – vDomain(0)) / intCount

Dim u, v
Dim pt
Dim srfFrame

Call Rhino.EnableRedraw(False)
For u = uDomain(0) To uDomain(1) Step uStep
For v = vdomain(0) To vDomain(1) Step vStep
pt = Rhino.EvaluateSurface(idSurface, Array(u, v))

If Rhino.Distance(pt, Rhino.BrepClosestPoint(idSurface, pt)(0)) < 0.1 Then
srfFrame = Rhino.SurfaceFrame(idSurface, Array(u, v))
Call Rhino.AddPlaneSurface(srfFrame(0), _
Rhino.PointAdd(srfFrame(0), srfFrame(1)), _
Rhino.PointAdd(srfFrame(0), srfFrame(2)))
End If
Next
Next
Call Rhino.EnableRedraw(True)
End Sub

Enjoy and custom…

Marc

Advertisements