Hi Evan,

sorry, I forgot to mention you also have to enable the LIST option for
the A and B input parameters.

--
David Rutten
[email protected]
Robert McNeel & Associates



On Feb 20, 5:03 am, evanc <[email protected]> wrote:
> Thanks for the help... but I'm getting errors from the VB component -
>
> "Public member 'Count' on type 'On3dPoint' not found."
>
> any ideas? I'm totally new to VB script... until today I had assumed
> it was the same as rhinoscript. but apparently not...
>
> i'm on a school computer that won't allow me to install the latest GH,
> so i'm using 0.5.0093, don't know if that's the issue, but I'll try
> again at home with v99...
>
> On Feb 19, 3:00 pm, David Rutten <[email protected]> wrote:
>
> > Hi Evan,
>
> > If you want to do this through a script, I suggest the following:
>
> > - Create a VB Script component and give it 3 inputs. A (no object
> > hint, or maybe On3dPoint), B (same as A) and N (hint = Integer)
> > - Rename the output to V (you cannot have an input and an output with
> > the same name)
> > - Inside the script component, you'll see the following script layout:
>
> >   Sub RunScript(ByVal A As List(Of On3dPoint), ByVal B As List(Of
> > On3dPoint), ByVal N As Integer)
> >     ''' <your code>
>
> >     ''' </your code>
> >   End Sub
>
> > - In between the <your code> tags, write the following:
>
> >     Dim pts As New List(Of On3dPoint)
>
> >     For i As Integer = 0 To A.Count - 1
> >       If ((i Mod N) = 0) Then
> >         pts.Add(A(i))
> >       Else
> >         pts.Add(B(i))
> >       End If
> >     Next
> >     V = pts
>
> > This is an example of how to build a new list from elements of two
> > input lists.
>
> > I'll also add some special components that will make this kind of data
> > management a lot easier. But those obviously won't be available until
> > the next release.
>
> > --
> > David Rutten
> > [email protected]
> > Robert McNeel & Associates
>
> > On Feb 19, 8:15 pm, evanc <[email protected]> wrote:
>
> > > So, I'm trying to populate a surface with apertures based on the
> > > surface UV curves.
>
> > > here's a quick "manual" 
> > > example:http://farm4.static.flickr.com/3497/3292633785_d327ccf8e1.jpg
>
> > > So, what i've done is extracted 3 isocurves from the surface, turned
> > > on the control points and drawn new curves through the points.... in
> > > this case, 3 point on the middle curve, 1 on the next curve over, 3 on
> > > the middle curve... etc etc.
>
> > > so i've got a grasshopper def started, it takes two curves, lofts
> > > between them, and arrays a grid of UV points on this surface.
>
> > > the first thing i need to do is separate those points into just the V
> > > curves.... which i've done by splitting the list (over and over
> > > again.... a loop funtion would be nice, but i'm not sure how to do
> > > this). It's not clean, but it works and i now have a data stream for
> > > every V curve of the surface...
>
> > > so, like in the image above, i have three curves, and i want to draw 2
> > > new curves based on their control points...
>
> > > existing curves:
> > > curve1point1            curve2point1            curve3point1
> > > curve1point2            curve2point2            curve3point2
> > > curve1point3            curve2point3            curve3point3
> > > curve1point4            curve2point4            curve3point4
> > > curve1point5            curve2point5            curve3point5
> > > curve1point6            curve2point6            curve3point6
> > > curve1point7            curve2point7            curve3point7
> > > curve1point8            curve2point8            curve3point8
> > > curve1point9            curve2point9            curve3point9
> > > curve1point10           curve2point10           curve3point10
> > > curve1point11           curve2point11           curve3point11
> > > curve1point12           curve2point12           curve3point12
> > > curve1point13           curve2point13           curve3point13
> > > curve1point14           curve2point14           curve3point14
>
> > > and i want the new curves to be drawn like this:
> > > curve2point1            curve2point1
> > > curve2point2            curve2point2
> > > curve2point3            curve2point3
> > > curve1point4            curve3point4
> > > curve2point5            curve2point5
> > > curve2point6            curve2point6
> > > curve2point7            curve2point7
> > > curve1point8            curve3point8
> > > curve2point9            curve2point9
> > > curve2point10           curve2point10
> > > curve2point11           curve2point11
> > > curve1point12           curve3point12
> > > curve2point13           curve2point13
> > > curve2point14           curve2point14
>
> > > so it should be pretty easy i think, but i might need a script module
> > > and i dont know how to do that.... it's simply a matter of replacing
> > > every Nth item in one array with every Nth item in another array....
>
> > > what's the best way to handle this?

Reply via email to