Interface SampleMovementService
- All Superinterfaces:
Findable
- All Known Implementing Classes:
DeferredSampleMovementService,SampleMovementServiceAdapter,SampleMovementServiceBase,SampleMovementServiceI19,SampleMovementServiceSimple,ScannableSampleMovementService
-
Method Summary
Modifier and TypeMethodDescriptionvoidmoveSampleByMicrons(double h, double v, double b) Moves the sample in 'real-world' microns.voidmoveSampleByMicronsAlongBeamlineAxes(double x, double y, double z) Moves the sample along the beamline's goniometer axes.voidmoveSampleByMicronsAlongStandardAxes(double h, double v, double b) Moves the sample along the three standard goniometer axes.
-
Method Details
-
moveSampleByMicrons
Moves the sample in 'real-world' microns. When standing behind the goniometer, with the beam travelling right, H +ve is away from you, V +ve is vertically up, and B +ve is along the beam:
In this coordinate system, the B and V axes are not affected by any rotation of the goniometer; they are always orthogonal with respect to the H axis.
To calculate the required physical movement, this method will take into account the rotation of the goniometer. A movement along 'standard' goniometer axes will be calculated using the current value of ω (along with the direction in which the goniometer rotates for a +ve rotation of ω).
- Throws:
DeviceException
-
moveSampleByMicronsAlongStandardAxes
Moves the sample along the three standard goniometer axes. When standing behind the goniometer, with the beam travelling right, H +ve is away from you. The V and B axes are the axes that rotate as the goniometer rotates.When ω = 0°, V +ve will be vertically up, and B +ve will be along the beam, as with 'real-world' coordinates:
As the goniometer rotates, the V and B axes also rotate. If the goniometer rotates anticlockwise for a +ve rotation of ω, then when ω = 90°:
A beamline-dependent movement will be calculated using the beamline's axis orientation matrix. This simply involves reorienting the three axes.
- Throws:
DeviceException
-
moveSampleByMicronsAlongBeamlineAxes
Moves the sample along the beamline's goniometer axes.- Throws:
DeviceException
-