I have a bunch of closed cylinders and I want to add faces between them (not inside the closed edges). Would be grateful if someone can help me with that.
3 Answers
@Hrishav's answer is a good lead but it's quite incorrect. You will need booleans for this and also, like @moonboots said in the comments, you'll need to join your cylinders to one object if you haven't already.
After following the steps that I describe here, you'll end up with this :
It is the fast way but the topology is really messy, if you want to have proper topology, you may want to consider doing retopo.
After joining your cylinders, create a Cube (it has to be a closed volume so the Plane is a no-go and the cube is the simplest IMO --for the method I describe, that is-- ), place the cube like this :
Make sure the top end of your cylinders are outside the cube and the bottom end inside.
Add a Boolean modifier set to Difference
to the cube and select the cylinders as the boolean Object
:
Apply that boolean. You can hide your cylinders to better see the result :
Now you can go to Edit Mode and delete the lateral and bottom face of the cube :
As I said in the beginning, this topology is really messy but this is what I would suggest if you want a quick result.
-
1$\begingroup$ You can also duplicate the cylinders, fill the caps (select the shortest edge, select similar by length...), and then boolean difference a plane with that. $\endgroup$ Jan 11, 2022 at 11:15
-
$\begingroup$ Yes, this would work, in my example, I have only 13 cylinders and filling their caps one by one is still doable but it would be a nightmare to do that with those from the question unless there is a fast way to do that too? $\endgroup$ Jan 11, 2022 at 11:27
-
1$\begingroup$ select a single edge of the cap, Shift+G, length, F. $\endgroup$ Jan 11, 2022 at 11:39
-
$\begingroup$ Pressing
F
from there actually fills the individual caps, thank you for that tip. $\endgroup$ Jan 11, 2022 at 11:44 -
$\begingroup$ Thanks for your help. It worked. My mistake was unioning them rather than differencing them using the Boolean modifier. $\endgroup$– BroAliJan 11, 2022 at 12:23
Just for completeness a simple way without joining your cylinders. Move them in a collection and use this collection as operand type for the Boolean operation.
Select all the meshes, join them into one object. Then add a Plane mesh, and add a boolean modifier. Im not super sure which one works. I just try all of them one by one, but i think the Intersect will work, probably.
-
$\begingroup$ Thanks for your reply. I have tried this before, but the plane mesh adds faces inside cylinders too, and I couldn't find any ways to distinguish the inter and outer faces of cylinders. $\endgroup$– BroAliJan 11, 2022 at 11:02