You need to identify the graphics object with a (local, dynamic) variable to use in a call to Export[]
. It's easy to use a button to export from within the scope of the dynamic block. If you want the button to be external to the block, you can use TaggingRules
as explained in your link. I prefer not to play around with extending the scope of variables.
SetDirectory[NotebookDirectory[]];
DynamicModule[{vp = {2, -2, 1}, vv = {0, 0, 1}, g},
Grid[{{
g = GraphicsRow[{Graphics3D[{Cone[{{0, 0, 0}, {2, 3, 4}}, 3]},
SphericalRegion -> True, ViewPoint -> Dynamic[vp],
ViewVertical -> Dynamic[vv]],
Graphics3D[{Cone[{{1, 0, 1}, {1, 1, 1}}, 4]},
SphericalRegion -> True, ViewPoint -> Dynamic[vp],
ViewVertical -> Dynamic[vv]],
Graphics3D[{Cone[{{1, 1, 1}, {9, 9, 9}}, 4]},
SphericalRegion -> True, ViewPoint -> Dynamic[vp],
ViewVertical -> Dynamic[vv]]}]},
{Button["Save Figure", Export["dynamicfigure.png", g]]}}]]
Export["filename.png",<paste here>]
$\endgroup$