Author: post
Date: 2010-02-12 22:39:02 +0100 (Fri, 12 Feb 2010)
New Revision: 3179
Modified:
trunk/librawstudio/rs-settings.c
trunk/librawstudio/rs-settings.h
trunk/plugins/lensfun/lensfun.c
trunk/src/application.c
trunk/src/rs-batch.c
trunk/src/rs-cache.c
trunk/src/rs-preview-widget.c
trunk/src/rs-save-dialog.c
trunk/src/rs-toolbox.c
Log:
Lensfun: Adjust range to be -1.0 to 1.0 & make dark vignetting more sensitive.
Rename internal parameter from vignetting_k2 to vignetting, since it no longer
has any relation to the k2 parameter.
Modified: trunk/librawstudio/rs-settings.c
===================================================================
--- trunk/librawstudio/rs-settings.c 2010-02-12 21:22:00 UTC (rev 3178)
+++ trunk/librawstudio/rs-settings.c 2010-02-12 21:39:02 UTC (rev 3179)
@@ -55,7 +55,7 @@
PROP_DENOISE_CHROMA,
PROP_TCA_KR,
PROP_TCA_KB,
- PROP_VIGNETTING_K2,
+ PROP_VIGNETTING,
PROP_CHANNELMIXER_RED,
PROP_CHANNELMIXER_GREEN,
PROP_CHANNELMIXER_BLUE
@@ -125,9 +125,9 @@
-0.5, 0.5, 0.0, G_PARAM_READWRITE)
);
g_object_class_install_property(object_class,
- PROP_VIGNETTING_K2, g_param_spec_float(
- "vignetting_k2", _("Vignetting"), _("Vign"),
- -1.5, 1.5, 0.0, G_PARAM_READWRITE)
+ PROP_VIGNETTING, g_param_spec_float(
+ "vignetting", _("Vignetting"), _("Vign"),
+ -1.0, 1.0, 0.0, G_PARAM_READWRITE)
);
g_object_class_install_property(object_class,
PROP_CHANNELMIXER_RED, g_param_spec_float(
@@ -192,7 +192,7 @@
CASE(DENOISE_CHROMA, denoise_chroma);
CASE(TCA_KR, tca_kr);
CASE(TCA_KB, tca_kb);
- CASE(VIGNETTING_K2, vignetting_k2);
+ CASE(VIGNETTING, vignetting);
CASE(CHANNELMIXER_RED, channelmixer_red);
CASE(CHANNELMIXER_GREEN, channelmixer_green);
CASE(CHANNELMIXER_BLUE, channelmixer_blue);
@@ -229,7 +229,7 @@
CASE(DENOISE_CHROMA, denoise_chroma);
CASE(TCA_KR, tca_kr);
CASE(TCA_KB, tca_kb);
- CASE(VIGNETTING_K2, vignetting_k2);
+ CASE(VIGNETTING, vignetting);
CASE(CHANNELMIXER_RED, channelmixer_red);
CASE(CHANNELMIXER_GREEN, channelmixer_green);
CASE(CHANNELMIXER_BLUE, channelmixer_blue);
@@ -293,8 +293,8 @@
if (mask & MASK_TCA_KB)
rs_object_class_property_reset(object, "tca_kb");
- if (mask & MASK_VIGNETTING_K2)
- rs_object_class_property_reset(object, "vignetting_k2");
+ if (mask & MASK_VIGNETTING)
+ rs_object_class_property_reset(object, "vignetting");
if (mask & MASK_CHANNELMIXER_RED)
rs_object_class_property_reset(object, "channelmixer_red");
@@ -396,7 +396,7 @@
SETTINGS_COPY(DENOISE_CHROMA, denoise_chroma);
SETTINGS_COPY(TCA_KR, tca_kr);
SETTINGS_COPY(TCA_KB, tca_kb);
- SETTINGS_COPY(VIGNETTING_K2, vignetting_k2);
+ SETTINGS_COPY(VIGNETTING, vignetting);
SETTINGS_COPY(CHANNELMIXER_RED, channelmixer_red);
SETTINGS_COPY(CHANNELMIXER_GREEN, channelmixer_green);
SETTINGS_COPY(CHANNELMIXER_BLUE, channelmixer_blue);
Modified: trunk/librawstudio/rs-settings.h
===================================================================
--- trunk/librawstudio/rs-settings.h 2010-02-12 21:22:00 UTC (rev 3178)
+++ trunk/librawstudio/rs-settings.h 2010-02-12 21:39:02 UTC (rev 3179)
@@ -51,8 +51,7 @@
MASK_CHANNELMIXER_GREEN = (1<<13),
MASK_CHANNELMIXER_BLUE = (1<<14),
MASK_CHANNELMIXER = MASK_CHANNELMIXER_RED | MASK_CHANNELMIXER_GREEN |
MASK_CHANNELMIXER_BLUE,
- MASK_VIGNETTING_K2 = (1<<15),
- MASK_VIGNETTING = MASK_VIGNETTING_K2,
+ MASK_VIGNETTING = (1<<15),
MASK_ALL = 0x00ffffff,
} RSSettingsMask;
@@ -71,7 +70,7 @@
gfloat denoise_chroma;
gfloat tca_kr;
gfloat tca_kb;
- gfloat vignetting_k2;
+ gfloat vignetting;
gfloat channelmixer_red;
gfloat channelmixer_green;
gfloat channelmixer_blue;
Modified: trunk/plugins/lensfun/lensfun.c
===================================================================
--- trunk/plugins/lensfun/lensfun.c 2010-02-12 21:22:00 UTC (rev 3178)
+++ trunk/plugins/lensfun/lensfun.c 2010-02-12 21:39:02 UTC (rev 3179)
@@ -48,9 +48,7 @@
gfloat aperture;
gfloat tca_kr;
gfloat tca_kb;
- gfloat vignetting_k1;
- gfloat vignetting_k2;
- gfloat vignetting_k3;
+ gfloat vignetting;
gboolean distortion_enabled;
lfLens *selected_lens;
@@ -76,9 +74,7 @@
PROP_APERTURE,
PROP_TCA_KR,
PROP_TCA_KB,
- PROP_VIGNETTING_K1,
- PROP_VIGNETTING_K2,
- PROP_VIGNETTING_K3,
+ PROP_VIGNETTING,
PROP_DISTORTION_ENABLED,
};
@@ -154,21 +150,11 @@
-1, 1, 0.0, G_PARAM_READWRITE)
);
g_object_class_install_property(object_class,
- PROP_VIGNETTING_K1, g_param_spec_float(
- "vignetting_k1", "vignetting_k1", "vignetting_k1",
- -1, 2, 0.0, G_PARAM_READWRITE)
- );
- g_object_class_install_property(object_class,
- PROP_VIGNETTING_K2, g_param_spec_float(
- "vignetting_k2", "vignetting_k2", "vignetting_k2",
+ PROP_VIGNETTING, g_param_spec_float(
+ "vignetting", "vignetting", "vignetting",
-1.5, 1.5, 0.0, G_PARAM_READWRITE)
);
g_object_class_install_property(object_class,
- PROP_VIGNETTING_K3, g_param_spec_float(
- "vignetting_k3", "vignetting_k3", "vignetting_k3",
- -1, 2, 0.0, G_PARAM_READWRITE)
- );
- g_object_class_install_property(object_class,
PROP_DISTORTION_ENABLED, g_param_spec_boolean(
"distortion_enabled", "distortion_enabled",
"distortion_enabled",
FALSE, G_PARAM_READWRITE)
@@ -190,9 +176,7 @@
lensfun->aperture = 5.6;
lensfun->tca_kr = 0.0;
lensfun->tca_kb = 0.0;
- lensfun->vignetting_k1 = 0.0;
- lensfun->vignetting_k2 = 0.0;
- lensfun->vignetting_k3 = 0.0;
+ lensfun->vignetting = 0.0;
lensfun->distortion_enabled = FALSE;
/* Initialize Lensfun database */
@@ -234,15 +218,9 @@
case PROP_TCA_KB:
g_value_set_float(value, lensfun->tca_kb);
break;
- case PROP_VIGNETTING_K1:
- g_value_set_float(value, lensfun->vignetting_k1);
+ case PROP_VIGNETTING:
+ g_value_set_float(value, lensfun->vignetting);
break;
- case PROP_VIGNETTING_K2:
- g_value_set_float(value, lensfun->vignetting_k2);
- break;
- case PROP_VIGNETTING_K3:
- g_value_set_float(value, lensfun->vignetting_k3);
- break;
case PROP_DISTORTION_ENABLED:
g_value_set_boolean(value, lensfun->distortion_enabled);
break;
@@ -288,20 +266,10 @@
lensfun->tca_kb = g_value_get_float(value);
rs_filter_changed(RS_FILTER(lensfun),
RS_FILTER_CHANGED_PIXELDATA);
break;
- case PROP_VIGNETTING_K1:
- lensfun->vignetting_k1 = g_value_get_float(value);
+ case PROP_VIGNETTING:
+ lensfun->vignetting = g_value_get_float(value);
rs_filter_changed(RS_FILTER(lensfun),
RS_FILTER_CHANGED_PIXELDATA);
break;
- case PROP_VIGNETTING_K2:
- /* FIXME: only have one vignetting input */
- lensfun->vignetting_k1 = g_value_get_float(value);
- lensfun->vignetting_k2 = g_value_get_float(value);
- rs_filter_changed(RS_FILTER(lensfun),
RS_FILTER_CHANGED_PIXELDATA);
- break;
- case PROP_VIGNETTING_K3:
- lensfun->vignetting_k3 = g_value_get_float(value);
- rs_filter_changed(RS_FILTER(lensfun),
RS_FILTER_CHANGED_PIXELDATA);
- break;
case PROP_DISTORTION_ENABLED:
lensfun->DIRTY = TRUE;
lensfun->distortion_enabled =
g_value_get_boolean(value);
@@ -475,9 +443,7 @@
{
g_debug("Lensfun: Lens not found or lens is disabled.
Using neutral lense.");
- if (ABS(lensfun->tca_kr) + ABS(lensfun->tca_kb) +
- ABS(lensfun->vignetting_k1) +
ABS(lensfun->vignetting_k2) + ABS(lensfun->vignetting_k3)
- < 0.001)
+ if (ABS(lensfun->tca_kr) + ABS(lensfun->tca_kb) +
ABS(lensfun->vignetting) < 0.001)
{
rs_filter_response_set_image(response, input);
g_object_unref(input);
@@ -539,16 +505,19 @@
}
/* Set vignetting */
- if (ABS(lensfun->vignetting_k1) > 0.01f ||
ABS(lensfun->vignetting_k2) > 0.01f)
+ if (ABS(lensfun->vignetting) > 0.01f)
{
lfLensCalibVignetting vignetting;
vignetting.Model = LF_VIGNETTING_MODEL_PA;
vignetting.Distance = 1.0;
vignetting.Focal = lensfun->focal;
vignetting.Aperture = lensfun->aperture;
- vignetting.Terms[0] = -lensfun->vignetting_k1 * 0.5;
- vignetting.Terms[1] = -lensfun->vignetting_k2 * 0.05;
- vignetting.Terms[2] = -lensfun->vignetting_k3 * 0.015;
+ gfloat vign = -lensfun->vignetting * 1.5;
+ if (vign > 0.0f)
+ vign *= 4.0f;
+ vignetting.Terms[0] = vign * 0.5;
+ vignetting.Terms[1] = vign * 0.03;
+ vignetting.Terms[2] = vign * 0.005;
lf_lens_add_calib_vignetting((lfLens *)
lensfun->selected_lens, &vignetting);
} else
{
Modified: trunk/src/application.c
===================================================================
--- trunk/src/application.c 2010-02-12 21:22:00 UTC (rev 3178)
+++ trunk/src/application.c 2010-02-12 21:39:02 UTC (rev 3179)
@@ -91,7 +91,7 @@
"aperture", meta->aperture,
"tca_kr",
rs->photo->settings[rs->current_setting]->tca_kr,
"tca_kb",
rs->photo->settings[rs->current_setting]->tca_kb,
- "vignetting_k2",
rs->photo->settings[rs->current_setting]->vignetting_k2,
+ "vignetting",
rs->photo->settings[rs->current_setting]->vignetting,
NULL);
g_object_unref(lens);
}
@@ -208,7 +208,7 @@
"aperture", meta->aperture,
"tca_kr", photo->settings[snapshot]->tca_kr,
"tca_kb", photo->settings[snapshot]->tca_kb,
- "vignetting_k2",
photo->settings[snapshot]->vignetting_k2,
+ "vignetting", photo->settings[snapshot]->vignetting,
NULL);
g_object_unref(lens);
}
Modified: trunk/src/rs-batch.c
===================================================================
--- trunk/src/rs-batch.c 2010-02-12 21:22:00 UTC (rev 3178)
+++ trunk/src/rs-batch.c 2010-02-12 21:39:02 UTC (rev 3179)
@@ -552,7 +552,7 @@
"aperture",
meta->aperture,
"tca_kr",
photo->settings[setting_id]->tca_kr,
"tca_kb",
photo->settings[setting_id]->tca_kb,
- "vignetting_k2",
photo->settings[setting_id]->vignetting_k2,
+ "vignetting",
photo->settings[setting_id]->vignetting,
NULL);
g_object_unref(lens);
}
Modified: trunk/src/rs-cache.c
===================================================================
--- trunk/src/rs-cache.c 2010-02-12 21:22:00 UTC (rev 3178)
+++ trunk/src/rs-cache.c 2010-02-12 21:39:02 UTC (rev 3179)
@@ -133,8 +133,8 @@
xmlTextWriterWriteFormatElement(writer, BAD_CAST "tca_kr",
"%f", rss->tca_kr);
if (mask & MASK_TCA_KB)
xmlTextWriterWriteFormatElement(writer, BAD_CAST "tca_kb",
"%f", rss->tca_kb);
- if (mask & MASK_VIGNETTING_K2)
- xmlTextWriterWriteFormatElement(writer, BAD_CAST
"vignetting_k2", "%f", rss->vignetting_k2);
+ if (mask & MASK_VIGNETTING)
+ xmlTextWriterWriteFormatElement(writer, BAD_CAST "vignetting",
"%f", rss->vignetting);
if (mask & MASK_CURVE && rss->curve_nknots > 0)
{
gint i;
@@ -247,11 +247,11 @@
rss->tca_kb = rs_atof((gchar *) val);
xmlFree(val);
}
- else if ((!xmlStrcmp(cur->name, BAD_CAST "vignetting_k2")))
+ else if ((!xmlStrcmp(cur->name, BAD_CAST "vignetting")))
{
- mask |= MASK_VIGNETTING_K2;
+ mask |= MASK_VIGNETTING;
val = xmlNodeListGetString(doc, cur->xmlChildrenNode,
1);
- rss->vignetting_k2 = rs_atof((gchar *) val);
+ rss->vignetting = rs_atof((gchar *) val);
xmlFree(val);
}
else if ((!xmlStrcmp(cur->name, BAD_CAST "curve")))
Modified: trunk/src/rs-preview-widget.c
===================================================================
--- trunk/src/rs-preview-widget.c 2010-02-12 21:22:00 UTC (rev 3178)
+++ trunk/src/rs-preview-widget.c 2010-02-12 21:39:02 UTC (rev 3179)
@@ -2241,15 +2241,15 @@
{
gfloat tca_kr = 0.0;
gfloat tca_kb = 0.0;
- gfloat vignetting_k2 = 0.0;
+ gfloat vignetting = 0.0;
g_object_get(preview->photo->settings[preview->snapshot[view]], "tca_kr",
&tca_kr, NULL);
g_object_get(preview->photo->settings[preview->snapshot[view]], "tca_kb",
&tca_kb, NULL);
-
g_object_get(preview->photo->settings[preview->snapshot[view]],
"vignetting_k2", &vignetting_k2, NULL);
+
g_object_get(preview->photo->settings[preview->snapshot[view]], "vignetting",
&vignetting, NULL);
rs_filter_set_recursive(preview->filter_end[view],
"tca_kr", tca_kr,
"tca_kb", tca_kb,
- "vignetting_k2",
vignetting_k2,
+ "vignetting",
vignetting,
NULL);
}
}
Modified: trunk/src/rs-save-dialog.c
===================================================================
--- trunk/src/rs-save-dialog.c 2010-02-12 21:22:00 UTC (rev 3178)
+++ trunk/src/rs-save-dialog.c 2010-02-12 21:39:02 UTC (rev 3179)
@@ -281,7 +281,7 @@
"aperture", meta->aperture,
"tca_kr",
dialog->photo->settings[dialog->snapshot]->tca_kr,
"tca_kb",
dialog->photo->settings[dialog->snapshot]->tca_kb,
- "vignetting_k2",
dialog->photo->settings[dialog->snapshot]->vignetting_k2,
+ "vignetting",
dialog->photo->settings[dialog->snapshot]->vignetting,
NULL);
g_object_unref(lens);
}
Modified: trunk/src/rs-toolbox.c
===================================================================
--- trunk/src/rs-toolbox.c 2010-02-12 21:22:00 UTC (rev 3178)
+++ trunk/src/rs-toolbox.c 2010-02-12 21:39:02 UTC (rev 3179)
@@ -63,9 +63,9 @@
#define NCHANNELMIXER (3)
const static BasicSettings lens[] = {
- { "tca_kr", 0.001 },
- { "tca_kb", 0.001 },
- { "vignetting_k2", 0.01 },
+ { "tca_kr", 0.025 },
+ { "tca_kb", 0.025 },
+ { "vignetting", 0.025},
};
#define NLENS (3)
_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit