LSSTApplications  11.0-13-gbb96280,12.1.rc1,12.1.rc1+1,12.1.rc1+2,12.1.rc1+5,12.1.rc1+8,12.1.rc1-1-g06d7636+1,12.1.rc1-1-g253890b+5,12.1.rc1-1-g3d31b68+7,12.1.rc1-1-g3db6b75+1,12.1.rc1-1-g5c1385a+3,12.1.rc1-1-g83b2247,12.1.rc1-1-g90cb4cf+6,12.1.rc1-1-g91da24b+3,12.1.rc1-2-g3521f8a,12.1.rc1-2-g39433dd+4,12.1.rc1-2-g486411b+2,12.1.rc1-2-g4c2be76,12.1.rc1-2-gc9c0491,12.1.rc1-2-gda2cd4f+6,12.1.rc1-3-g3391c73+2,12.1.rc1-3-g8c1bd6c+1,12.1.rc1-3-gcf4b6cb+2,12.1.rc1-4-g057223e+1,12.1.rc1-4-g19ed13b+2,12.1.rc1-4-g30492a7
LSSTDataManagementBasePackage
cameraConfig.py
Go to the documentation of this file.
1 import lsst.pex.config as pexConfig
2 from lsst.afw.geom import TransformMapConfig
3 
4 __all__ = ["CameraConfig", "DetectorConfig"]
5 
6 class DetectorConfig(pexConfig.Config):
7  """!A configuration that represents (and can be used to construct) a Detector
8  """
9  transformDict = pexConfig.ConfigField("Dictionary of camera transforms keyed on the transform type.", TransformMapConfig)
10  name = pexConfig.Field("Name of detector slot", str)
11  id = pexConfig.Field("ID of detector slot", int)
12  bbox_x0 = pexConfig.Field("x0 of pixel bounding box", int)
13  bbox_y0 = pexConfig.Field("y0 of pixel bounding box", int)
14  bbox_x1 = pexConfig.Field("x1 of pixel bounding box", int)
15  bbox_y1 = pexConfig.Field("y1 of pixel bounding box", int)
16  detectorType = pexConfig.Field("Detector type: SCIENCE=0, FOCUS=1, GUIDER=2, WAVEFRONT=3", int)
17  serial = pexConfig.Field("Serial string associated with this specific detector", str)
18  offset_x = pexConfig.Field("x offset from the origin of the camera in mm in the transposed system.", float)
19  offset_y = pexConfig.Field("y offset from the origin of the camera in mm in the transposed system.", float)
20  refpos_x = pexConfig.Field("x position of the reference point in the detector in pixels "+\
21  "in transposed coordinates.", float)
22  refpos_y = pexConfig.Field("y position of the reference point in the detector in pixels "+\
23  "in transposed coordinates.", float)
24  yawDeg = pexConfig.Field("yaw (rotation about z) of the detector in degrees. "+\
25  "This includes any necessary rotation to go from detector coordinates to camera coordinates "+\
26  "after optional transposition.", float)
27  pitchDeg = pexConfig.Field("pitch (rotation about y) of the detector in degrees", float)
28  rollDeg = pexConfig.Field("roll (rotation about x) of the detector in degrees", float)
29  pixelSize_x = pexConfig.Field("Pixel size in the x dimension in mm", float)
30  pixelSize_y = pexConfig.Field("Pixel size in the y dimension in mm", float)
31 
32  # Depending on the choice of detector coordinates, the pixel grid may need to be transposed before rotation to put
33  # it in camera coordinates.
34  transposeDetector = pexConfig.Field("Transpose the pixel grid before orienting in focal plane?", bool)
35 
36 class CameraConfig(pexConfig.Config):
37  """!A configuration that represents (and can be used to construct) a Camera
38  """
39  detectorList = pexConfig.ConfigDictField("List of detector configs", keytype=int, itemtype=DetectorConfig)
40  transformDict = pexConfig.ConfigField("Dictionary of camera transforms keyed on the transform type.", TransformMapConfig)
41  name = pexConfig.Field("Name of this camera", str)
42 
43  plateScale = pexConfig.Field("Plate scale of the camera in arcsec/mm", float)
44  # Note that the radial transform will also apply a scaling, so all coefficients should be
45  # scaled by the plate scale in appropriate units
46  radialCoeffs = pexConfig.ListField("Coefficients for radial distortion", float)
47  # The following is commented until radialXYTransform supports an offset (ticket/3155)
48  #boresiteOffset_x = pexConfig.Field("Offset of the camera coordinates system relative to the boresite (x value)", float)
49  #boresiteOffset_y = pexConfig.Field("Offset of the camera coordinates system relative to the boresite (y value)", float)
A configuration that represents (and can be used to construct) a Detector.
Definition: cameraConfig.py:6
A configuration that represents (and can be used to construct) a Camera.
Definition: cameraConfig.py:36