Message Boards Message Boards

GROUPS:

Create a solid volume of revolution using RevolutionPlot3D?

Posted 6 months ago
808 Views
|
4 Replies
|
3 Total Likes
|
4 Replies
Attachments:
Posted 6 months ago

Another way .It's not a best method,but works. In my opinion, such things are done best in Blender 3D.

  Q1 = DiscretizeGraphics[
    RevolutionPlot3D[{2 + Sqrt[x]}, {x, 0, 4}, 
     RevolutionAxis -> {0, 0, 1}, MaxRecursion -> 4, PlotPoints -> 30]]

 Q2 = DiscretizeGraphics[
   RevolutionPlot3D[{4}, {x, 0, 4}, RevolutionAxis -> {0, 0, 1}, 
    PlotPoints -> 20, PlotTheme -> "ThickSurface"]]

 exp = RegionUnion[Q1, Q2]
 Export["test.stl", exp]

enter image description here

But that is still in two pieces:

ConnectedMeshComponents[exp]

Here's another approach: Use RegionPlot3D to make a solid version of the region, and then discretize and use RegionBoundary to leave just the boundary surface:

solid = RegionPlot3D[
  2 + (x^2 + y^2)^(1/4) <= z <= 4, {x, -4, 4}, {y, -4, 4}, {z, 2, 4}, 
  BoxRatios -> Automatic, PlotPoints -> 60]

surface=RegionBoundary[DiscretizeGraphics[test]]

This has all faces correctly oriented, and has no other defects.

HighlightMesh[surface, Style[2, FaceForm[Yellow, Black]]]
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract