Not really an answer, but a solution to my particular problem:
helix1[t_] := {Sin[t], t/2}
helix2[t_] := {Sin[t + Pi], t/2}
connectingLine[t_] :=
If[EvenQ[Floor[4 t/Pi]], {Sin[t], t/2}, {Sin[t + Pi], t/2}]
img = Rotate[
ParametricPlot[{helix1[t], helix2[t], connectingLine[t]}, {t, 0,
4 Pi}, PlotStyle -> Black, Axes -> False], Pi/2]
Export["img.pdf", img]
This produces a Graphics
object which I can easily export as a vector, without the antialiasing issue.
The general question is somewhat trickier, as it has to do with how Mathematica handles the export of Graphics3D
objects. Ultimately, my "solution" is merely analytical, where a projection onto a 2D plane is relatively easy, given the ViewPoint
setting in the original ParametricPlot3D
. This has already been partially discussed before in this question, and it would be interesting to know whether there is a reasonably general way of guaranteeing lossless vectorized images from 2D representations of 3D plots.
I am not too familiar with vector graphics rendering, but it would be interesting to know whether this has been discussed before within Mathematica. In particular, whether ViewPoint
settings alone could be used to directly infer the 2D projection, rather than merely using standard vectorizing techniques, where information would be lose.
Export
command? Please show all code used, not word description. $\endgroup$Export["img.pdf", img]
, whereimg
is the object in the code, yields the same result. $\endgroup$Export["img.pdf", Plot[Sin[x], {x, 0, 2 Pi}]]
causes no issue, as expected. See this question $\endgroup$