diff options
Diffstat (limited to 'js/models/color-model.js')
-rw-r--r-- | js/models/color-model.js | 39 |
1 files changed, 38 insertions, 1 deletions
diff --git a/js/models/color-model.js b/js/models/color-model.js index b06281f8..2c86422f 100644 --- a/js/models/color-model.js +++ b/js/models/color-model.js | |||
@@ -562,7 +562,44 @@ exports.ColorModel = Montage.create(Component, { | |||
562 | //Returning RGB object | 562 | //Returning RGB object |
563 | return {r: Math.round(r * 255), g: Math.round(g * 255), b: Math.round(b * 255)}; | 563 | return {r: Math.round(r * 255), g: Math.round(g * 255), b: Math.round(b * 255)}; |
564 | } | 564 | } |
565 | } | 565 | }, |
566 | //////////////////////////////////////////////////////////////////// | ||
567 | //Returns WebGL color array in [r, g, b, a] format where the values are [0,1] given a color object | ||
568 | colorToWebGl: { | ||
569 | enumerable: true, | ||
570 | value: function (color) { | ||
571 | var temp; | ||
572 | if (color) { | ||
573 | if(color.l !== undefined) { | ||
574 | temp = this.hslToRgb(color.h/360, color.s/100, color.l/100); | ||
575 | } else if (color.r !== undefined) { | ||
576 | temp = color; | ||
577 | } | ||
578 | temp.a = color.a; | ||
579 | } | ||
580 | //WebGL uses array | ||
581 | if (temp) { | ||
582 | return [temp.r/255, temp.g/255, temp.b/255, temp.a]; | ||
583 | } else { | ||
584 | return null; | ||
585 | } | ||
586 | } | ||
587 | }, | ||
588 | //////////////////////////////////////////////////////////////////// | ||
589 | //Returns CSS string given a WebGL color array in [r, g, b, a] format where the values are [0,1] | ||
590 | webGlToCss: { | ||
591 | enumerable: true, | ||
592 | value: function (color) { | ||
593 | if(color && (color.length === 4)) | ||
594 | { | ||
595 | return 'rgba(' + color[0]*255 + ', ' + color[1]*255 + ', ' + color[2]*255 + ', ' + color[3] +')'; | ||
596 | } | ||
597 | else | ||
598 | { | ||
599 | return null; | ||
600 | } | ||
601 | } | ||
602 | } | ||
566 | //////////////////////////////////////////////////////////////////// | 603 | //////////////////////////////////////////////////////////////////// |
567 | //////////////////////////////////////////////////////////////////// | 604 | //////////////////////////////////////////////////////////////////// |
568 | //////////////////////////////////////////////////////////////////// | 605 | //////////////////////////////////////////////////////////////////// |