Properties defining a radiation camera. More...
#include <RadiationModel.h>
Public Member Functions | |
| bool | operator!= (const CameraProperties &rhs) const |
| bool | operator== (const CameraProperties &rhs) const |
Data Fields | |
| helios::int2 | camera_resolution |
| Camera sensor resolution (number of pixels) in the horizontal (.x) and vertical (.y) directions. | |
| float | focal_plane_distance |
| Distance from the viewing plane to the focal plane (working distance for ray generation) | |
| float | lens_focal_length |
| Camera lens optical focal length in meters (characteristic of the lens, used for f-number and aperture calculations). This is the physical focal length, not the 35mm equivalent. | |
| float | lens_diameter |
| Diameter of the camera lens (lens_diameter = 0 gives a 'pinhole' camera with everything in focus) | |
| float | HFOV |
| Camera horizontal field of view in degrees. | |
| float | FOV_aspect_ratio |
| Ratio of camera horizontal field of view to vertical field of view (HFOV/VFOV). DEPRECATED: This parameter is auto-calculated from camera_resolution to ensure square pixels. Setting it explicitly will be ignored with a warning. | |
| float | sensor_width_mm |
| Physical sensor width in mm (default 35mm full-frame) | |
| std::string | model |
| Camera model name (e.g., "Nikon D700", "Canon EOS 5D") | |
| std::string | lens_make |
| Lens make/manufacturer (e.g., "Canon", "Nikon") | |
| std::string | lens_model |
| Lens model name (e.g., "AF-S NIKKOR 50mm f/1.8G") | |
| std::string | lens_specification |
| Lens specification (e.g., "50mm f/1.8", "18-55mm f/3.5-5.6") | |
| std::string | exposure |
| float | shutter_speed |
| Camera shutter speed in seconds (used for ISO-based exposure calculations). Example: 1/125 second = 0.008. | |
| std::string | white_balance |
| White balance mode: "auto" (automatic white balance using spectral response) or "off" (no white balance correction) | |
| float | camera_zoom |
| Camera optical zoom multiplier (1.0 = no zoom, 2.0 = 2x zoom, etc.) | |
Properties defining a radiation camera.
Definition at line 27 of file RadiationModel.h.
|
inline |
Definition at line 90 of file RadiationModel.h.
|
inline |
Definition at line 29 of file RadiationModel.h.
|
inline |
Definition at line 105 of file RadiationModel.h.
| helios::int2 CameraProperties::camera_resolution |
Camera sensor resolution (number of pixels) in the horizontal (.x) and vertical (.y) directions.
Definition at line 34 of file RadiationModel.h.
| float CameraProperties::camera_zoom |
Camera optical zoom multiplier (1.0 = no zoom, 2.0 = 2x zoom, etc.)
!
This parameter scales the horizontal field of view (HFOV) during rendering: effective_HFOV = HFOV / camera_zoom. The HFOV parameter represents the reference field of view at zoom=1.0. When zoom > 1.0, the effective FOV becomes narrower (telephoto effect). When zoom < 1.0, the effective FOV becomes wider.
IMPORTANT: All camera metadata exported to JSON (focal_length, sensor dimensions, etc.) reflect the REFERENCE state at zoom=1.0, not the zoomed state. The zoom value itself is written to metadata as "zoom" so users can reconstruct the effective parameters.
Example: HFOV=60° with camera_zoom=2.0 renders with an effective HFOV of 30° (2x optical zoom).
Definition at line 88 of file RadiationModel.h.
| std::string CameraProperties::exposure |
Exposure mode: "auto" (automatic exposure), "ISOXXX" (ISO-based, e.g., "ISO100"), or "manual" (no automatic exposure scaling). ISO mode is calibrated to match auto-exposure at reference settings (ISO 100, 1/125s, f/2.8) for typical Helios scenes.
Definition at line 68 of file RadiationModel.h.
| float CameraProperties::focal_plane_distance |
Distance from the viewing plane to the focal plane (working distance for ray generation)
Definition at line 37 of file RadiationModel.h.
| float CameraProperties::FOV_aspect_ratio |
Ratio of camera horizontal field of view to vertical field of view (HFOV/VFOV). DEPRECATED: This parameter is auto-calculated from camera_resolution to ensure square pixels. Setting it explicitly will be ignored with a warning.
Definition at line 49 of file RadiationModel.h.
| float CameraProperties::HFOV |
Camera horizontal field of view in degrees.
Definition at line 46 of file RadiationModel.h.
| float CameraProperties::lens_diameter |
Diameter of the camera lens (lens_diameter = 0 gives a 'pinhole' camera with everything in focus)
Definition at line 43 of file RadiationModel.h.
| float CameraProperties::lens_focal_length |
Camera lens optical focal length in meters (characteristic of the lens, used for f-number and aperture calculations). This is the physical focal length, not the 35mm equivalent.
Definition at line 40 of file RadiationModel.h.
| std::string CameraProperties::lens_make |
Lens make/manufacturer (e.g., "Canon", "Nikon")
Definition at line 58 of file RadiationModel.h.
| std::string CameraProperties::lens_model |
Lens model name (e.g., "AF-S NIKKOR 50mm f/1.8G")
Definition at line 61 of file RadiationModel.h.
| std::string CameraProperties::lens_specification |
Lens specification (e.g., "50mm f/1.8", "18-55mm f/3.5-5.6")
Definition at line 64 of file RadiationModel.h.
| std::string CameraProperties::model |
Camera model name (e.g., "Nikon D700", "Canon EOS 5D")
Definition at line 55 of file RadiationModel.h.
| float CameraProperties::sensor_width_mm |
Physical sensor width in mm (default 35mm full-frame)
Definition at line 52 of file RadiationModel.h.
| float CameraProperties::shutter_speed |
Camera shutter speed in seconds (used for ISO-based exposure calculations). Example: 1/125 second = 0.008.
Definition at line 71 of file RadiationModel.h.
| std::string CameraProperties::white_balance |
White balance mode: "auto" (automatic white balance using spectral response) or "off" (no white balance correction)
Definition at line 74 of file RadiationModel.h.