The following script was written during the computation workshop in StuPA 4 (Architectural Design Studio IV) @ UPH. The script written in rhinoscript and expected become a tool that can support highrise massing design exploration -help student to calculate the area of highrise building’s floor of high rise massing.
Option Explicit
'Script written by <Dani Hermawan - www.formologix.com>
'Script version Wednesday, January 19, 2011 2:37:25 PM
Call Main()
Sub Main()
Dim arrObj : arrObj=Rhino.GetObject("Pick surface to contour", 8 + 16)
Dim arrStartPoint : arrStartPoint = Rhino.GetPoint("Base point of center line")
Dim arrEndPoint : arrEndPoint = Rhino.GetPoint("End point of center line")
Dim dblHeight : dblHeight = Rhino.RealBox ("Enter the typical floor height", 3.2 )
Dim arrCrvs : arrCrvs = Rhino.AddSrfContourCrvs(arrObj, arrStartPoint, arrEndPoint, dblHeight)
If Not IsArray(arrCrvs) Then Exit Sub
Dim crv
Dim intCount
intCount = 0
Dim arrCrvCent
Dim textCrv
Dim arrBox
Dim crvArea
Dim crvLength
Dim strMessage
For Each crv In arrCrvs
If rhino.IsCurveClosed(crv) Then
arrBox = Rhino.BoundingBox(crv)
arrCrvCent = Rhino.CurveAreaCentroid(crv)
crvArea = Rhino.CurveArea(crv)
strMessage= "Floor #" & intCount
textCrv = Rhino.AddText(strMessage & ", " & crvArea(0) & " sqm" , arrBox(2), 1)
crvLength = Rhino.CurveLength(crv)
End If
intCount = intCount + 1
Next
End Sub
The rhinoscript compatible with Rhino SR 6 or above.