am trying to make a pattern distribution on a surface which scales objects by a certain percentage depending on the row, ie, i have a 3x4 surface division, i want the first 3 objects to be scaled by 1.0 second row by 1.5 , third row by 2, etc.
I understand the basic scaling "by object" but can't figure how I would do for row-based scaling. I have tried (and failed) to follow danny boyles' http://www.grasshopper3d.com/forum/topics/dividing-list-into-sub-lists-according-to-multiple?commentId=2985220%3AComment%3A471376 post into dividing the list into branches but don't know whether this is the correct way and also i couldn't figure out where I should insert this into my diagram.
Any tips on what i should be looking at would be very welcome.
Thanks.
Klaus
…
the past 6 months).
You can download this release from the usual location. The internal version number for this release is 0.9.0068.
Fixes:
All expressions inside parameters now use 'x' as the variable instead of the nickname. Old files should be converted automatically.
GetDataTree method calls with mismatched parameter access would display the wrong error message, this is fixed.
Menu items on submenus that are disabled due to document states could not be triggered by shortcuts or buttons, this is fixed.
Lofting would fail with zero-length start and end profiles, this is fixed (they are now treated as points).
When lofting failed due to invalid profile curves, the error message was useless, this is fixed.
Under rare conditions null entries in persistent data would cause the Manage X Collection window to crash, this is fixed.
Mouse Leave events on the Expression Editor window would sometimes cause a crash due to null timers, this is fixed.
Offsetting curves would sometimes result in superfluous control points, this is fixed.
Trim Solid would fail if one of the trimming shapes did not intersect the base shape, this is fixed.
Solid Difference would fail if one of the trimming shapes did not intersect the base shape, this is fixed.
The annealing history curve in the Galapagos window would sometimes crash on repaint, this is fixed.
Having a (partially) transparent background colour for a Text Panel would crash the panel editor window, this is fixed.
The Evaluate component would crash when editing an expression with coincident variable names, this is fixed.
--
David Rutten
david@mcneel.com…
Added by David Rutten at 9:07am on January 26, 2014
1. When the weights are too large, the circles intersect, and the diagram is corrupt:
(to see the circles enable preview on the circle component)
(to manipulate with the scale insert a multiply component and a slider, as shown above)
2. If you adjust the weights so that they don't intersect, you'll get a reasonable result:
3. To enhance the solution, lower the "precision factor" (here set from 1.0 to 0.25) which controls the number of divisions of the circles:
Keep in mind that the definition is just a sketch, a proof of concept rather...
JJ…
only remotely works with Rhino 4 Vray 1.0 and Rhino 5 64-bit + Vray 1.5. Something about the naming convention in Rhino 5 32-bit + Vray 1.5 is not registering properly with the way I am naming/calling materials.
2) I got it to work for all generated materials, but only sporadically. There's no rhyme or reason to when or why it works. Here's a link to the results:
http://vimeo.com/34728433
3) There's obviously an issue with the material index numbers in the document. See the attached definition for added notes (renders previous definition obsolete). Index numbers don't seem to match up between my components and your component, yet I get positive results. Also, after purging the document many times during testing, material index numbers can get up into the tens of thousands. I see performance degradation eventually as well.
Anyway, thanks for any help you could give me on this. I'm really hoping to get this code tightened up so I can use the tools in a production environment and not have to worry about it being unreliable...
Marc…
subsequently able to retain a higher level of flexibility.
In Rhino however a rectangle is defined as only a plane and two numeric intervals (one for x, one for y). The possible solutions to this would be:
Extend the Rhino SDK Rectangle3d type to include constant radius fillet corners. This can be done, but is a lot of work and will break the SDK.
Create a new type in Grasshopper which is smarter than Rectangle3d. This complicates developing for Grasshopper because now you have to keep two different types in mind whereas before only one was needed.
Remove the Fillet Radius input from Rectangle components. I like this solution because it results in cleaner, simpler code, but it does mean people may need to use two components where before one was sufficient.
Make the Rectangle type smart enough so that it can recognise filleted rectangles and undo the filleting. This is something I can do right now for Grasshopper 1.0 and it in all likelihood would not break actual existing files even though it is technically a behavioural change.
I'll try and get (4) done for Rhino 6 SR1, I might decide to do (3) for Grasshopper 2.0. I sincerely doubt that (1) will ever get done and I dislike (2).…
Added by David Rutten at 4:38am on November 6, 2017
a value.
In this case it will be between position 86 and 87 where the x value of a point jumps from 2.32... to -6.04... (see inside red rectangle @ attached image).
Idea so far is:
1) Decompose the list into x,y,z
2) get just the x values in one list
3) compare all values in a kind loop.
4) if value difference is more that let's say 1.0 - get the index
5) split list at that index.
My question: How to do that without looping?
I would be very thankful is someone could give me a hint.
Best, Boris.
…
Added by Boris Baehre at 5:33am on January 28, 2016
ase of paneling. Since paneling needs it to be one single srf, so I need this loft to be one single srf.
2. However, the cross-like crv is made up with multiple segments, (I could have rebuilt it, but it will give me too many control points) when I type "what" command in rhino, it tells me ,
Closed polycurve with 16 curve segments.
3. So, I need to make this cross-like crv into one NURBS crv. what I am doing now is, 'tween curve' between a standard circle and the cross-like crv.
Problems I am facing:
1: When I set "tween curve" f value to 1.0 and bake this curve, 'what' command, it tells me 16 segments. I am confused, it should be one segment, am I wrong?
2: When I set "tween curve" f value to 0.9--->bake--->what command, it tells me Closed NURBS curve. This is what I am looking for, except I want f value to be 1.
Attached is the .gh file.
Thank you for your help.
…
.5 (50%) will make everything look half as big, a zoom factor of 3.0 (300%) will make everything look 3 times bigger.
The code I use in the Variable Parameter tip looks like this:
Dim box As RectangleF = Attributes.Bounds Dim pt As New PointF(box.X + 0.5F * box.Width, _
box.Top + 0.5F * box.Height) Dim view As New GH_NamedView("zui_zoom", pt, _
10.0F, GH_NamedViewType.center)
view.SetToViewport(canvas, 1200)
I use a fixed zoom factor of 10.0 but you'll need to compute a variable zoom level each time. Basically, the zoom level you want it the factor you need to multiply the Attributes.Bounds with in order to make them as big as the viewport.ScreenPort So if the ScreenPort is 950 pixels wide and 720 pixels high and the Bounds of the attributes are 55 pixels wide and 75 pixels high, the zoom factor to make the width and height fit exactly would be:
Dim zoomW As Single = Convert.ToSingle(950/55)
Dim zoomH As Single = Convert.ToSingle(720/75)
Dim zoom As Single = Math.Min(zoomW, zoomH)
Where zoom is the lowest of the two. I hope my math isn't wrong, I didn't test this and only just woke up... But that's the basic idea.
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
Added by David Rutten at 2:18am on February 16, 2012