How can I make e reinforcing bar from a line in Geometry Nodes?
3 Answers
Previously I got a little bit too inspired by Harry's answer, so here's something that better resembles a reinforcement bar - but the topology here is just overlapping geometries, so you won't get any nice merging of the separate surfaces…
Again, I got bored without actually finishing, so there's (conveniently not shown) one rib too much (trivial to fix), no rectangular emboss joining the 'bulges' and small things like that. It seems a 'correct' topology could still be constructed using my previous answer but different $z$ offsetting…
-
1$\begingroup$ whoops checked the zoomed rebar image from Robin, didnt realize the real pattern of the rebar 😅 $\endgroup$– Harry McKenzie ♦Commented Sep 4, 2023 at 14:18
-
1$\begingroup$ @HarryMcKenzie in a way, I think the spiral is harder, because it's continuous, while this pattern here can be separated… $\endgroup$ Commented Sep 4, 2023 at 14:20
-
$\begingroup$ yes agreed. it was also more fun to model hehe, nice smooth minimalist topology u made though! $\endgroup$– Harry McKenzie ♦Commented Sep 4, 2023 at 14:24
-
$\begingroup$ Thanks for the great help, it's really great. Your method helped me a lot. I am new to geo nodes. Is it possible to add a vertical line and remove one top section? i.sstatic.net/pPKAh.jpg $\endgroup$ Commented Sep 5, 2023 at 8:42
-
$\begingroup$ @AndreyRe in this case the vertical line is just aligning a cuboid ("Cube" node), and the top section is disabling the "Fill Caps" in the maroon (red) "Bar" frame. $\endgroup$ Commented Sep 5, 2023 at 9:01
This is how I would approach a minimal topology, though this setup still isn't finished, you might want to add the control for rib thickness for example, or you might want to add a falloff of the ribs towards the ends (I simulated a bar that is cut rather than produced with this length…) - but it shows the principle of taking a cylinder, cutting it and shearing - though after an initial try with a cylinder I figured it would be easier to just start with a grid:
-
$\begingroup$ Oh and the dimensions are wrong, basically the default $xy$ dimensions mean a radius of $1$ without taking the extrusion into account, so… Yeah… The $z$ dimension should be fine. $\endgroup$ Commented Sep 3, 2023 at 20:55
-
$\begingroup$ nice gave it +1 but just took a look now, i wanted to skew the vertical edges upwards while keeping the top/bottom flat, instead of skewing the horizontal edges, but the noob me couldn't manage how to do it, so i ended up skewing horizontally XD $\endgroup$– Harry McKenzie ♦Commented Sep 4, 2023 at 4:49
-
$\begingroup$ Very nice cope with the topo! :) .. although I'm still trying to reverse-engineer your strategy from your node-tree. (And.. the ref. rebar isn't actually a spiral? .. That's kind of a BTW) $\endgroup$– Robin Betts ♦Commented Sep 4, 2023 at 5:44
-
$\begingroup$ @RobinBetts why isn't it a spiral? I offset each circle by the angle, so it's a linear offset along each circle. Here's a comparison with the "Spiral" node, unless you meant it in a way that the "Spiral" node not always produces a spiral (because a spiral should change radius?). As for the strategy: take the cylinder, shear it: i.imgur.com/nRJdh3s.gif , clamp the $z$ coordinates to flatten top and bottom, and extrude every 2nd (original) horizontal face-loop. I don't start with a cylinder, because splitting and differentiating sides of the split is harder than sin+cos. $\endgroup$ Commented Sep 4, 2023 at 7:25
-
2$\begingroup$ @RobinBetts I think I got a little bit too inspired by Harry's answer... :) Reinforcement bars have various patterns, but a spiral one might be a bad one, because theoretically it would allow for some freedom of movement of such a rebar (if there was no friction and the rebar was perfectly stiff, it could be pushed - or pulled by gravity - away from the concrete). Usually I think the pattern is not spirals, just skewed circles / almost circles. I'll write another answer for that but without 'good' topo this time. $\endgroup$ Commented Sep 4, 2023 at 8:31
It's a bit tricky and hard if not impossible when using the Cylinder node, especially adding of Loop Cuts or subdivisions on specific areas (which is not really supported in Geometry Nodes). But you can create a cylinder by plotting the vertices using the Spherical Coordinate System so that you can easily shift the vertices on the XY plane to give it twisted geometry. While you can easily do this via menu Add > Mesh > Math Function > XYZ Math Surface, it is also possible with Geometry Nodes using the simple Parametric Equations similar to that of plotting a circle: $$x(u) = r \times \cos(u)$$ $$y(u) = r \times \sin(u)$$ $$z(v) = h \times v$$
Here is the node setup to create the twisted cylinder, which I put in a Node Group
called Twist Cylinder:
And this is the node setup that uses the node group I created above. This setup extrudes and creates the ribs for the rebar:
Please take note that this node setup is not perfect, it requires some bug fixes, but what's important is you get the idea on how to do this.
-
$\begingroup$ This is heroic.. could you not just (curve-to-mesh) send a profile down a curve-line tilted by some multiple of its own curve parameter, to twist it? Maybe the topology would be a bit tortured. $\endgroup$– Robin Betts ♦Commented Sep 3, 2023 at 18:50
-
$\begingroup$ @RobinBetts maybe won't be as flexible to customize? i'm not sure, i'm also still a geonodes noob and practicing haha i'd be interested to see the solution! :) $\endgroup$– Harry McKenzie ♦Commented Sep 4, 2023 at 2:05
-
$\begingroup$ .. I've been stuck on mine.. trying to find a neat way, given the solid is not actually a spiral. The 2 halves are reflections of one another, offset down the length. $\endgroup$– Robin Betts ♦Commented Sep 4, 2023 at 5:30
-
1$\begingroup$ @RobinBetts at first I did exactly what Markus did with the offsetting of the Z, but I didn't know how to flatten the top and bottom and now realize i just had to clamp it like he explained, could've ended up with his better topology XD $\endgroup$– Harry McKenzie ♦Commented Sep 4, 2023 at 8:40