, but at the lowest level computers only manipulate ones-and-zeros according to exact and unambiguous rules. As a result of this it is actually impossible to generate true random numbers using a computer. Computers use algorithms that create sequences of pseudo random numbers, numbers that appear to be random, but in fact are created by the application of a deterministic algorithm.
One of the major benefits of pseudo random numbers over actual random numbers is that it's easy to reproduce a sequence of numbers. If you generate the first 50 numbers in the pseudo-random sequence with seed=5 they will be exactly the same as when you did it last week. If you want different random numbers, you have to use a different seed. In Grasshopper I thought it important that the same random numbers are always generated, as that minimizes the 'surprise'. However, since the default numbers might not be to your liking, you can always play around with the seed value until you find a pseudo random sequence that suits you.
If you generate 8 random numbers between 1 and 10, you might get a sequence like this:
{5, 8, 2, 4, 2, 7, 3, 10}
The pseudo random number generator guarantees that the spread of the numbers in the sequence is equal everywhere, but only when you generate an infinite amount of numbers. Since every sequence you care to generate in one human lifetime will not be infinite, there will always be some 'clumping' of values. A small stretch along the number line that is somewhat more densely populated by random numbers than the adjacent stretch.
There is also absolutely no guarantee that you won't get the same number more than once. Obviously this is impossible if you were to generate 50 values between 1 and 10 (there are only 10 possible unique numbers), but even if you generate only 2 values between 1 and 10 you might still get the same number twice.
Indeed in my example above the value 2 occurs twice, whereas the value 1 doesn't occur at all. If you want a range of numbers without overlaps, it's better to not use the Random component, but instead generate all the numbers using a Range or Series component and then Jitter the list, thus randomizing the order of the values, but not the values themselves.
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
rder to deal with the contents of the MERO structure (like glass, panels, polycarbonate). That is what the C# does already.
3. Vectors (a la "Umbrella" sticks) in order to place correctly your MERO nodes (the "hexagon" brackets - so to speak). That is what the big C# (the one that I've send to you some time ago) does already.
4. Calculations (lengths, angles) for each node against the other related nodes and the points derived from dividing the MERO square "tubes". For a given node these points are variable (from 2 [when in the "bounds" of mesh] to 6 ["typical" middle point, so to speak].
5. Demo block instances in order to see first hand what GH can actually do (that's WOW stuff: you slide a slider and "several" real-life components are placed in 3d space in real-time, he he).
6. Node connectivity data for the obvious (assembling the MERO on site).
7. Some assembly "simulation" capability (we do this today and this tomorrow ...)
So forget the single carrot (plenty carrots for you soon) for a while and answer to the most critical question: Based on what you've displayed to me (Skype) what is your policy against the MERO node itself?
I mean: we don't deal with a classic MERO ball type here (meaning variable drilling axis per ball). Meaning that the "hexagon" bracket (if I may use the term) IS VARIABLE. Meaning: you need a "module" that can being adapted against "every" possible (logical) angle value? (and compose the bracket?) Or you gonna fabricate the "brackets" on a per node basis?
And what if we had a planar glazing system? (same principle, more expensive, 100 times more WOW).
BTW: The best man in the world to do "similar things" with "hinged" custom aluminum systems (like doing the blue facade that you've displayed to me with some semi structural/structural system) he's a very close friend of mine. He's based in Dubai UAE.…
rder in which these polylines are drawn is not important (correct me if this is not the case).
2. We explode the polylines. This outputs all the line segments and all the endpoints (both groups with duplicates inside them). So we have 204 lines (including duplicates) and 246 points (including duplicates). We flatten both outputs in order to get 2 simple lists.
3. We use [dupPt] to remove all duplicates from the points list. So we get a list of all the nodes with each node contained one time, so we have 108 points.
3a. We can use [pointList] to display the index of each node on screen.
4. For each line segment we find the 2 endpoints and put them together in a list. So we have 204 lists with 2 points each. (We graft the list of lines so that the endpoints of each one will be in a different branch/list)
5. We use [closestPoint] and so for each endpoint we get the index number of the corresponding node. So we have 204 lists with 2 indices each.
6. We get each couple of indices and join them as text with a comma separator. (We flatten the data so that we have a single list with 204 texts)
7. BUT some of these 204 texts are duplicates (because they originate from duplicate lines), so we use [cSet] which returns the unique values from a list. So we end up with a list of 180 texts (one for each unique line). Instead of using [cSet] you could also eliminate duplicate lines using kangaroo's [dupLn] (which is the equivalent of [dupPt] but for lines) before step 4.
Hope it is more clear like this. I am not sure I understand what you mean by "But they are not connected in the order to form the tessellation.". If you still have problems with the definition please explain this a little better.
cheers, Nikos
…
ate):
1) go to: https://github.com/mostaphaRoudsari/ladybug/2) click on "clone or download"/Download ZIP
3) Download and extract the folder wherever you want on your machine
4) Open the folder and open "userObjects"
5) you'll see something like this
6) open Grasshopper/File/Special Folders/User Object Folder
7) Select and delete all Ladybug components
8) Drag all components of the point 5) into the canvas of Grasshopper wherever you want or inside the "User Object Folder"... it is the same thing.
And it should be fine.
Let me know if it works.
Best
Antonello
…
requiredKeys_ input of the "OSM Shapes" component. This is not the source of your problem though, but still I mentioned it in case you solve your issue, and afterwards want to use the "OSM Shapes" component.
The current (Win32Exception): WindowsError is the very same error message that you reported back in February.For some reason, your Windows is not allowing the Gismo "OSM Shapes" component to delete C:\MapWinGIS_installation_folder\gdal-data\osmconf.ini file.
You previously solved it by allowing the full access control to it, so I am not sure why it is not working now.Windows 10 seems to be the most overprotected operating system among other Windows versions, at least judging by the questions people asked so far.
Maybe you can try to turn off all the services which prevent users from changing certain files, like UAC or maybe even your antivirus?
Try this:
1) Close your Grasshopper and Rhino.2) Restart your PC3) When it boots up again, in your Start menu's search box type: "UAC". Click on it, and a new User Account Control Settings window will open. Set the bar on the left to "Never notify".4) Completely turn off your Antivirus.5) Check once again if your access control to the C:\MapWinGIS_installation_folder\gdal-data\osmconf.ini file is still set to the values you previously reported in this post.6) Right-click on "Rhino 5" icon and then choose: "Run as administrator".7) When Rhino boots up, run Grasshopper, and open the newest create_3dbuildings_trees_streets.gh file from here.If none of this helps, maybe you have some other application which deals with access to files on your system? Malware removal application or similar? Try turning it off too.…
Added by djordje to Gismo at 9:10am on April 3, 2017
decided to concentrate my effort today on this problem and manage to come up with a solution !
I will explain it if somebody else is looking for a similar solution.
Finally my only problem was to create an alternating true/false list that inverse at certain index, this what I came up with: I have a list of points and random index , the box and sphere represent true and false, and the blue sphere is the node(index) where I want to see an inversion.
In reality, it was pretty simple, I just didn't know the right modules. (In yellow, it's the most important part of the patch)(Sorry for the spelling mistake)
Here is a diagram of what I did: I created a list going to 1 to [number of lines], here it's 1 to 10, I had node at 3-4 and 7-8. For each node I created a list of 1 repeated [(number of lines)-index] times. Here, 7 (10-3) and 3 (10-7) times.
After grafting everything, I add everything in mass addition module. I had my final list which I checked if it was divisible by two.
It was more of a logic problem than a grasshopper problem.
Here it is the initial shape with what I wanted !
…
re economical with regards to data path growth. The new logic is roughly as follows: First a master input parameter is identified. At the moment, it is the parameter with the longest path length. The amount of paths doesn't matter. Input parameters that have Tree access are never Master parameters (unless absolutely no other parameter is available) and List parameters have lower priority than Item parameters. In future versions it will probably become possible to assign a custom input as master. This however is an expert user function and I want to post-pone adding it as long as possible in order for the default behaviour to be tested and improved. If all input parameters are list parameters, output paths are no longer grown. I.e. The Reverse List component should output the exact same data tree structure as it gets. The master parameter might not be the parameter with the most branches. It is therefore possible that we run out of defined paths before the component is done computing. If this happens, the last index of the last available path in the master parameter is incremented on each iteration: Input A = {0;0} {0;1} {0;2} Input B = {0;1;0} Output C = {0;1;0} {0;1;1} {0;1;2} A has a maximum path length of 2, B has a maximum path length of 3, B is therefore the Master parameter. However we need three unique output paths since A provides three paths, so {0;1;1} and {0;1;2} are made up on the spot. It is also no longer possible to apply 'Shortest List' and 'Cross Reference' options to components. Old components that had these options set still work like they did before, but that should be considered legacy support. Instead, there are now three components in the Sets tab, List panel called 'Cross Reference', 'Short List', 'Long List' that basically provide the old functionality with a lot of additional flexibility and options.
…
e curve and uses the resulting surface/subdivisions to:
1. Smooth wall surface, varied via the Image Mapper
2. Segmented wall surface, varied via the Image Mapper
3. Populate the surface with spheres (with or without the "wall" surface)
4. Ribbed wall surface (Horizontal and / or Vertical)
5. Protrussions from the surface, driven by Image Sampler
6. Wall of Tubes, driven by Image Sampler
7. Gridded Web Surface
The options have to be enabled/disabled to achieve various results, but the idea is that this script permits a variety of looks, all in one script. See attachments at bottom.
I think this is a decent example file showing a variety of things that can be done using the Image Sampler Component in Grasshopper. This is a working version, so I am sure there are a lot better ways to achieve some of these effects. Hopefully, this will help some of you out and / or inspire some ew idea.
In the script, there is a User Object I downloaded from digitalsubstance. It is a self contained point attractor cluster, super cool, super fun. Link to the site is below.
http://digitalsubstance.wordpress.com/subcode/
If there is interest, I will update this post with an annotated version.
My blog, still in progress
http://thatsnotarchitecture.tumblr.com/
…
trying to develop it for my own project.
http://www.grasshopper3d.com/forum/topics/shortest-walk-tapered-branching-script?xg_source=activity&id=2985220%3ATopic%3A1450323&page=2#comments
On this page, he shared few 3D coral difinitions and especially interested in first and second one.
First one( bunny like 3D coral) - posted on February 2, 2016 at 9:43pm
Second one( sofa like 3D coral) - posted on February 6, 2016 at 3:16am
I followed these instructions, succeeded to build Tetgen, placed the built files in C drive directory and tried to run the definition. Then some WindowsError came out as follows which I don't know how to fix.
My working environment is;
OS is Windows 7 Ultimate 64 bit.
Rhino is version 5, 64 bit.
Grashoppper is version 0.9.0076, the latest version at this moment.
It would be great if I can have some help advice / comment.
I appreciate for your attention.
…
will cover one of the latest and greatest topics from recent development. Although the webinars will be happening each Thursday around 12:30 Eastern Standard Time, registration will give you indefinite access to recordings of the webinars so that you can reference them when the time comes to apply them on your work!
The grand list of workshops is as follows:
1 - High-Quality Graphics, Visualizations and Animations with LadybugMarch 9th, 12:30 PM EST
2 - Brute Force Parametric Energy Modeling and Sensitivity Analyses in Early DesignMarch 23rd, 12:30 PM EST
3 - Wintertime Indoor Thermal Comfort Visualization - Eliminating Perimeter Heat with High-Performing FacadesMarch 30th, 12:30 PM EST
4 - Summertime Indoor Thermal Comfort Visualization - Setpoints and Blinds Up with Right Shade + ControlsApril 6th, 12:30 PM EST
5 - Condensation Modeling with HoneybeeApril 20th, 12:30 PM EST
6 - Urban Heat Island Modeling with DragonflyApril 27th, 12:30 PM EST
7 - Expanding Your Climate Data Sources with DragonflyMay 4th, 12:30 PM EST
8 - CFD Simulation with OpenFOAM, Rhino/Grasshopper and Butterfly (Advanced)May 11th, 12:30 PM EST
This series will have a similar arc as the one in the Fall, starting with basic topics and moving to advanced ones as we progress down the list. The first one will be accessible to all users regardless of prior experience and all of the workshops listed here will cover topics for which there is currently no tutorial video content. Hope that you can attend!…