Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(201)

Unified Diff: ui/gfx/color_analysis.cc

Issue 649203003: Type conversion fixes, ui/gfx/ edition. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix test Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/gfx/color_analysis.cc
diff --git a/ui/gfx/color_analysis.cc b/ui/gfx/color_analysis.cc
index f23da853e43f119bf7ebb7e38d95db9f62f5b22d..24b0ca74fef9e755ab5ab6cddf0c298bafac20c3 100644
--- a/ui/gfx/color_analysis.cc
+++ b/ui/gfx/color_analysis.cc
@@ -68,9 +68,9 @@ class KMeanCluster {
// next iteration.
inline void RecomputeCentroid() {
if (counter > 0) {
- centroid[0] = aggregate[0] / counter;
- centroid[1] = aggregate[1] / counter;
- centroid[2] = aggregate[2] / counter;
+ centroid[0] = static_cast<uint8_t>(aggregate[0] / counter);
+ centroid[1] = static_cast<uint8_t>(aggregate[1] / counter);
+ centroid[2] = static_cast<uint8_t>(aggregate[2] / counter);
aggregate[0] = aggregate[1] = aggregate[2] = 0;
weight = counter;
@@ -468,24 +468,33 @@ gfx::Matrix3F ComputeColorCovariance(const SkBitmap& bitmap) {
// of R, G and B channels with (R, G, B)
int pixel_n = bitmap.width() * bitmap.height();
covariance.set(
- (static_cast<double>(rr_sum) / pixel_n -
- static_cast<double>(r_sum * r_sum) / pixel_n / pixel_n),
- (static_cast<double>(rg_sum) / pixel_n -
- static_cast<double>(r_sum * g_sum) / pixel_n / pixel_n),
- (static_cast<double>(rb_sum) / pixel_n -
- static_cast<double>(r_sum * b_sum) / pixel_n / pixel_n),
- (static_cast<double>(rg_sum) / pixel_n -
- static_cast<double>(r_sum * g_sum) / pixel_n / pixel_n),
- (static_cast<double>(gg_sum) / pixel_n -
- static_cast<double>(g_sum * g_sum) / pixel_n / pixel_n),
- (static_cast<double>(gb_sum) / pixel_n -
- static_cast<double>(g_sum * b_sum) / pixel_n / pixel_n),
- (static_cast<double>(rb_sum) / pixel_n -
- static_cast<double>(r_sum * b_sum) / pixel_n / pixel_n),
- (static_cast<double>(gb_sum) / pixel_n -
- static_cast<double>(g_sum * b_sum) / pixel_n / pixel_n),
- (static_cast<double>(bb_sum) / pixel_n -
- static_cast<double>(b_sum * b_sum) / pixel_n / pixel_n));
+ static_cast<float>(
+ static_cast<double>(rr_sum) / pixel_n -
+ static_cast<double>(r_sum * r_sum) / pixel_n / pixel_n),
+ static_cast<float>(
+ static_cast<double>(rg_sum) / pixel_n -
+ static_cast<double>(r_sum * g_sum) / pixel_n / pixel_n),
+ static_cast<float>(
+ static_cast<double>(rb_sum) / pixel_n -
+ static_cast<double>(r_sum * b_sum) / pixel_n / pixel_n),
+ static_cast<float>(
+ static_cast<double>(rg_sum) / pixel_n -
+ static_cast<double>(r_sum * g_sum) / pixel_n / pixel_n),
+ static_cast<float>(
+ static_cast<double>(gg_sum) / pixel_n -
+ static_cast<double>(g_sum * g_sum) / pixel_n / pixel_n),
+ static_cast<float>(
+ static_cast<double>(gb_sum) / pixel_n -
+ static_cast<double>(g_sum * b_sum) / pixel_n / pixel_n),
+ static_cast<float>(
+ static_cast<double>(rb_sum) / pixel_n -
+ static_cast<double>(r_sum * b_sum) / pixel_n / pixel_n),
+ static_cast<float>(
+ static_cast<double>(gb_sum) / pixel_n -
+ static_cast<double>(g_sum * b_sum) / pixel_n / pixel_n),
+ static_cast<float>(
+ static_cast<double>(bb_sum) / pixel_n -
+ static_cast<double>(b_sum * b_sum) / pixel_n / pixel_n));
return covariance;
}
@@ -529,9 +538,9 @@ bool ApplyColorReduction(const SkBitmap& source_bitmap,
else
c = source_color_row[x];
- float r = SkColorGetR(c);
- float g = SkColorGetG(c);
- float b = SkColorGetB(c);
+ U8CPU r = SkColorGetR(c);
danakj 2014/10/18 18:40:06 uint8?
Peter Kasting 2014/10/20 23:38:56 Done.
+ U8CPU g = SkColorGetG(c);
+ U8CPU b = SkColorGetB(c);
float gray_level = tr * r + tg * g + tb * b;
max_val = std::max(max_val, gray_level);
min_val = std::min(min_val, gray_level);
@@ -542,7 +551,7 @@ bool ApplyColorReduction(const SkBitmap& source_bitmap,
float scale = 0.0;
t0 = -min_val;
if (max_val > min_val)
- scale = 255.0 / (max_val - min_val);
+ scale = 255.0f / (max_val - min_val);
t0 *= scale;
tr *= scale;
tg *= scale;
@@ -561,9 +570,9 @@ bool ApplyColorReduction(const SkBitmap& source_bitmap,
else
c = source_color_row[x];
- float r = SkColorGetR(c);
- float g = SkColorGetG(c);
- float b = SkColorGetB(c);
+ U8CPU r = SkColorGetR(c);
danakj 2014/10/18 18:40:06 uint8?
Peter Kasting 2014/10/20 23:38:56 Done.
+ U8CPU g = SkColorGetG(c);
+ U8CPU b = SkColorGetB(c);
float gl = t0 + tr * r + tg * g + tb * b;
if (gl < 0)

Powered by Google App Engine
This is Rietveld 408576698