summaryrefslogtreecommitdiff
path: root/src/opticaldesign.h
diff options
context:
space:
mode:
authorNikita Kostovsky <nikita@kostovsky.me>2025-09-20 17:34:39 +0200
committerNikita Kostovsky <nikita@kostovsky.me>2025-09-20 17:34:39 +0200
commitb724e714d24b7623718016af921e1d9aab8d02ea (patch)
tree3d4efb61e43d8e6196c7eda061181897b27a9eee /src/opticaldesign.h
parentad001563fda4a9061909bd09dcf51238138014d6 (diff)
check Scheimpflug principle; calculate distance to matrix and depth of fieldHEADmaster
Diffstat (limited to 'src/opticaldesign.h')
-rw-r--r--src/opticaldesign.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/opticaldesign.h b/src/opticaldesign.h
index e6fb2c6..5a7ebac 100644
--- a/src/opticaldesign.h
+++ b/src/opticaldesign.h
@@ -36,13 +36,13 @@ Q_ENUM_NS(LenseAperture)
// Q_DECLARE_METATYPE(orphex::LenseAperture)
-class OpticalDesign : public G_Object
+class OpticalDesign : public goodies::G_Object
{
Q_OBJECT
- DEFAULT_CONSTRUCTOR(G_Object, OpticalDesign)
+ DEFAULT_CONSTRUCTOR(goodies::G_Object, OpticalDesign)
DEFAULT_DESTRUCTOR(OpticalDesign);
- G_OBJECT(G_Object, OpticalDesign)
+ G_OBJECT(goodies::G_Object, OpticalDesign)
public:
void calculate() const;
@@ -51,12 +51,16 @@ protected:
INI_PROPERTY(double, opticalAxisAngleDegrees, 45.);
// the Y axis is directed from the laser to the lens
INI_PROPERTY(double, lenseYPosMm, 50.);
+ // default values for CS2006ZM06 lense
INI_PROPERTY(double, focalDistanceMm, 6.);
+ INI_PROPERTY(double, backFocalDistanceMm, 7.3);
+ // FIXME: loading doesn't work
INI_PROPERTY_VAR(
orphex::LenseAperture,
lenseAperture,
orphex::LenseAperture::F1_2
);
+ // default values for IMX287 sensor
INI_PROPERTY(double, sensorWidthMm, 4.98);
INI_PROPERTY(double, sensorHeightMm, 3.74);
INI_PROPERTY(double, sensorCellWidthUm, 6.9);
@@ -71,4 +75,8 @@ protected:
G_PROPERTY_DEFAULT(double, sensorLenseAngleDegrees, 0.);
G_PROPERTY_DEFAULT(double, actualZBaseMm, 0.);
G_PROPERTY_DEFAULT(double, actualZRangeMm, 0.);
+ G_PROPERTY_DEFAULT(double, lenseSensorDistanceMm, 0.);
+ G_PROPERTY_DEFAULT(double, frontSharpDistanceMm, 0.);
+ G_PROPERTY_DEFAULT(double, backSharpDistanceMm, 0.);
+ G_PROPERTY_DEFAULT(double, depthOfFieldMm, 0.);
};