The default behavior dynamical updating system of Manipulate
is to change certain settings that tend to speed up a computation when a control is being actively manipulated. For instance, it sets $ControlActive
to True
and $PerformancGoal
to "Speed"
For plots, this lowers the number of points of the graph computed by lowering MaxRecursion
to 0
. For other plotters, PlotPoints
might be lowered, but that does not seem to be the case.
One can override the default in either of the two ways:
Manipulate[
Block[{$PerformanceGoal = "Quality"},
ContourPlot[a x^2 - 2 x + a y^2 == 0,
{x, -0.2, 4.}, {y, -2.1, 2.1}]
],
{{a, 1.}, 0., 2.}
]
Manipulate[
ContourPlot[a x^2 - 2 x + a y^2 == 0,
{x, -0.2, 4.}, {y, -2.1, 2.1},
MaxRecursion -> 2],
{{a, 1.}, 0., 2.}
]
Both methods work fast enough in this case. In general, one can exercise finer control by using $ControlActive
:
MaxRecursion -> If[$ControlActive, 1, 2]