Re: Questions concerning export of 3d plots
- To: mathgroup at smc.vnet.net
- Subject: [mg118444] Re: Questions concerning export of 3d plots
- From: Alexey <lehin.p at gmail.com>
- Date: Thu, 28 Apr 2011 06:36:00 -0400 (EDT)
- References: <ip8o51$peu$1@smc.vnet.net>
> In Mathematica > (and OpenGL, ...) you say something like > > Polygon[{p1,p2,...}, VertexColors->{c1,c2,...}] > > and specify the color at each vertex. The whole polygon is then drawn by > interpolating the colors of the vertices at each position. It > "seems" (and here I'm really not sure) that either the PDF file format > does not support this or it needs the hell of space for this. In really recent versions of PDF and EPS fully support vertex colors. See this thread: http://groups.google.com/group/comp.soft-sys.math.mathematica/browse_thread/thread/f2327233ca2faa9f/2dad0f66979ad134 and this video (14 Mb): http://research.microsoft.com/en-us/um/people/jiansun/videos/GMesh_336.wmv > So if you have for instance Inkscape installed to convert from svg to > pdf, then you could compare these 3 pdf files: > > ExportSVG[filename_String, gr : (Graphics3D[___] | Graphics[___])] := > > Block[{svg = ExportString[Normal[gr], "SVG"], stream}, > Export[filename, StringReplace[svg, > Shortest[ > StringExpression["<polygon stroke=\"none\" fill=", color__, > " points=", pt__, "/>"]] :> > "<polygon stroke=" ~~ color ~~ " stroke-width=\"0.6px\" fill=" ~~ > color ~~ " points=" ~~ pt ~~ "/>"], "Text"] > ] > > gr = Plot3D[Sin[x + y^2], {x, -3, 3}, {y, -2, 2}, Mesh -> None, > MaxRecursion -> 5, PlotPoints -> 20, BoundaryStyle -> None, > ImageSize -> 500]; > > Export["grMma1.pdf", gr] > Export["grMma2.pdf", gr, "AllowRasterization" -> False] > ExportSVG["grInk.svg", gr] > > Run["inkscape", "-D", "-A grInk.pdf", "grInk.svg"] > > On my machine I have sizes: > > 17M grMma1.pdf > 860K grMma2.pdf > 1.1M grInk.pdf > > and the last pdf looks pretty ok. Very interesting! Thank you for sharing! You can be also interested in Jens Nockel's thoughts on the matter: http://pages.uoregon.edu/noeckel/MathematicaGraphics.html#ExportShading Alexey