Grasshopper

algorithmic modeling for Rhino

Distort curve according to the position of another curve

Hi,

I am trying to do something like this :

 

where when curve A expand/scaled, it will not intersect with curve B but will distort itself according to curve B like the dotted line.

I tried to do it with extracting the points on the curve and calculate the distance between them and if the value fall below a level it will move the point but i am struggling to get the specific point to move and to move it randomly.

I would like to seek for some advice cuz i havn't got a clue how I can achieve it or anyone of u know if there is already such thing available?

Many thanks.

 

Views: 1783

Replies to This Discussion

hi danny,

want to ask is the function "A/B" = ÷ ?

cuz i cannot find such function icon, and is feeding to Ln and Vec2Pt, i guess it should b a pt instead of a number?

thanks.

Yes

If you are having trouble locating a particular component you can double click on the canvas and type Keywords to find a list of possibilities. This even extends itself to A/.

 

thanks, i guess is the different version, so i couldn't get A/B by typing it on the canvas cuz division icon on mine is ÷

i m sorry, this query is getting a bit long.

The A input of "Ln" & "Vec2pt" is asking for a point input but from the definition, the A input is fed directly from the R output of the A/B which is a number and when i connect A/B to Ln and Vec2pt I got an error and the box turned red.

did i miss something?!

Data types for the Math components changed in v0.8x now you can use numbers, points, vectors, colours etc in all math components. In 0.6x they were only meant for numbers.

In this case the Mass Addition divided by the List length is getting the average Point from the P output of Divide Curve. The shift List component is removing the start point which is repeated at the end. (Technically the List length should come off of the shift list to be correct) BTW there is also an Average component

I diverge. What you want to do is find the centroid of the Curve. This can be done with the either the Area Component found on the Surfaces Tab under Analysis, or In this case as the curve is a circle the Center Component.

This will give you the point you need for the remainder of the definition.

 

thank u very much for your patient and the detail explanation, can't do it without your help.

Well done Systemik, I like it.

Oops you are right about the  list length component. Average component, doh I never thought about using it, much better.

By the way, I used this method to get curve centroid because it doesnt give the same results as the Area component, even with a large sample of points. I never really thought about why, but I always preffered the average method results. (Edit: probably because it works on non planar curves)

 

Oh and thanks for explaining how to make my definition work on earlier versions of GH, and much better that I would have done.

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service