1. A method of dynamically adjusting an angular speed of a light beam emitted by a scanner in measuring three-dimensional (3D) coordinates of a surface, the method comprising: providing the scanner having a light source, a mirror, a first motor, a second motor, a first angle measuring device, a second angle measuring device, a distance meter, and a processor, the light source emitting the light beam, the first motor rotating the mirror about a first axis, the second motor rotating the mirror about a second axis, the mirror having a mirror face, the first axis and the second axis intersecting at an origin of a first coordinate system at the mirror face, wherein the light beam is sent from the light source toward the origin, the light beam being reflected from the mirror face to the surface, reflected off the surface back toward the origin at the mirror face, and reflected from the mirror face to the receiver, and wherein the first angle measuring device measures a first angle of rotation about the first axis, the second angle device measures a second angle of rotation about the second axis, and the distance meter measures a distance based at least in part on a speed of the light beam in air; setting with the processor a selected first angular speed of the first axis and a selected second angular speed of the second axis, the selected first angular speed being an initial first angular speed, the selected second angular speed being an initial second angular speed; launching with the light source the light beam; obtaining a plurality of 3D coordinates corresponding to a plurality of first points on the surface by carrying out once for each of the plurality of first points the steps comprising: moving with the first motor and the second motor the light beam at the selected first angular speed and the selected second angular speed and, in response, intersecting the surface with the light beam at one of the plurality of first points; measuring with the first angle measuring device the first angle of rotation; measuring with the second angle measuring device the second angle of rotation; measuring with the distance meter the first distance; determining with the processor the 3D coordinates of the one of the plurality of first points based at least in part on the first angle, the second angle, and the first distance; calculating with the processor a quality measure based at least in part on a portion of the previously measured first distances; setting with the processor the selected first angular speed and the selected second angular speed based at least in part on the quality measure; and storing the 3D coordinates of the plurality of first points.