Class MoveableImageDetector

All Implemented Interfaces:
Detector, NexusDetector, Device, Scannable, Configurable, Findable, gda.observable.IObservable, Serializable

public class MoveableImageDetector extends DatasetNexusDetector
See Also:
  • Constructor Details

    • MoveableImageDetector

      public MoveableImageDetector()
  • Method Details

    • getDataset

      public org.eclipse.january.dataset.IDataset getDataset() throws DeviceException
      Compute Gaussian intensity distribution on 2-dimensional dataset. Intensity is centred on position given by xScannable and yScannable
      Specified by:
      getDataset in class DatasetNexusDetector
      Returns:
      A dataset object. .
      Throws:
      DeviceException
    • getPixelPosition

      public org.apache.commons.math3.geometry.euclidean.twod.Vector2D getPixelPosition(double xpos, double ypos)
      Compute pixel position on the image plane for given x and y 'real space' coordinates by :
    • Convert real (xpos, ypos) to fractional position between lower and upper position limits
    • Pixel position = Fractional position * image size (Image plane covers real positions from lowerPositionLimit (pixel=0,0) to upperPositionLimit (pixel=imageSize.x, imageSize.y))
    • Parameters:
      xpos -
      ypos -
      Returns:
    • getIntensity

      public double getIntensity(org.apache.commons.math3.geometry.euclidean.twod.Vector2D origin, double xpos, double ypos)
      Compute a intensity value of Gaussian, for coordinate (xpos, ypos) with Gaussian centred at 'origin'
      Parameters:
      origin -
      xpos -
      ypos -
      Returns:
    • getLowerPositionLimit

      public double[] getLowerPositionLimit()
    • setLowerPositionLimit

      public void setLowerPositionLimit(double[] lowerPositionLimit)
    • getUpperPositionLimit

      public double[] getUpperPositionLimit()
    • setUpperPositionLimit

      public void setUpperPositionLimit(double[] upperPositionLimit)
    • getImageSize

      public double[] getImageSize()
    • setImageSize

      public void setImageSize(double[] imageSize)
    • getxScannable

      public Scannable getxScannable()
    • setxScannable

      public void setxScannable(Scannable xScannable)
    • getyScannable

      public Scannable getyScannable()
    • setyScannable

      public void setyScannable(Scannable yScannable)