Создание картинки canvas
Так как imageData содержит RGBA информацию хотел сделать координацию по Х и У с удобным доступом к цветам. Но функции прописаны не верно, не обращается через функцию к массиву pixselSet.
Если есть другие формулировки обращения к цветам напишите пожалуйста.
var canvas = document.getElementById('picture');
var ctx = canvas.getContext('2d');
const xmax = 1024, ymax = 768;
var pixelSet = ctx.createImageData(xmax,ymax); // Черный квадрат 1024 x 768 полностью прозрачный
var i, x, y;
pixelSet.data.prototype.Red = function(x, y, color){ this.data[this.x * this.y * 4 - 3] = this.color;}
pixelSet.data.prototype.Green = function(x, y, color){ this.data[this.x * this.y * 4 - 2] = this.color;}
pixelSet.data.prototype.Blue = function(x, y, color){ this.data[this.x * this.y * 4 - 1] = this.color;}
for(y=1;i<ymax;y++)
for(x=1;i<xmax;x++)
{
pixelSet.data.Red(x, y, 255); // всё красным
}
ctx.putImageData(pixelSet, 20,20); // с такими парам. выводит 1024х768
Либо можно для задания сразу RGB:
pixelSet.data.prototype.Red = function(x, y, R, G, B){
this.data[this.x * this.y * 4 - 3] = this.R; //Red
this.data[this.x * this.y * 4 - 2] = this.G; //Geen
this.data[this.x * this.y * 4 - 1] = this.B; //Blue
}
:help: P.S. Если имеется информация или книги про Fractal Flame Algorithm напишите пожалуйста, желательно на русском. |
var const xmax = 1024, ymax = 768; это что за const?... |
Sinhrofazathron,
var const xmax = 1024, ymax = 768; var служит для объявления переменной. const нужен для объявления константы. Ты пытаешь создать константную переменную? WTF? |
В общем то не поэтому не работал, но исправил, хотя и объявляла в этой формулировке const независимо от того что стоял var. Спасибо. А по основной теме создания функций обращения к массиву pixelSet по X и Y есть предложения?
|
Можно получить информацию о цвете и с помощью метода getImageData(). А вообще-то у canvas не так и много методов, описание их в сети найти не сложно, например вот одно из них.
|
| Часовой пояс GMT +3, время: 01:47. |