fix formatting; fix binomial filter params check; set format beforehand for SetPictureTransform

This commit is contained in:
Andrey Sidorov 2015-11-08 16:53:24 +11:00
parent 21cc95a8bb
commit 4a3f3f6075

View file

@ -170,12 +170,11 @@ exports.requireExt = function(display, callback)
} }
ext.SetPictureTransform = function(pid, matrix) { ext.SetPictureTransform = function(pid, matrix) {
var format = 'CCSL'; var format = 'CCSLLLLLLLLLLLLL';
if (matrix.length !== 9) if (matrix.length !== 9)
throw 'Render.SetPictureTransform: incorrect transform matrix. Must be array of 9 numbers'; throw 'Render.SetPictureTransform: incorrect transform matrix. Must be array of 9 numbers';
var params = [ext.majorOpcode, 28, 11, pid]; var params = [ext.majorOpcode, 28, 11, pid];
for (var i=0; i < 9; ++i) { for (var i=0; i < 9; ++i) {
format += 'L';
if (typeof matrix[i] !== 'number') if (typeof matrix[i] !== 'number')
throw 'Render.SetPictureTransform: matrix element must be a number'; throw 'Render.SetPictureTransform: matrix element must be a number';
params.push(floatToFix(matrix[i])); params.push(floatToFix(matrix[i]));
@ -201,7 +200,7 @@ exports.requireExt = function(display, callback)
reqLen += xutil.padded_length(name.length+3)/4 + filterParams.length; reqLen += xutil.padded_length(name.length+3)/4 + filterParams.length;
if (name == 'nearest' || name == 'bilinear' || name == 'fast' || name == 'good' || name == 'best') { if (name == 'nearest' || name == 'bilinear' || name == 'fast' || name == 'good' || name == 'best') {
if (filterParams.length != 0) { if (filterParams.length !== 0) {
throw 'Render.SetPictureFilter: "' + name + '" - unexpected parameters for filters'; throw 'Render.SetPictureFilter: "' + name + '" - unexpected parameters for filters';
} }
} else if (name == 'convolution') { } else if (name == 'convolution') {
@ -213,7 +212,7 @@ exports.requireExt = function(display, callback)
params.push(floatToFix(filterParams[i])); params.push(floatToFix(filterParams[i]));
} }
} else if (name == 'binomial' || name == 'gaussian') { } else if (name == 'binomial' || name == 'gaussian') {
if (filterParams.length < 2) { if (filterParams.length !== 1) {
throw 'Render.SetPictureFilter: "' + name + '" - incorrect number of parameters, must be exactly 1 number, instead got: ' + filterParams; throw 'Render.SetPictureFilter: "' + name + '" - incorrect number of parameters, must be exactly 1 number, instead got: ' + filterParams;
} }
format += 'L'; format += 'L';
@ -674,23 +673,23 @@ exports.requireExt = function(display, callback)
/*, /*,
* Operators only available in version 0.11, * Operators only available in version 0.11,
*/ */
BlendMinimum: 0x30, BlendMinimum : 0x30,
Multiply: 0x30, Multiply : 0x30,
Screen: 0x31, Screen : 0x31,
Overlay: 0x32, Overlay : 0x32,
Darken: 0x33, Darken : 0x33,
Lighten: 0x34, Lighten : 0x34,
ColorDodge: 0x35, ColorDodge : 0x35,
ColorBurn: 0x36, ColorBurn : 0x36,
HardLight: 0x37, HardLight : 0x37,
SoftLight: 0x38, SoftLight : 0x38,
Difference: 0x39, Difference : 0x39,
Exclusion: 0x3a, Exclusion : 0x3a,
HSLHue: 0x3b, HSLHue : 0x3b,
HSLSaturation: 0x3c, HSLSaturation: 0x3c,
HSLColor: 0x3d, HSLColor : 0x3d,
HSLLuminosity: 0x3e, HSLLuminosity: 0x3e,
BlendMaximum: 0x3e BlendMaximum : 0x3e
}; };
ext.PolyEdge = { ext.PolyEdge = {