blob: 3439b21975ed1a1e5062cabc3170ab9c8c6dd3e9 [file] [log] [blame]
import 'dart:math';
import 'hdr_image.dart';
/// Apply gamma scaling to the HDR image, in-place.
HdrImage hdrGamma(HdrImage hdr, {double gamma = 2.2}) {
for (int y = 0; y < hdr.height; ++y) {
for (int x = 0; x < hdr.width; ++x) {
var r = pow(hdr.getRed(x, y), 1.0 / gamma);
var g = pow(hdr.getGreen(x, y), 1.0 / gamma);
var b = pow(hdr.getBlue(x, y), 1.0 / gamma);
hdr.setRed(x, y, r);
hdr.setGreen(x, y, g);
hdr.setBlue(x, y, b);
}
}
return hdr;
}