Branch Address in the form {0;1;2;3;4;5;6;7;8;9;.......;N}
Try Grafting the input (I) Create Path by right clicking on it and selecting graft from the context menu…
an control the shape. Let's call them inner and outer circle for a given parameter t (on the curve). The inner and outer must differ a bit with regard the t value (see 4). So we have actually 6 t parameters and 3*2 circles (or some other shape).
3. Sweep1 the outer circles and join the brep with regions due to the "first" and "last" circle > resulting a closed brep (variable pipe can also cut the mustard). Do the same with the inner circles.
4. Since outer and inner circles differ a bit (like "shifting" 2 breps "along" the same curve, so to speak)... if you subtract the inner from the outer brep you'll get the closed brep (with a "bottom") bottle that you are after.…
ant to find all paths where exactly two items are the same like in branch {1}. How can I solve this in VB? Is there an easy "search in list" class or do I have to iterate over all items by myself ??
Regards Alex…
in the desired order.
0 = 0
1 = 1
2 = 6
3 = 7
4 = 8
5 = 9
6 = 12
7 = 13
8 = 2
9 = 3
10 = 4
11 = 5
12 = 10
13 = 11
Where the first number is the index and the second number is the actual sorting key. Then you sort these keys while sorting your curves in parallel using the A input of the Sort component.
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
E.g.:
0 2 (A) = 2
1 2+4 (A+B) = 6 (AB)
2 6+4 (AB+C) = 10 (ABC)
3 10+6 (ABC+D) = 16 (ABCD)
etc.
Into a new list numbers:
{2,6,10,16, etc} that adding the previous number with the next number.
Thanks,
daniel
…
EC
1. Between hours 1:00 to 24:002. Current document units is in Meters3. Conversion to Meters will be applied = 1.0004. [1 of 7] Writing simulation parameters...5. [2 of 6] No context surfaces...6. [3 of 6] Writing geometry...7. [4 of 6] Writing materials and constructions...8. [5 of 7] Writing schedules...9. [6 of 7] Writing loads and ideal air system...10. [7 of 7] Writing outputs...11. ...... idf file is successfully written to : c:\ladybug\Freeformtower_IDF\EnergyPlus\Freeformtower_IDF.idf12. 13. Analysis is running!...14. ......
Done! Read below for errors and warnings:
15. 16. Program Version,EnergyPlus-Windows-64 8.1.0.009, YMD=2015.04.04 23:39,IDD_Version 8.1.0.00917. 18. ************* IDF Context for following error/warning message:19. 20. ************* Note -- lines truncated at 300 characters, if necessary...21. 22. ************* 577 Zone,23. 24. ************* Only last 1 lines before error line shown.....25. 26. ************* 578 Freeformbuilding27. 28. ** Warning ** IP: IDF line~578 Comma being inserted after:" Freeformbuilding" in Object=ZONE29. 30. ** Severe ** Out of range value Numeric Field#5 (Type), value=0.00000, range={>=1 and <=1}, in ZONE=FREEFORMBUILDING31. 32. ************* IDF Context for following error/warning message:33. 34. ************* Note -- lines truncated at 300 characters, if necessary...35. 36. ************* 586 BuildingSurface:Detailed,7341.
…
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.
…