3
$\begingroup$

I'm searching for a way to create whorled leaves/branches around parent branches that are beveled curves (curve to mesh with profile curve circle). The approach shown generates strange results with the instances twisting. I think I understand why but don't know a solution that allows a) the leaves to be radially arrayed without twisting and b) allows the angle from the branch to be adjustable by a factor of the spline length.

enter image description here enter image description here

$\endgroup$
4
  • $\begingroup$ just a dumb question: do you want a solution or an explanation? if first: just do the instancing before curve to mesh $\endgroup$
    – Chris
    Commented May 24, 2022 at 6:59
  • $\begingroup$ Chris. Instancing before curve to mesh produces only 1 instance per curve point which is not the 'point'. This is part of a larger project to place branches as well as leaves on the surface of other branches via the 3 phyllo taxis types - single, opposite, whorled. Instancing before the curve to mesh would place leaves and smaller branches inside parent branches. A solution or an explanation would be very much appreciated. $\endgroup$
    – LGood
    Commented May 24, 2022 at 15:34
  • $\begingroup$ Something along these lines? $\endgroup$
    – Robin Betts
    Commented May 24, 2022 at 17:42
  • $\begingroup$ Robin - yes The opposite leaves solution works and was a big step forward for me - thank you. but there are issues with this. 1) it does not work work with multiple curve instances as the Sample Curve node turns all instances into a single field of points. 2) the leaves are not instanced on the stem but on the spline which will be a problem in some cases with small leaves on larger branches. 3) there doesn't seem to be a way to change the leaf angle from the stem as a factor of the parent spline length - leaves on the tips are typically at smaller angle from the stem than lower down. $\endgroup$
    – LGood
    Commented May 24, 2022 at 19:41

1 Answer 1

2
$\begingroup$

I have the following suggestion for you:

enter image description here

enter image description here

However, I still want to leave some of your homework to you, so I'll only outline my suggestion very roughly:

  1. First I create a simple curve, and save the factor with the node Capture Attribute. This should first influence the radius, and later the scaling and the rotation. I bent the value for the radius here additionally with the node Float Curve and the node Map Range in such a way that it corresponds to some extent to the needed form.

    enter image description here

  2. Then I instantiate a polygon at the points of the curve. Since you wanted to position the individual leaves with a certain distance to the stem, this seems to me to be a workable solution.

    enter image description here

  3. In the next step I instantiate the leaves and use the node Float Curve again, but this time to influence the rotation upwards depending on the curve factor on the one hand, and to change the scaling of the leaves on the other hand. As a basis for the rotation, I use the tangents that were previously supplied by Curve to Points.

    enter image description here

$\endgroup$
1
  • $\begingroup$ Great - thank you for your time and excellent response. I had tried something similar but got hung up on the fact that euler rotations were lost once 'realized instances' was used. I will study this and try and implement into the larger algorithm with phyllotaxis rotation, noise applied to the stem etc. $\endgroup$
    – LGood
    Commented May 27, 2022 at 15:37

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .