SpaceCamera:

Path: Thermal/ThermalAnalysis

% Draw spacecraft in orbit about a planet, as seen by an in-situ camera.
   An imager function can be specified, for instance optical or thermal
   coloration. If no function is specified the CAD colors are used.

   There are five calls you need to make when using this plugin.

   (1) INITIALIZE
   tag = SpaceCamera( 'initialize', d, g, jD )

   d      data structure
              .camera            (:)  Camera model
              .position         (1,4) Position of the window
              .planetName       (1,:) Planet name
              .imagerFunction   (1,:) Imager function (can be handle, optional)
              .name             (1,:) Name for the plugin (optional)
              .scale            (1,1) Flag to scale up the spacecraft (optional)
              .ambientStrength  (1,1) Default strength if not 0 (optional)
   g      is the spacecraft CAD data structure. It contains the ECI orbit
          position of the spacecraft. The field for orbit position
          .rECI must be in kilometers. The spacecraft model must be in
          meters.
   jD     is the Julian date

   You need to save tag to call the function in subsequent calls.

   (2,3) UPDATE THE SPACECRAFT AND CAMERA
   --------------------------------------
   If you are updating the camera you should make these two calls in sequence:

   SpaceCamera( 'update camera',     tag, camera, jD )
   SpaceCamera( 'update spacecraft', tag, g, jD )

   The data structure in the 'update camera' call is as follows:

   camera   Camera data structure, see CameraDatabase
            .position       (3,1) Position of camera (m)
            .up             (3,1) Up unit vector in the camera frame
            .focalLength    (1,1) Focal length
            .aperture       (1,1) Aperture diameter
            .rho            (1,1) Imager diameter
            .rBody          (3,1) Location of camera in ECI frame, if known. (m)
            .qBody          (4,1) Orientation of camera from ECI frame, if known    

   (4) EXTRACT IMAGE
   -----------------
   To extract an image type

   rGB = SpaceCamera( 'get frame', tag )

   (5) QUIT
   ---------
   To close the display type

   SpaceCamera( 'quit', tag )
  
   There are additional calls for interacting with the camera.
   'get scene attitude'  Return the ECI to planet-fixed transformation
   'set ambient'         Set an ambient strength for the patches
   'toggle names'        Toggle the spacecraft names
   'get camera'          Get the camera model
   'get model'           Get the target CAD model

--------------------------------------------------------------------------
   Form:
   tag = SpaceCamera( action, modifier, g, jD )
--------------------------------------------------------------------------

   ------
   Inputs
   ------
   action      (1,:)  Action
   modifier    (1,:)  Modifier to the action
   g           (1,1)  Spacecraft data structure
   jD          (1,1)  Julian Date
   
   -------
   Outputs
   -------
   tag         (1,:)  The tag that identifies the display   
                      or another output

--------------------------------------------------------------------------

Children:

AC: ACData/ACTConstants
AerospaceUtils: CAD/BHinge
AerospaceUtils: CAD/DrawSpacecraftPatches
AerospaceUtils: Coord/QAlign
AerospaceUtils: Coord/QLVLH
AerospaceUtils: Coord/QRotateToAlign
AerospaceUtils: Coord/U2AzEl
SC: BasicOrbit/CP2I
SC: BasicOrbit/E2Nu
SC: BasicOrbit/El2RV
SC: BasicOrbit/M2E
SC: BasicOrbit/M2EApp
SC: BasicOrbit/M2EEl
SC: BasicOrbit/M2EHy
SC: BasicOrbit/M2Nu
SC: BasicOrbit/M2NuPb
SC: Ephem/ECIToPlanet
SC: Ephem/EOfE
SC: Ephem/EarthNut
SC: Ephem/EarthPre
SC: Ephem/EarthRot
SC: Ephem/GMSTime
SC: Ephem/LoadFK5
SC: Ephem/MSidDay
SC: Ephem/MoonRot
SC: Ephem/Moons
SC: Ephem/NutDelta
SC: Ephem/ObOfE
SC: Ephem/SunV1
SC: Ephem/TruEarth
SC: SCData/sCTConstants
SC: SCMat/EarthMR
SC: SCModels/SCForImaging
SC: Visualization/PlotPlanet
SCPro: ProSensors/AutoPoint
SCPro: ProSensors/CameraDatabase
SCPro: ProSensors/PointCameraModel
SpacecraftEstimation: StellarCatalog/LoadCatalog
SpacecraftEstimation: StellarData/FK5Polar
SpacecraftEstimation: StellarData/Hipparcos
Common: CommonData/Constants
Common: CommonData/SwooshWatermark
Common: CommonData/xSplashSmall
Common: Database/Constant
Common: General/CellToMat
Common: General/CloseFigure
Common: General/DeBlankLT
Common: General/DeleteCell
Common: General/DispWithTitle
Common: General/IsValidField
Common: General/MatToCell
Common: General/Watermark
Common: Graphics/Coordinates
Common: Graphics/NewFig
Common: Graphics/Plot2D
Common: Graphics/PltStyle
Common: Graphics/TitleS
Common: Quaternion/AU2Q
Common: Quaternion/Mat2Q
Common: Quaternion/Q2Mat
Common: Quaternion/QForm
Common: Quaternion/QMult
Common: Quaternion/QPose
Common: Quaternion/QTForm
Common: Quaternion/U2Q
Common: Time/DTSToDTA
Common: Time/Date2JD
Common: Time/JD2000
Common: Time/JD2T
Common: Time/JDToMidnight
Common: Time/T2JD
Common: Transform/RaDec2U
Imaging: Optics/AngleOfView
Math: Geometry/Perpendicular
Math: Linear/Cross
Math: Linear/Dot
Math: Linear/DupVect
Math: Linear/Mag
Math: Linear/Unit
Math: MathUtils/R2P5
Math: Trigonometry/CosD
Math: Trigonometry/SinD

Back to the Thermal Module page