23

Normally, I used ViewPoint in the code in Plot3D. Most of the time, I will use mouse to rotate the 3D object to get a better view point. The problem is, when I find the best view point for me, is there any way to get the ViewPoint parameters for the rotated scene, such as {-1.25, 2.31, 1.8}, so I can repeat the plot or use it in the future?

Qi Zhong
  • 1,037
  • 9
  • 16
  • 4
    Simply edit the output cell and wrap Options[..., ViewPoint] around the already rotated output. The graphics should be in the place of .... ViewVertical may also change during rotating, as well as some other parameters. – Szabolcs Nov 27 '16 at 23:38

2 Answers2

26

One way is to set a symbol equal to the initial default viewpoint.

v = Options[Plot3D, ViewPoint][[1, 2]]

(* {1.3, -2.4, 2.} *)

Use that symbol dynamically in the plot. Monitor the dynamic value of v and note the value when the rotated plot is pleasing to you:

Plot3D[
 Sin[x + y^2],
 {x, -3, 3},
 {y, -2, 2},
 ViewPoint -> Dynamic[v]
 ]

Mathematica graphics

Dynamic[v]

 (* {2, -0.9, 2.5} *)
Jack LaVigne
  • 14,462
  • 2
  • 25
  • 37
23

Here is how you can extract the ViewPoint family options from a graphic after interaction. Once you have the options, simply do a copy-paste them in the initial code :

enter image description here

andre314
  • 18,474
  • 1
  • 36
  • 69