ems in the same way. Lofting was particularly difficult, you had to have a separate loft component for every lofted surface that you wanted to generate because the component would/could only see one large list of inputs. Then came along the data structures in GH v0.6 which allowed for the segregation of multiple input sets.
If you go to Section 8: The Garden of Forking Paths of the Grasshopper Primer 2nd Edition you will find the image above describing the storing of data.
Here you will notice a similarity between the path {0;0;0;0}(N=6) and the pathmapper Mask {A;B;C;D}(i). A is a placeholder for all of the first Branch structures (in this case just 0). B is a place holder for all the second branch structures possibly either 0, 1 or 2 in this case. And so forth.
(i) is a place holder for the index of N. If you think of it like a for loop the i plays the same role. For the example {A;B;C;D}(i) --> {i\3}
{0;0;0;0}(0) --> {0\3} = {0}
{0;0;0;0}(1) --> {1\3} = {0}
{0;0;0;0}(2) --> {2\3} = {0}
{0;0;0;0}(3) --> {3\3} = {1}
{0;0;0;0}(4) --> {4\3} = {1}
{0;0;0;0}(5) --> {5\3} = {1}
{0;0;0;1}(0) --> {0\3} = {0}
{0;0;0;1}(1) --> {1\3} = {0}
{0;0;0;1}(2) --> {2\3} = {0}
{0;0;0;1}(3) --> {3\3} = {1}
{0;0;0;1}(4) --> {4\3} = {1}
{0;0;0;1}(5) --> {5\3} = {1}
{0;0;0;1}(6) --> {6\3} = {2}
{0;0;0;1}(7) --> {7\3} = {2}
{0;0;0;1}(8) --> {8\3} = {2}
...
{0;2;1;1}(8) --> {8\3} = {2}
I'm not entirely sure why you want to do this particular exercise but it goes some way towards describing the process.
The reason for the tidy up: every time the data stream passes through a component that influences the path structure it adds a branch. This can get very unwieldy if you let it go to far. some times I've ended up with structures like {0;0;1;0;0;0;3;0;0;0;14}(N=1) and by remapping the structure to {A;B;C} you get {0;0;1}(N=15) and is much neater to deal with.
If you ever need to see what the structure is there is a component called Param Viewer on the first Tab Param>Special Icon is a tree. It has two modes text and visual double click to switch between the two.
Have a look at this example of three scenarios in three situations to see how the data structure changes depending on what components are doing.
…
{1;1;4}{1;1;5}{1;2;0}{1;2;1}{1;2;2}{1;2;3}{1;2;4}{1;2;5}{1;3;0}{1;3;1}{1;3;2}{1;3;3}{1;3;4}{1;3;5}
etc...
and I want to format as a text it so it replaces the innermost branch with a letter so {0;0;1} would read A-0-1. I am able to replace all the symbols using replace text but am no sure if there's a way to convert a number to a letter.…
Added by Ryan Whitby at 12:40pm on February 3, 2015
Writing simulation parameters...3. [2 of 8] No context surfaces...4. [3 of 8] Writing geometry...5. unsupported operand type(s) for +: 'str' and 'list'6. Failed to write Pelle_aperture000 to idf file7. unsupported operand type(s) for +: 'str' and 'list'8. Failed to write Pelle_aperture001 to idf file9. unsupported operand type(s) for +: 'str' and 'list'10. Failed to write Pelle_aperture002 to idf file11. [4 of 8] Writing Electric Load Center - Generator specifications ...12. [5 of 8] Writing materials and constructions...13. [6 of 8] Writing schedules...14. [7 of 8] Writing loads and ideal air system...15. [8 of 8] Writing outputs...16. ...... idf file is successfully written to : C:\Users\Personal\Desktop\TESI\x001\THOR\EnergyPlus\THOR.idf17. 18. Set runEnergyPlus to True!
or this
0. Current document units is in Meters1. Conversion to Meters will be applied = 1.0002. [1 of 8] Writing simulation parameters...3. [2 of 8] No context surfaces...4. [3 of 8] Writing geometry...5. Runtime error (MissingMemberException): 'hb_EPFenSurface' object has no attribute 'blindsMaterial'6. Traceback:line 1567, in main, "<string>"line 2134, in script
i think that i've same problem with my windows...any suggestion???
Thanks for all…
0, 5, 10, 15, 20
1, 6, 11, 16, 21
2, 7, 12, 17, 22
3, 8, 13, 18, 23
4, 9, 14, 19, 24
and if i'm here is because i'm not able... :)
can you help me?
thank you
…
byte-accuracy red, green, blue channels) = 27 bytes. More likely 28 bytes as colours are probably stored as 32-bit integers, allowing for an unused alpha channel.
28 * 800,000 equals roughly 22 megabytes, which is way down from 9 gigabytes. That's a 400 fold memory overhead, which is pretty hefty.
Grasshopper stores points as instances of classes, so on 64-bit systems it actually takes 64+64+3*8 = 152 bytes per point*, which adds up to 122MB, still way less than 9GB. It would be interesting to know where all the memory goes...
* Grasshopper points also store reference data, in case they come from the Rhino document. This data will not exist, but even so it will require 64-bits of storage.…
Added by David Rutten at 4:13pm on December 11, 2014