Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.02.2015, 13:47
Новичок на форуме
Отправить личное сообщение для Sinhrofazathron Посмотреть профиль Найти все сообщения от Sinhrofazathron
 
Регистрация: 24.02.2015
Сообщений: 7

Создание картинки 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
}

P.S. Если имеется информация или книги про Fractal Flame Algorithm напишите пожалуйста, желательно на русском.

Последний раз редактировалось Sinhrofazathron, 01.03.2015 в 14:35. Причина: Дополнение
Ответить с цитированием
  #2 (permalink)  
Старый 28.02.2015, 15:06
Аватар для deivan
Профессор
Отправить личное сообщение для deivan Посмотреть профиль Найти все сообщения от deivan
 
Регистрация: 02.08.2012
Сообщений: 293

var const xmax = 1024, ymax = 768;


это что за const?...
Ответить с цитированием
  #3 (permalink)  
Старый 28.02.2015, 15:23
Аватар для Safort
Профессор
Отправить личное сообщение для Safort Посмотреть профиль Найти все сообщения от Safort
 
Регистрация: 23.12.2013
Сообщений: 1,856

Sinhrofazathron,
var const xmax = 1024, ymax = 768;

var служит для объявления переменной.
const нужен для объявления константы. Ты пытаешь создать константную переменную? WTF?
Ответить с цитированием
  #4 (permalink)  
Старый 01.03.2015, 14:38
Новичок на форуме
Отправить личное сообщение для Sinhrofazathron Посмотреть профиль Найти все сообщения от Sinhrofazathron
 
Регистрация: 24.02.2015
Сообщений: 7

В общем то не поэтому не работал, но исправил, хотя и объявляла в этой формулировке const независимо от того что стоял var. Спасибо. А по основной теме создания функций обращения к массиву pixelSet по X и Y есть предложения?
Ответить с цитированием
  #5 (permalink)  
Старый 01.03.2015, 15:34
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Можно получить информацию о цвете и с помощью метода getImageData(). А вообще-то у canvas не так и много методов, описание их в сети найти не сложно, например вот одно из них.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
canvas drawImage обрезает большие картинки bona Общие вопросы Javascript 4 25.03.2014 13:15
Подгрузка картинки на холсте в нутри функции.. Mike_Kharkov Общие вопросы Javascript 1 28.04.2013 04:22
Создание экземпляра Canvas не затрагивая HTML Tails Общие вопросы Javascript 2 09.03.2012 13:55
Помогите пожалуйста! Создание скроллинга картинки путем перетаскивания мышью... lebandrew Элементы интерфейса 1 12.01.2012 20:37
canvas код картинки в переменную псевдочеловек Общие вопросы Javascript 3 13.10.2011 19:53