0 1 1 634323583720800210 0 8 4 true true 9cbb7116-fb0a-492e-a5e8-fb4333c92db1 100;150;0;0 100;0;120;0 Shaded flower optimize 02.ghx 634322844635107586 0 -1950 -2784 1.25 0 25 8ec86459-bf01-4409-baee-174d0d2b13d0 Data Data Data Represents a collection of generic data e9403f76-70fe-4357-b657-6e8a17f9b770 false true true 2 cb85a069-b45d-4ab1-88e5-467e6a17ef9a d739e127-749c-4c72-b98c-7a3f255e7156 976 2461 50 20 976 2461 50 20 1001.464 2471.565 false 17b7152b-d30d-4d50-b9ef-c9fe25576fc2 XY Plane XY Plane XY World XY plane. bc49c423-670e-4132-8d4e-a810b9ce9b7a false true true longest_list 1335 2368 70 38 1359 2370 24 34 1371 2387 false Origin O Origin of plane 38b2a05c-bc54-4ffc-a08e-b06b71b4447d true true true 1 7ff4a71b-0912-40e9-bdae-cb6c2bf579dd 1 1337 2370 19 34 1337 2370 19 34 1348 2387 false 0 0 0 Plane P World XY plane de99e066-f35e-488e-a195-d403cfba12e8 true true true 0 1386 2370 17 34 1386 2370 17 34 1396 2387 false 807b86e3-be8d-4970-92b5-f8cdcb45b06b Circle Circle Cir Create a circle defined by base plane and radius. 86bd5cdf-f2ae-49b3-8464-1e4d35fc3e6c true true true longest_list 1924 2373 70 44 1947 2375 24 40 1959 2395 false Plane P Base plane of circle 9fdc2740-4a2c-49eb-8194-5d0f4773aa1e true true true 1 de99e066-f35e-488e-a195-d403cfba12e8 1 1926 2375 18 20 1926 2375 18 20 1936.5 2385 false 0 0 0 1 0 0 0 1 0 Radius R Radius of circle 679daf3a-9593-4c78-8bda-56c60056854a false true true 1 0c441c2c-4587-45be-9816-ebc1c5645cf5 1 1926 2395 18 20 1926 2395 18 20 1936.5 2405 false 1 Circle C Resulting circle 1b29e7d5-b049-4375-8b6e-f19773016c9c true true true 0 1974 2375 18 40 1974 2375 18 40 1984.5 2395 false 59e0b89a-e487-49f8-bab8-b5bab16be14c Panel Panel A panel for custom notes and String values 9de865fc-f7ba-421d-91bb-3982572535a6 false true true 0 0.06 true true true 1 0 false 255;0;0;0 255;255;250;90 1705 2337 50 20 1705 2337 50 20 1705.73 2337.315 false b464fccb-50e7-41bd-9789-8438db9bea9f Angle Angle Angle Compute the angle between two vectors. af0a474a-edec-4a2d-ba04-573962081429 false true true longest_list 1729 2399 69 64 1751 2401 24 60 1763 2431 false Vector A A First vector 89c00e08-f064-46b7-992d-65adfe77417f false true true 1 6a1772a5-1985-4348-a471-13606022895d 1731 2401 17 20 1731 2401 17 20 1741 2411 false Vector B B Second vector a1e6754f-699e-4e7a-a253-9a53d0c45642 false true true 1 e9403f76-70fe-4357-b657-6e8a17f9b770 1731 2421 17 20 1731 2421 17 20 1741 2431 false Plane P Optional plane for 2D angle 7c011a68-c5c8-45a0-8cce-da535223c097 true true true 0 1731 2441 17 20 1731 2441 17 20 1741 2451 false Angle A Angle (in radians) between vectors 48319e2e-87a2-4f5e-ba22-af0331c482fb false true true 0 1778 2401 18 30 1778 2401 18 30 1788.5 2416 false Reflex R Reflex angle (in radians) between vectors 3f630754-87c5-486b-b973-92943c0fee6d false true true 0 1778 2431 18 30 1778 2431 18 30 1788.5 2446 false 11bbd48b-bb0a-4f1b-8167-fa297590390d End Points End Points End Extract the end points of a curve. 26ab79db-207c-45e1-bde7-aea3fdc2e284 false true true longest_list 1120 2354 69 47 1143 2356 24 43 1155 2378 false Curve C Curve to evaluate e5742c0a-cdfa-4e59-9fd5-de0da6dd5439 true true true 1 e9403f76-70fe-4357-b657-6e8a17f9b770 1122 2356 18 43 1122 2356 18 43 1132.5 2377.5 false Start S Curve start point 52c41765-8932-4a1b-b358-5853e57fe669 true true true 0 1170 2356 17 21 1170 2356 17 21 1180 2366.75 false End E Curve end point e3eb1821-a78e-49f3-8737-bb23ec62c003 true true true 0 1170 2377 17 22 1170 2377 17 22 1180 2388.25 false cacb2c64-61b5-46db-825d-c61d5d09cc08 Sort List Sort List Sort Sort a list of numeric keys. c1724e41-7d2f-41d9-90d1-c916105ad7f2 false true true longest_list 1833 2435 68 49 1855 2437 24 45 1867 2460 false 2 3e8ca6be-fda8-4aaf-b5c0-3c54c8bb7312 Keys List of sortable keys 1 true false 8ec86459-bf01-4409-baee-174d0d2b13d0 Values A Optional list of values to sort synchronously 1 true true Keys K List of sortable keys 510cbd2a-b261-4094-b513-5aed9f5f08a6 false true true 1 1 48319e2e-87a2-4f5e-ba22-af0331c482fb 1835 2437 17 22 1835 2437 17 22 1845 2448.25 false Values A A Optional list of values to sort synchronously 0da58b42-dc0b-471a-b3f9-5f93e5bd93a2 true true true 1 1 e9403f76-70fe-4357-b657-6e8a17f9b770 1835 2459 17 23 1835 2459 17 23 1845 2470.75 false List K Sorted keys adbfc6b4-e387-490f-9738-f158ce459d5c false true true 0 1882 2437 17 22 1882 2437 17 22 1892 2448.25 false Values A A Synchronous values in A 3722e5c9-a0fa-4af7-a4e6-a32dee43b17a true false true 0 1882 2459 17 23 1882 2459 17 23 1892 2470.75 false 3cd2949b-4ea8-4ffb-a70c-5c380f9f46ea Plane Components Plane Components pComp Decompose a plane into its component parts. f03141c7-cd7a-4b74-9898-55d01b8fbad5 false true true longest_list 1532 2486 70 84 1554 2488 24 80 1566 2528 false Plane P Plane to decompose d440cfab-459d-4f0d-aaba-5ef8ae116525 true true true 1 de99e066-f35e-488e-a195-d403cfba12e8 1 1534 2488 17 80 1534 2488 17 80 1544 2528 false 0 0 0 1 0 0 0 1 0 Origin O Origin point 06fe81f8-e9aa-426f-ac4d-5fd41d071a38 true true true 0 1581 2488 19 20 1581 2488 19 20 1592 2498 false X-Axis X X-Axis vector 6a1772a5-1985-4348-a471-13606022895d false true true 0 1581 2508 19 20 1581 2508 19 20 1592 2518 false Y-Axis Y Y-Axis vector d978fa9d-e2aa-4dc8-8f96-c6c932d8cacf false true true 0 1581 2528 19 20 1581 2528 19 20 1592 2538 false Z-Axis Z Z-Axis vector 11278367-6c52-4585-a285-c09b6577a230 false true true 0 1581 2548 19 20 1581 2548 19 20 1592 2558 false 3e8ca6be-fda8-4aaf-b5c0-3c54c8bb7312 Number Number Num Represents a collection of double precision floating point numbers 0c441c2c-4587-45be-9816-ebc1c5645cf5 false true true 1 9de865fc-f7ba-421d-91bb-3982572535a6 1803 2337 50 20 1803 2337 50 20 1828.631 2347.515 false 285ddd8a-5398-4a3e-b3c2-361025711a51 List Item List Item Item Retrieve a specific item from a list. b0172d50-2e41-4a6f-bbba-3456e49dfd19 false true true longest_list 1224 2355 72 64 1250 2357 24 60 1262 2387 false List L Base list 1a0ea435-584c-413a-83c8-4d164f8c170d true true true 1 1 52c41765-8932-4a1b-b358-5853e57fe669 1226 2357 21 20 1226 2357 21 20 1238 2367 false Index i Item index b2a13f42-bd1d-42c1-ad01-5d0c0b61950b false true true 0 1 1226 2377 21 20 1226 2377 21 20 1238 2387 false 0 Wrap W Wrap index to list bounds c904c0fe-04ce-4d21-81cf-0f9f080f784e false true true 0 1 false 1226 2397 21 20 1226 2397 21 20 1238 2407 false false Element E Item at {i'} 7ff4a71b-0912-40e9-bdae-cb6c2bf579dd true true true 0 1277 2357 17 60 1277 2357 17 60 1287 2387 false 59e0b89a-e487-49f8-bab8-b5bab16be14c Panel Panel A panel for custom notes and String values ca1654f3-03f3-470c-becb-a9d36057947e false true true 0 0.025 true true true 1 0 false 255;0;0;0 255;255;250;90 1679 2298 76 20 1679 2298 76 20 1679.779 2298.619 false 3e8ca6be-fda8-4aaf-b5c0-3c54c8bb7312 Number Number Num Represents a collection of double precision floating point numbers b5192d51-3a06-4eca-ba20-468d54be1556 false true true 1 ca1654f3-03f3-470c-becb-a9d36057947e 1803 2297 50 20 1803 2297 50 20 1828.871 2307.819 false 8ec86459-bf01-4409-baee-174d0d2b13d0 Data Data itty bitty r Represents a collection of generic data fd5ce27a-e3ec-4dac-a06c-67d22a098a1c true true true 1 b5192d51-3a06-4eca-ba20-468d54be1556 1922 2304 76 20 1922 2304 76 20 1960.063 2314.36 false 8ec86459-bf01-4409-baee-174d0d2b13d0 Data Data itty bitty r Represents a collection of generic data e4b7f551-3f46-4b23-9413-656db2aad3a5 true true true 1 fd5ce27a-e3ec-4dac-a06c-67d22a098a1c 2513 2436 76 20 2513 2436 76 20 2551.947 2446.932 false 8ec86459-bf01-4409-baee-174d0d2b13d0 Data Data Big Bad R Represents a collection of generic data bdbc91cb-90ef-42a8-ae2b-294d31cb0454 true true true 1 0c441c2c-4587-45be-9816-ebc1c5645cf5 1920 2331 80 20 1920 2331 80 20 1960.133 2341.479 false 6b021f56-b194-4210-b9a1-6cef3b7d0848 Evaluate Length Evaluate Length Eval Evaluate a curve at a certain factor along its length. Length factors can be supplied both in curve units and normalized units. Change the [N] parameter to toggle between the two modes. aed762e4-1020-4548-aa61-b2e8127b34eb true true true longest_list 2514 2475 69 64 2537 2477 24 60 2549 2507 false Curve C Curve to evaluate f0a74d03-41df-4235-95e6-895f27b357a9 true true true 1 3722e5c9-a0fa-4af7-a4e6-a32dee43b17a 2516 2477 18 20 2516 2477 18 20 2526.5 2487 false Length L Length factor for curve evaluation b5ffc3f2-7ef7-4f7d-af57-4495a89069f7 false true true 1 2733145c-6246-46ef-9137-94f0e5d9e4ae 1 2516 2497 18 20 2516 2497 18 20 2526.5 2507 false 0 Normalized N If True, the Length factor is normalized (0.0 ~ 1.0) 008b20fe-480f-4cb4-bb0f-e4059e724afa false true true 0 1 false 2516 2517 18 20 2516 2517 18 20 2526.5 2527 false false Point P Point at the specified length 2f73ae69-ec83-4ec2-b1a1-b90f5ed809fb true true true 0 2564 2477 17 20 2564 2477 17 20 2574 2487 false Tangent T Tangent vector at the specified length ff80bf3f-b8a0-4339-9540-ff258d2d2c09 false true true 0 2564 2497 17 20 2564 2497 17 20 2574 2507 false Parameter t Curve parameter at the specified length 7e076f51-faa8-4867-8646-7cd394131691 false true true 0 2564 2517 17 20 2564 2517 17 20 2574 2527 false 807b86e3-be8d-4970-92b5-f8cdcb45b06b Circle Circle Cir Create a circle defined by base plane and radius. 3cffa594-cf33-40ce-af8b-406dfbd067f0 true true true longest_list 2663 2473 70 44 2686 2475 24 40 2698 2495 false Plane P Base plane of circle 02fc999b-8d04-44fd-911a-32e771123619 true true true 1 2f73ae69-ec83-4ec2-b1a1-b90f5ed809fb 1 2665 2475 18 20 2665 2475 18 20 2675.5 2485 false 0 0 0 1 0 0 0 1 0 Radius R Radius of circle 00067844-3df1-4341-923a-dc988dd2b133 false true true 1 e4b7f551-3f46-4b23-9413-656db2aad3a5 1 2665 2495 18 20 2665 2495 18 20 2675.5 2505 false 1 Circle C Resulting circle 9fd27e0a-e876-4ffd-8bff-58826f62a306 true true true 0 2713 2475 18 40 2713 2475 18 40 2723.5 2495 false 1e9e08fc-c31e-49eb-a36c-90de5e62e5f5 VB Script Dim thetaMin As Double = math.Asin(lilr / BigR) * 2 Dim phiNeg As Double Dim phiPos As Double Dim lengthParams As New DataTree(Of Double) Dim myPath As GH_Path Dim myLineCollection As List(Of Line) Dim i As Integer Dim ii As Integer Dim iiNeg As Integer Dim iiPos As Integer Dim vectorii As Vector3d Dim vectorNeg As Vector3d Dim vectorPos As Vector3d For i = 0 To petalLines.BranchCount - 1 myPath = petalLines.Path(i) For ii = 0 To petalLines.Branch(i).Count - 1 myLineCollection = petalLines.Branch(i) If ii = 0 Then iiNeg = petalLines.Branch(i).Count - 1 iiPos = 1 Else If ii = petalLines.Branch(i).Count - 1 Then iiNeg = petalLines.Branch(i).Count - 2 iiPos = 0 Else iiNeg = ii - 1 iiPos = ii + 1 End If vectorii = petalLines.Branch(i)(ii).Direction vectorNeg = petalLines.Branch(i)(iiNeg).Direction vectorPos = (petalLines.Branch(i)(iiPos).Direction) 'compute the angle between 2 vectors 'uses the form Acos( dot product(V1,V2) / ( LengthV1*LengthV2 ) ) phiNeg = (vectorii.X * vectorNeg.X + vectorii.Y * vectorNeg.Y + vectorii.Z * vectorNeg.Z) / (vectorii.Length * vectorNeg.Length) phiPos = (vectorii.X * vectorPos.X + vectorii.Y * vectorPos.Y + vectorii.Z * vectorPos.Z) / (vectorii.Length * vectorPos.Length) 'If (phiNeg > 1.0) Then phiNeg = 1.0 'If (phiPos > 1.0) Then phiPos = 1.0 phiNeg = math.Acos(phiNeg) phiPos = math.Acos(phiPos) 'print("phiNeg is = " & phiNeg.ToString) 'print("phiPos is = " & phiPos.ToString) If (phiNeg < thetaMin) Or (phiPos < thetaMin) Then If phiNeg < phiPos Then lengthParams.Add(lilr / (math.Sin(phiNeg / 2)), myPath) print("added length based on phiNeg") Else lengthParams.Add(lilr / (math.Sin(phiPos / 2)), myPath) print("added length based on phiPos") End If Else lengthParams.Add(BigR, myPath) print("!") End If Next Next A = lengthParams 0 VB Script VB A VB.NET scriptable component f80c1288-a134-474a-8f72-e00d90747b10 true true true longest_list 2218 2497 132 64 2294 2499 24 60 2306 2529 false 3 84fa917c-1ed8-4db3-8be1-7bdc4a6495a2 Variable x Script Variable x true true 84fa917c-1ed8-4db3-8be1-7bdc4a6495a2 Variable y Script Variable y true true 84fa917c-1ed8-4db3-8be1-7bdc4a6495a2 Variable z Script Variable z 2 true true 2 3ede854e-c753-40eb-84cb-b48008f14fd4 Output Print, Reflect and Error streams true false 8ec86459-bf01-4409-baee-174d0d2b13d0 Result A Output parameter A true false Variable x lilr Script Variable x f452a0f9-b0b5-423f-a52d-7930247f08b8 true true true 1 fd5ce27a-e3ec-4dac-a06c-67d22a098a1c 8e991e99-5fb8-41e1-928d-1bba8fb9f7d7 true true 2220 2499 71 20 2220 2499 71 20 2257 2509 false Variable y BigR Script Variable y a7a5570c-5ea4-4b37-a23d-af5eba8d985a true true true 1 bdbc91cb-90ef-42a8-ae2b-294d31cb0454 8e991e99-5fb8-41e1-928d-1bba8fb9f7d7 true true 2220 2519 71 20 2220 2519 71 20 2257 2529 false Variable z petalLines Script Variable z a8ad17d4-e345-48c4-8c55-517720124504 true true true 2 1 3722e5c9-a0fa-4af7-a4e6-a32dee43b17a f802a8cd-e699-4a94-97ea-83b5406271de true true 2220 2539 71 20 2220 2539 71 20 2257 2549 false Output out Print, Reflect and Error streams 6f930dc5-0c13-4a22-bbfc-913a05e55175 false true true 0 2321 2499 27 30 2321 2499 27 30 2336 2514 false Result A A Output parameter A 2733145c-6246-46ef-9137-94f0e5d9e4ae true true true 0 2321 2529 27 30 2321 2529 27 30 2336 2544 false d5967b9f-e8ee-436b-a8ad-29fdcecf32d5 Curve Curve Crv Represents a collection of 3D Curves cd6943f7-bff6-4d9d-a31c-4062af0ccc8e false true true 0 4 512 2459 50 20 512 2459 50 20 537.4048 2469.932 false 3114c822-0d5f-4446-a92a-e869bcc92aa2 -1 98893e30-e42d-4d37-9592-27273d997b54 -1 b711b7d4-c1bc-4419-867d-3ae941036639 -1 a7b00d9a-83f2-4e26-beb1-acb14cb3c0bb -1 d5967b9f-e8ee-436b-a8ad-29fdcecf32d5 Curve Curve Crv Represents a collection of 3D Curves 9abb42a4-a32f-4f08-b144-74616cb36c39 false true true 0 2 509 2525 50 20 509 2525 50 20 534.6048 2535.612 false 8af8d38b-f25e-498a-897d-9baaf2df7c29 -1 3221a26c-8bed-486d-9d04-c4591506ba3b -1 10a8674b-f4bb-4fdf-a56e-94dc606ecf33 Graft Tree Graft Tree Graft Graft a tree by adding an extra branch for every data item. 43bf8fbe-40a1-4403-841f-4c9f63cb55d0 true true true longest_list 631 2453 68 56 654 2455 24 52 666 2481 false Data D Data to graft 85af179d-634e-4a79-9080-250531b2892d true true true 2 1 cd6943f7-bff6-4d9d-a31c-4062af0ccc8e 633 2455 18 26 633 2455 18 26 643.5 2468 false Strip S Do not create branches for null items 4ea7b159-05ff-4f9b-a865-90cd79f6dc01 false true true 0 1 false 633 2481 18 26 633 2481 18 26 643.5 2494 false false Tree T Graft result 3cf44a46-73e5-4103-a96f-4ad806a8a880 true true true 0 681 2455 16 52 681 2455 16 52 690.5 2481 false 10a8674b-f4bb-4fdf-a56e-94dc606ecf33 Graft Tree Graft Tree Graft Graft a tree by adding an extra branch for every data item. 6b6be68e-6b30-4ca4-a7b7-91e858289c9f true true true longest_list 631 2527 68 56 654 2529 24 52 666 2555 false Data D Data to graft 2455b240-c95e-466f-aab2-4766777cf5f6 true true true 2 1 9abb42a4-a32f-4f08-b144-74616cb36c39 633 2529 18 26 633 2529 18 26 643.5 2542 false Strip S Do not create branches for null items b7250f2e-0c9f-493a-bbe0-cfccc485c26b false true true 0 1 false 633 2555 18 26 633 2555 18 26 643.5 2568 false false Tree T Graft result c6e8dadd-dc6d-404f-881d-bb644fc39fcc true true true 0 681 2529 16 52 681 2529 16 52 690.5 2555 false f9b89a46-bc5d-4f7a-9a6f-134f93ac3af9 Path Mapper Path Mapper Path Mapper Perform lexical operations on data trees. cb85a069-b45d-4ab1-88e5-467e6a17ef9a false true true 2 1 c6e8dadd-dc6d-404f-881d-bb644fc39fcc 1 {A;B} {1} 744.3 2547.2 125 40 750.3 2553.2 113 28 744.3 2547.2 false f9b89a46-bc5d-4f7a-9a6f-134f93ac3af9 Path Mapper Path Mapper Path Mapper Perform lexical operations on data trees. d739e127-749c-4c72-b98c-7a3f255e7156 false true true 2 1 3cf44a46-73e5-4103-a96f-4ad806a8a880 1 {A;B} {0} 744.3 2466.4 125 40 750.3 2472.4 113 28 744.3 2466.4 false 59e0b89a-e487-49f8-bab8-b5bab16be14c Panel Panel A panel for custom notes and String values 4b52ca37-d834-4a2c-9501-ecb91b84ff3f false true true 1 2733145c-6246-46ef-9137-94f0e5d9e4ae Double click to edit panel content… true true true 1 0 false 255;0;0;0 255;255;250;90 2521 2554 380 178 2521 2554 380 178 2521.991 2554.218 false