Grasshopper

algorithmic modeling for Rhino

I have a conic surface that I created in Rhino using the loft command. I want to create a surface texture that looks like a bunch of hairs leaning on the surface. The end result should be similar to the following image of a hut. 


I do not have experience using kangaroo to simulate forces, but I have made a test using multiple random components on a flat surface to fake the effect I'm going for. See image below. 

The main issue I'm having is that the original file used for my test surface used box morph and the variable pipe command. Box morph is a bit touchy on a curved surface and it is not as elegant as I would like it to be (ie. I want all the hair diameters to be perfectly circular and uniform in size). Variable pipe also does not align the base of the hair with the existing surface, which means I have to offset the surface and then trim the excess of my pipe.....leading to heavy code and the file crashing. 

So I'm trying to rebuild the "hairs" using a new method:

1) Subdivide the surface

2) Find the midpoint of each surface and then create a straight line that is perpendicular

3) Move a point along the on the straight line (between the start and end points) in the z direction, and then create a nurbs curve using this point and the start and end points 

4) create a circle at the base of each crv, and then two more circles: one at the point in the middle point (I think I set it to .9) and the end of the curve

5) The problem: Now I am trying to sweep along these three circles and the nurbs curve to create a bent hair/pipe that is flush with the conic surface, but it does not work.

If someone can help that would be amazing. I've included my original surface test file and my new file where I am rebuilding using the sweep command. Below is a drawing of what I'm trying to achieve. 

Views: 3480

Attachments:

Replies to This Discussion

Nevermind, I am acting too quick. If I offset the surfaces outwards it figures things out. For some reason I always avoid this and go for an inward offset. Thanks again for the help! 

I don't understand what you're doing and see no reason the grid is required to have the "hairs" poke through?  Just move the surface normal lines "down" slightly, using the negative normal vectors, and their lofted bases will start below the conical surface, eh?

Actually, just move the 'EvalSrf' base point down below the surface slightly, everything else comes with it.  Much faster without using 'Pull' base circle to surface.  Ah, but as expected, hairs on the edges are not culled as before, so now that must be done explicitly.  Still more for you to do!  I'm taking a walk.

Random lengths and bends as a fraction of length (0.6 To 1.0) included.

Attachments:

Thank you, I'll havec to modify my code to match this. 

Do you know if there is anyway for me to counter act the bald spot on the seam? Even a brute force one in Rhino. ..I wonder if I can just make a small surface that covers the seam and use my script on that...then just boolean union.. 

I already said that I'm not seeing the same problem in my code and I can't see your code, so...?  Did you try my last one (SrfStudy_2017Mar18e.gh) with your trimmed surface?

Frankly, I'm done on this, at least for now.

Sorry about that, I didn't realize. I think I found the issue anways, but I ended up spinning the seams to the same centre point so it looks intentional. Thanks for all your help and nice render :D

Hey Joseph,

I realize you've helped me a ton with this already, but I have a quick question. I am wondering how I could approach offsetting these hairs into solid objects using grasshopper rather than rhino. I know that grasshopper needs curves to loft but I dont understand how to do this with a revolved surface?

Any help appreciated.

Don't know what you mean by "offsetting"?  'Cap Holes' will turn the hairs and the revolved surface into "Closed Brep" solid objects.  That wouldn't work when using 'Pull' on the base circle but works fine now using the "penetration method".

It's then possible to 'Solid Union' the base cone and the hairs into a single "Closed Brep"!  'SUnion' is slow, though, and will probably fail when the count is increased.

Attachments:

Hard to explain, I want my final model to look like the following image. The issue I'm facing is that there are too many tangent edges or things rhino doesnt like and so it will not boolean union all at once. it will boolean union in segments, but i dont have the time to do a dozen hairs at a time. 

rhino file (heavy): https://www.dropbox.com/s/1sqgj9orxssu2gt/SrfStudy%20v9_sa6.3dm?dl=0

Attachments:

sorry a reply did not post. i was trying to offset in grasshopper in order to try and solve my problem of trying to boolean union all of these closed objects. 

i am trying to produce a closed object to 3d print .....blast...

Unable to examine code right now.  Did you look at my 'SUnion' code?

Yes, but it is just capping the objects, I actually want to retain the existing shapes to create a hut like structure like the image above.

RSS

About

Translate

Search

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service