I am trying to 3D print a torus with a curve running around it. This is what I tried:

G1 = ParametricPlot3D[{(4 + Sin[u]) Cos[v], (4 + Sin[u]) Sin[v], Cos[u]}, {u, 0, 2 \[Pi]}, {v, 0, 2 \[Pi]}, PlotPoints -> {7, 50},Mesh -> All, PlotStyle -> Thickness[.2]]
G2 = ParametricPlot3D[{(4 + Sin[20 t]) Cos[t], (4 + Sin[20 t]) Sin[t], Cos[20 t]}, {t, 0, 2 \[Pi] + .05}, PlotStyle -> Tube[.2], PlotPoints -> {7, 40}, Mesh -> All, ColorFunction -> Function[{x, y, z}, Hue[z]], PlotRange -> All]
Show[G2, G1]
Export[FileNameJoin[{NotebookDirectory[], "TORUSWITHCURVE.stl"}], %]

It works, but the curve and the torus are not fused as one object. So when you go to print the model, there are places where it gets disconnected. Is there ay way to have two object merge into one? Perhaps if there is a fill tool I'm unaware of to just make the shape a solid? That might work. This might be better suited to a 3D printing forum, but I would ideally like to use Mathematica to formulate all of my 3D objects, so if I could figure out how to fix it on that end, that would be best. Thanks.

  • $\begingroup$ Please post code, not images ... unless they are images $\endgroup$ – Dr. belisarius Jan 21 '16 at 21:03
  • $\begingroup$ What's wrong with the image? $\endgroup$ – user46348 Jan 21 '16 at 21:04
  • 4
    $\begingroup$ en.wiktionary.org/wiki/… $\endgroup$ – Dr. belisarius Jan 21 '16 at 21:08
  • 2
    $\begingroup$ @user46348 Because when someone wants to try your code, s/he has to retype it. That's fairly uncourteous $\endgroup$ – Dr. belisarius Jan 21 '16 at 21:40
  • 1
    $\begingroup$ Why not simply increase the radii of the torus and curve by a few percent? $\endgroup$ – David G. Stork Jan 21 '16 at 23:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.