algorithmic modeling for Rhino
Hi,
I am trying to create a VB .NET button that will allow me to input an object, and recursively translate the object a number of times in the x-axis. I would think this would be easy, but I keep getting errors while writing the code with normal syntax.
------------------BEGIN-------------------
Private Sub RunScript(ByVal ITER As Object, ByVal OBJ As Object, ByRef A As Object)
Dim endobj As New list(Of Object)
Dim k As Int32
For k = 0 To ITER
Dim newOBJ As New Object
newOBJ = OBJ
newOBJ.Transform(transform.Translation(k, 0, 0))
endobj.add(newOBJ)
Next
A = endobj
------------------END-------------------
Thanks in advance
Tags:
Object is a framework class, you typically don't use it unless you have absolutely no idea of what you might get. ITER should be of type Integer, OBJ should probably be of type GeometryBase.
The following code is weird:
Dim newOBJ As New Object
newOBJ = OBJ
There's no point in declaring a new instance of a class if you immediately afterwards assign it a different instance. Because you do not actually make a copy of your OBJ, you keep on transforming the same one over and over.
This is how I'd write it:
Private Sub RunScript(ByVal geometry As GeometryBase, ByVal iterations As Integer, ByRef A As Object)
Dim result As New List(Of GeometryBase)
For k As Int32 = 0 To iterations
Dim duplicate As GeometryBase = geometry.Duplicate()
duplicate.Transform(Transform.Translation(k, 0, 0))
result.Add(duplicate)
Next
A = result
End Sub
--
David Rutten
david@mcneel.com
Poprad, Slovakia
David,
Thank You.
I have created code before that instantiates the new [initial] object within the code, and then when I iterate through the transformation of those objects it automatically creates the duplicate. Which is why I wrote the code that way.
Devin
Welcome to
Grasshopper
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
© 2024 Created by Scott Davidson. Powered by