1
$\begingroup$

By this question, I mean how to build a perfect cylinder (not a subdivided prism) from 2 distant vertices, with a specified radius ? I have been trying so hard to find an easy way to do it.

Thanks if you can help !

$\endgroup$
3
  • 1
    $\begingroup$ So the vertices are part of the same diameter, or are there located at each one of the cylinder caps ? $\endgroup$
    – Gorgious
    Feb 12, 2021 at 16:46
  • 2
    $\begingroup$ Blender doesn't do real curves. Everything that Blender renders is composed of flat, sampled faces. Even bezier and nurbs objects are sampled. If you need a "perfect cylinder" instead of a "subdivided prism", Blender is not the tool for the job. $\endgroup$
    – Nathan
    Feb 13, 2021 at 0:25
  • $\begingroup$ blender can to perfect cylinders, but only fake in shaders, so if that's what you are after, then you should probably create a new question now, as there are already two answers on how to build a normal cylinder model around an edge. A bit more context would probably also help. $\endgroup$
    – HenrikD
    Feb 13, 2021 at 8:42

4 Answers 4

2
$\begingroup$

Here is a two-step way to do it:

Select your mesh and go to Object>Convert>Curve

convert to curve

Then go to the properties tab and increase the resolution and size to your liking:

properties to modify

Then enable Fill Caps to make it a closed cylinder, and Right Click>Shade Smooth to make it smooth.

$\endgroup$
1
$\begingroup$

There is two simple ways to make an edge into a cylinder, depending on your needs, one will fit the purpose.

  1. The first one is to seperate your edge from whatever else you have in your current object by pressing P > Selection. Then Convert your mesh into a curve (best to search using F3) Object > Convert To > Curve. Then go to the curve setting (green curve in the properties panel) and change the Geometry > Bevel > Depth to your radius and the resolution to your preferred resolution. You could approximate your perfect cylinder by using very high numbers (like 360) sadly though there is a hard limit of 32 on that property (which is enough for most applications).

  2. The second way of doing it is a bit more flexible in construction, but less flexible after it's done (can't really change the resolution without repeating these steps). This time we will stay within the mesh editmode. First select the transform space Normal (e.g. press , > Normal). Then select your edge and put the 3D Cursor on it by pressing Shift+S > Cursor to Selected.Then press E to extrude. Choose the X axis as it's perpendicular to the edge and type in your radius, finish operation. Then select the newly created face and choose the spin tool from the tools on the left (or use Shift+Space). Choose the correct looking axis in the top bar where the tool settings are. You can also already choose the steps there. Then use the tool to make your cylinder (hold ctrl for angle snapping). If your cylinder is looking weird on the inside try changing Auto Merge in the Last Operation Menu (F9). Now remove your internal edge and Merge by Distance (M) if needed and your are good to go.

There is countless more ways to do this actually. Ok heres a bonus way to do it, because its beautiful:

  1. In Object Mode create a new cylinder. Change your snapping settings to Edge Center, Median, Align Rotation to Target. Then move your cylinder to the edge (snapping enabled e.g. using Ctrl). It will snap into the correct position and oriantation. Now new settings for snapping: Vertex, Closest, Scale. Then start scaling on the Z-axis and snap the scale to one of the edge vertices. Finished. You can merge yor cylinder if you want with Ctrl+J.
$\endgroup$
1
  • $\begingroup$ And now the same with the Industry compatible Keymap and my custom keymap please :) Joke asides, but your advice would be simply more useful when you would name the operators instead of listing hotkeys that might or might not work. I have mapped M to mark seams for example. And my last operator menu is back at F6. Shift Space does not work at the IC, and so on. $\endgroup$
    – Tiles
    Sep 5, 2021 at 7:35
1
$\begingroup$

I would use the Skin Modifier. The vertices needs to be connected with an edge. The radius can then be adjusted with skin resize in Edit mode at the vertices.

To add a skin modifier and sds modifier gives of course rounded ends.

To have flat ends, don't use SDS directly. But apply the Skin Modifier. This gives you a box mesh. Then in edit mode remove the upper and lower face, add SDS, apply SDS, and add a face at the top and bottom of the cylinder.

Alternatively, mark the upper and lower edgeloops with a crease of 1 when doing SDS. Then you don't have to remove and readd the top and bottom face.

enter image description here

enter image description here

$\endgroup$
0
$\begingroup$

This is a bit complex but here goes.

in edit mode:
Select one vertex
snap the 3Dcursor to vertex with (Shift s - snap to selected)
exit edit mode
create a circle of the desired diameter and fill with triangle fan. (Shift a) The middle vertex of the triangle fan is needed later for snapping.
select the other vertex (in edit mode in the object with the vertex)
again snap the 3Dcursor to vertex
create an empty (Shift a) select the circle
add an object constraint: track to and select the empty as the target
The circle should now be perpendicular to the line between the two vertices.
now select the circle and enter edit mode of the circle
enable snap to vertex
and finally extrude the circle towards the second vertex.
if needed you can join the objects to create a single mesh.

I home that helps,
Cheers

Track to constraint

$\endgroup$
2
  • $\begingroup$ you could create another circle and Bridge Edge Loops $\endgroup$ Feb 13, 2021 at 7:56
  • $\begingroup$ I think there is a much simpler way. Give me a moment. $\endgroup$
    – HenrikD
    Feb 13, 2021 at 7:58

You must log in to answer this question.

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