bandini Posted July 18, 2010 Share Posted July 18, 2010 (edited) Anyone know how to make a helix in L-Systems? I can make one using some basic rules (below), but it is always off-axis, pointing in a strange direction. Using: FA A-> +/FA Just looking to make one that goes straight up. Edited July 18, 2010 by bandini Quote Link to comment Share on other sites More sharing options...
Macha Posted July 19, 2010 Share Posted July 19, 2010 (edited) It's very rough hack, but try this as your premise: ^(135)/(13)FA Edited July 19, 2010 by Macha Quote Link to comment Share on other sites More sharing options...
bandini Posted July 19, 2010 Author Share Posted July 19, 2010 It's very rough hack, but try this as your premise: ^(135)/(13)FA Thanks, Macha, but changing the angle value will cause problems. I'm looking for a more generic solution where I can continue to play with angle, spacing, growth, etc. Quote Link to comment Share on other sites More sharing options...
Macha Posted July 19, 2010 Share Posted July 19, 2010 It's trickier than I thought! It's maybe not what you want but the following expression creates a customizable helix, but the problem is that it's presumably (for your purposes) connected wrongly. You could fix that afterwards though I guess. I'll keep digging and see if I come up with something better. I'm sure I did one of those in the past. Premise A A = [&(90)F(2) D]F(0.1)/(410)A Quote Link to comment Share on other sites More sharing options...
Macha Posted July 19, 2010 Share Posted July 19, 2010 screenshot Quote Link to comment Share on other sites More sharing options...
Macha Posted July 20, 2010 Share Posted July 20, 2010 Ok, I had a moment to look at it, and this appears to be exact, with the option of tapering as well: Premise: A(1) Rule: A(s) = +(58)/(4.2)"(4*s)F(s)A(1*s) Quote Link to comment Share on other sites More sharing options...
Macha Posted July 20, 2010 Share Posted July 20, 2010 screenshots Quote Link to comment Share on other sites More sharing options...
bandini Posted July 20, 2010 Author Share Posted July 20, 2010 (edited) Ok, I had a moment to look at it, and this appears to be exact, with the option of tapering as well: Premise: A(1) Rule: A(s) = +(58)/(4.2)"(4*s)F(s)A(1*s) Hey Macha, Thanks for doing that. I don't think its exactly right, though. Look at it from the top view and play with some parameters. Still get's wonky or goes off axis. Someone at work showed me a way to get a helix. I think it is still a bit of a hack, but it definitely works. It uses tropisim to get the spiral pointing the right way: Premise: FA Rule: A = /+FTA Set gravity to -50. I think it still is a bit of a hack though. Would be nice to know what the "correct" way of doing this is. Edited July 20, 2010 by bandini Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.