Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Расширение методов (https://javascript.ru/forum/misc/31460-rasshirenie-metodov.html)

BorodinKO 08.09.2012 16:37

Расширение методов
 
ctx1 = document.getElementById('canvas1').getContext("2d");
ctx2 = document.getElementById('canvas2').getContext("2d");
ctx1.drawImage(img, 0, 0);//рисую какую-то картинку

можноли как нибудь добавить свои методы в canvas,
например чтобы было можно нарисовать звезду
ctx1.drawStar(x,y,w,h,r);
ctx2.drawStar(x,y,w,h,r);

FINoM 08.09.2012 18:22

Хотел предложить наследовать прототип канваса, но не получилось. Поэтому придется срать в прототип:
HTMLCanvasElement.prototype.drawStar  = function() {}

Amphiluke 08.09.2012 19:04

Расширять, наверное, нужно все-таки прототип CanvasRenderingContext2D, а не HTMLCanvasElement?
Плюс использовать Object.defineProperty().

FINoM 08.09.2012 19:06

А, да, наверно.


Часовой пояс GMT +3, время: 16:03.