Integer = 0 To 9
val *= 2
lst.Add(val)
Next
Since val is a ValueType, when we assign it to the list we actually put a copy of val into the list. Thus, the list contains the following memory layout:
[0] = 2
[1] = 4
[2] = 8
[3] = 16
[4] = 32
[5] = 64
[6] = 128
[7] = 256
[8] = 512
[9] = 1024
Now let's assume we do the same, but with OnLines:
Dim ln As New OnLine(A, B)
Dim lst As New List(Of OnLine)
For i As Integer = 0 To 9
ln.Transform(xform)
lst.Add(ln)
Next
When we declare ln on line 1, it is assigned an address in memory, say "24 Bell Ave." Then we modify that one line over and over, and keep on adding the same address to lst. Thus, the memory layout of lst is now:
[0] = "24 Bell Ave."
[1] = "24 Bell Ave."
[2] = "24 Bell Ave."
[3] = "24 Bell Ave."
[4] = "24 Bell Ave."
[5] = "24 Bell Ave."
[6] = "24 Bell Ave."
[7] = "24 Bell Ave."
[8] = "24 Bell Ave."
[9] = "24 Bell Ave."
To do this properly, we need to create a unique line for every element in lst:
Dim lst As New List(Of OnLine)
For i As Integer = 0 To 9
Dim ln As New OnLine(A, B)
ln.Transform(xform)
lst.Add(ln)
Next
Now, ln is constructed not just once, but whenever the loop runs. And every time it is constructed, a new piece of memory is reserved for it and a new address is created. So now the list memory layout is:
[0] = "24 Bell Ave."
[1] = "12 Pike St."
[2] = "377 The Pines"
[3] = "3670 Woodland Park Ave."
[4] = "99 Zoo Ln."
[5] = "13a District Rd."
[6] = "2 Penny Lane"
[7] = "10 Broadway"
[8] = "225 Franklin Ave."
[9] = "420 Paper St."
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
Added by David Rutten at 6:26am on September 9, 2010
he same order of the list. for example i have a list with 4 different lenght of curve like this:
0= 10
1= 12
2= 8 (minimum)
3= 17 (maximum)
and wont to make a ranking that the longest curve gets the value 4 and the smallest the value 1, like this
0= 2
1= 3
2= 1
3= 4
i tried the sort list function, but it dosn`t work
can anybody help me!
thx a lot…
h i get 5 points (kinkos), Lets say 0,1,2,3,4,...But all segments are of different sizes,..that is, I know the distance between 0 & 1 is 2 units,Distance btw 1 & 2 = 3 unitsDistance btw 2 & 3 = 1 unitDistance btw 3 & 4 = 4units,..How do i do this division,. Could anyone help please,..Thank you…
ep is to understan the logics of what you want to do, in your case, build 4 point surfaces (u also need to know the right direction to build the surfaces). Then you can write an hipotetic list (by hand in a paper) of what you want. In your case the list was (0, 1, 3, 2) (2, 3, 5, 4) (4, 5, 7, 6), etc... if you can imagine building 2 lists, each one with the sequences (0, 2, 4, 6, etcc) and (1, 3, 5, 7, etc..) then you can manage with shift and graft to finally have four lists. A( 0 1 2 3 ...) B (1 3 5 etc..) C(3 5 7 etc..) D (2 4 6 etc..). And to achieve the 2 first lists, you need to get the odd and the pair numbers. The cull pattern does that amazingy well. With a pattern True-False you get de pair numbers, and with the False-True pattern you get de odd numbers.
Hope it was clear enough…
Added by Pep Tornabell at 5:32am on November 19, 2009
the paths.
Structure one (paths = 2)
{1;0;0;0;0}(N=10)
{2;0;0;0;0}(N=10)
Structure two (paths = 2)
{1;0;0;0}(N=10)
{2;0;0;0}(N=10)
If i merge the two lists i don't get a structure with 2 paths:
Structure result af merging (2 paths)
{1}(N=20)
{2}(N=20)
as i had expected, but instead a structure with 4 paths because of the difference in amount of zeroes:
Structure result af merging (4 paths)
{1;0;0;0;0}(N=10)
{2;0;0;0;0}(N=10)
{1;0;0;0}(N=10)
{2;0;0;0}(N=10)
The amount of zeroes changes all the time when working on the definition, so what im asking is if there some way to adress paths with * number of zeroes behind.…
middle index, and choose that point with List Item. If even, for example 4 points (0, 1, 2, 3), you'll get 2, so subtract one and choose those two indices, 1 and 2. I only had a few minutes to play with this, so it isn't a fully-baked solution, but it should take you a little further.…