g a nurbs curve through a set of N-dimensional points is not the same as cubic interpolation of a linear data-set.
It's certainly possible to fit a nurbs curve through a set of point with a one-x-one-y constraint, but Rhino does not have such a fitter in the SDK, so it needs to be written from scratch.
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
1:
{0} N=5
{1} N=6
and a tree 2:
{0;0} N=1
{0;1} N=1
...
{0;18} N=1
{1;0} N=1
{1;1} N=1
...
{1;19} N=1
I want to basically modify Tree 1 in order to get
{0;0} N=5
{0;1} N=5
...
{0;18} N=5
{1;0} N=6
{1;1} N=6
...
{1;19} N=6
which is the Tree 1 with the structure of Tree 2 and the items of Tree 1 {0} branch populated at each {0;*} branch of Tree 2 and the items of Tree 1 {1} branch populated at each {1;*} branch of Tree 2.
…
ee 3)
{5}
0 15
{6}
0 16
And I want to place points at every possible combination of these coordinates, treating Tree 1 as X coordinates, Tree 2 as Y coordinates, and Tree 3 as Z coordinates. Also, I would like the list of points to be a tree with paths corresponding to the coordinates. Wouldn't it be nice if I could plug these trees into a Point XYZ, with a new "branch cross reference" method, and get the following result?
{0:3:5}
0 {10.0, 13.0, 15.0}
{0:3:6}
0 {10.0, 13.0, 16.0}
{0:4:5}
0 {10.0, 14.0, 15.0}
{0:4:6}
0 {10.0, 14.0, 16.0}
{1:3:5}
0 {11.0, 13.0, 15.0}
{1:3:6}
0 {11.0, 13.0, 16.0}
{1:4:5}
0 {11.0, 14.0, 15.0}
{1:4:6}
0 {11.0, 14.0, 16.0}
{2:3:5}
0 {12.0, 13.0, 15.0}
{2:3:6}
0 {12.0, 13.0, 16.0}
{2:4:5}
0 {12.0, 14.0, 15.0}
{2:4:6}
0 {12.0, 14.0, 16.0}
In this form of cross referencing, every combination of individual branches from the different lists is used as separate input, and the output for each combination is put onto a branch in the result whose path is the concatenation of the input branch paths used.…
Added by Andy Edwards at 7:03pm on November 3, 2009
identical knots on end ends of the curve, so the knot vector will look something like:
0,0,0,1,2,2,2
So one at each end and one in the middle.
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
Added by David Rutten at 3:47am on January 7, 2013
etc...}
the function just output numbers in the necessary syntax for the replace component.
in the image, there is a duplicate component so i think that the output function is:
{0} five times, {1} five times, {2} five times, {etc...}
The S input in the replace component its a series of integers (i think 0 to 35 in the image, 36 elements = the length of the list):
0, 1, 2, 3, 4, 5, ..., 35
Also R input its exactly 36 elements.
The replace component re-order the branches like this:
take the s={0} element and put it on r={0}, then
take the s={1} element and put it on r={0}, then
take the s={2} element and put it on r={0}, then
take the s={3} element and put it on r={0}, then
take the s={4} element and put it on r={0}, then
take the s={5} element and put it on r={1}, then
take the s={6} element and put it on r={1}, and so on...
i hope it helps...…
a follow up question... how do I wrap a list onto itself at a certain frequency?
i.e. I want the list {1;2;3;4;5;6;7;8;9}
to become {1,4,7; 2,6,8; 3,6,9} wrapped every 3rd item
Added by Joshua Jordan at 5:30pm on November 17, 2012