Style changes as requested

This commit is contained in:
Alexander Brock 2023-02-22 10:52:42 +01:00
parent 2a92257438
commit 2e66dc11a2
5 changed files with 44 additions and 12 deletions

View File

@ -33,6 +33,8 @@ using namespace std;
namespace
{
constexpr double focal_length_in_px_factor = 0.0462;
float pow3 (float x)
{
return x * x * x;
@ -522,13 +524,13 @@ bool ImProcFunctions::transCoord (int W, int H, const std::vector<Coord2D> &src,
x_d /= params->perspective.camera_scale;
y_d /= params->perspective.camera_scale;
if (params->perspective.camera_defish) {
double const focal_source = params->perspective.camera_focal_length * maxRadius * 0.0462;
const double focal_source = params->perspective.camera_focal_length * maxRadius * focal_length_in_px_factor;
double focal_dst = focal_source;
x_d /= focal_dst;
y_d /= focal_dst;
double const r = std::sqrt(x_d*x_d + y_d*y_d);
double const factor = focal_source * std::atan(r)/r;
const double r = std::sqrt(x_d * x_d + y_d * y_d);
const double factor = focal_source * std::atan(r) / r;
x_d *= factor;
y_d *= factor;
@ -1262,13 +1264,13 @@ void ImProcFunctions::transformGeneral(bool highQuality, Imagefloat *original, I
x_d /= params->perspective.camera_scale;
y_d /= params->perspective.camera_scale;
if (params->perspective.camera_defish) {
double const focal_source = params->perspective.camera_focal_length * maxRadius * 0.0462;
const double focal_source = params->perspective.camera_focal_length * maxRadius * focal_length_in_px_factor;
double focal_dst = focal_source;
x_d /= focal_dst;
y_d /= focal_dst;
double const r = std::sqrt(x_d*x_d + y_d*y_d);
double const factor = focal_source * std::atan(r)/r;
const double r = std::sqrt(x_d * x_d + y_d * y_d);
const double factor = focal_source * std::atan(r)/r;
x_d *= factor;
y_d *= factor;

View File

@ -197,7 +197,16 @@ void BatchToolPanelCoordinator::initSession ()
rotate->setAdjusterBehavior (options.baBehav[ADDSET_ROTATE_DEGREE]);
resize->setAdjusterBehavior (options.baBehav[ADDSET_RESIZE_SCALE]);
distortion->setAdjusterBehavior (options.baBehav[ADDSET_DIST_AMOUNT]);
perspective->setAdjusterBehavior (options.baBehav[ADDSET_PERSPECTIVE], options.baBehav[ADDSET_PERSP_CAM_FOCAL_LENGTH], options.baBehav[ADDSET_PERSP_CAM_SHIFT], options.baBehav[ADDSET_PERSP_CAM_ANGLE], options.baBehav[ADDSET_PERSP_PROJ_ANGLE], options.baBehav[ADDSET_PERSP_PROJ_SHIFT], options.baBehav[ADDSET_PERSP_PROJ_ROTATE], options.baBehav[ADDSET_PERSP_CAM_SCALE]);
perspective->setAdjusterBehavior (
options.baBehav[ADDSET_PERSPECTIVE],
options.baBehav[ADDSET_PERSP_CAM_FOCAL_LENGTH],
options.baBehav[ADDSET_PERSP_CAM_SHIFT],
options.baBehav[ADDSET_PERSP_CAM_ANGLE],
options.baBehav[ADDSET_PERSP_PROJ_ANGLE],
options.baBehav[ADDSET_PERSP_PROJ_SHIFT],
options.baBehav[ADDSET_PERSP_PROJ_ROTATE],
options.baBehav[ADDSET_PERSP_CAM_SCALE]
);
gradient->setAdjusterBehavior (options.baBehav[ADDSET_GRADIENT_DEGREE], options.baBehav[ADDSET_GRADIENT_FEATHER], options.baBehav[ADDSET_GRADIENT_STRENGTH], options.baBehav[ADDSET_GRADIENT_CENTER]);
pcvignette->setAdjusterBehavior (options.baBehav[ADDSET_PCVIGNETTE_STRENGTH], options.baBehav[ADDSET_PCVIGNETTE_FEATHER], options.baBehav[ADDSET_PCVIGNETTE_ROUNDNESS]);
cacorrection->setAdjusterBehavior (options.baBehav[ADDSET_CA]);

View File

@ -3312,7 +3312,10 @@ void ParamsEdited::combine(rtengine::procparams::ProcParams& toEdit, const rteng
}
if (perspective.camera_scale) {
toEdit.perspective.camera_scale = dontforceSet && options.baBehav[ADDSET_PERSP_CAM_FOCAL_LENGTH] ? toEdit.perspective.camera_scale + mods.perspective.camera_scale : mods.perspective.camera_scale;
toEdit.perspective.camera_scale =
dontforceSet && options.baBehav[ADDSET_PERSP_CAM_FOCAL_LENGTH]
? toEdit.perspective.camera_scale + mods.perspective.camera_scale
: mods.perspective.camera_scale;
}
if (perspective.camera_focal_length) {

View File

@ -474,7 +474,7 @@ void PerspCorrection::setDefaults (const ProcParams* defParams, const ParamsEdit
camera_crop_factor->setDefaultEditedState (pedited->perspective.camera_crop_factor ? Edited : UnEdited);
camera_focal_length->setDefaultEditedState (pedited->perspective.camera_focal_length ? Edited : UnEdited);
camera_pitch->setDefaultEditedState (pedited->perspective.camera_pitch ? Edited : UnEdited);
camera_scale->setDefaultEditedState (std::abs(pedited->perspective.camera_scale-1) > 1e-6 ? Edited : UnEdited);
camera_scale->setDefaultEditedState (std::abs(pedited->perspective.camera_scale - 1.0) > 1e-6 ? Edited : UnEdited);
camera_roll->setDefaultEditedState (pedited->perspective.camera_roll ? Edited : UnEdited);
camera_shift_horiz->setDefaultEditedState (pedited->perspective.camera_shift_horiz ? Edited : UnEdited);
camera_shift_vert->setDefaultEditedState (pedited->perspective.camera_shift_vert ? Edited : UnEdited);
@ -651,7 +651,16 @@ void PerspCorrection::defishChanged()
}
}
void PerspCorrection::setAdjusterBehavior (bool badd, bool camera_focal_length_add, bool camera_shift_add, bool camera_angle_add, bool projection_angle_add, bool projection_shift_add, bool projection_rotate_add, bool projection_scale_add)
void PerspCorrection::setAdjusterBehavior (
bool badd,
bool camera_focal_length_add,
bool camera_shift_add,
bool camera_angle_add,
bool projection_angle_add,
bool projection_shift_add,
bool projection_rotate_add,
bool projection_scale_add
)
{
horiz->setAddMode(badd);

View File

@ -129,7 +129,16 @@ public:
void methodChanged (void);
void defishChanged (void);
void requestApplyControlLines(void);
void setAdjusterBehavior (bool badd, bool camera_focal_length_add, bool camera_shift_add, bool camera_angle_add, bool projection_angle_add, bool projection_shift_add, bool projection_rotate_add, bool projection_scale_add);
void setAdjusterBehavior (
bool badd,
bool camera_focal_length_add,
bool camera_shift_add,
bool camera_angle_add,
bool projection_angle_add,
bool projection_shift_add,
bool projection_rotate_add,
bool projection_scale_add
);
void setControlLineEditMode(bool active);
void setEditProvider (EditDataProvider* provider) override;
void setLensGeomListener (LensGeomListener* listener)