Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.08.2021, 20:07
Новичок на форуме
Отправить личное сообщение для DedPyhto Посмотреть профиль Найти все сообщения от DedPyhto
 
Регистрация: 08.08.2021
Сообщений: 2

Неправильно отображается цвет в canvas
Здравствуйте. Предполагалось, что при выполнении такого кода будут последовательно нарисованы синий круг, зеленый квадрат и розовый овал. Но почему-то круг заливается тоже розовым цветом. При том что даже рисуется первым по ходу выполнения кода. Подскажите, пожалуйста, что в коде не так, как добиться правильного цвета?

Код:
var cnv = document.getElementById('canvas');
var ctx = cnv.getContext('2d');	

function drawFig(type, color, coordX, coordY, size, angle){

	if(type=="square"){
		
		size = size*4/5;
		ctx.save(); // сохраняем стейт контекста
		ctx.translate(coordX, coordY); //
		ctx.rotate(angle);
		ctx.fillStyle = color;
		ctx.fillRect(-size/2, -size/2, size, size);
		ctx.restore();
	}
	else if(type=="circle"){
		
		ctx.arc(coordX, coordY, size/2, 0, Math.PI*2, true);  
		ctx.fillStyle = color;
		ctx.fill();
	}
	else if(type=="ellipse"){
		
		ctx.save();
		ctx.translate(coordX, coordY);
		ctx.rotate(angle);
		ctx.scale(1, 2);
		ctx.arc(0, 0, size/3, 0, Math.PI*2);
		ctx.restore();
		ctx.fillStyle = color;
		ctx.fill();
	}
}

drawFig("circle", "blue", 150, 150, 20, 0.5);
drawFig("square", "green", 200, 150, 20, 0.5);
drawFig("ellipse", "pink", 250, 150, 20, 0.5);
Ответить с цитированием
  #2 (permalink)  
Старый 08.08.2021, 20:41
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

DedPyhto,
beginPath
Ответить с цитированием
  #3 (permalink)  
Старый 08.08.2021, 20:57
Новичок на форуме
Отправить личное сообщение для DedPyhto Посмотреть профиль Найти все сообщения от DedPyhto
 
Регистрация: 08.08.2021
Сообщений: 2

Спасибо, уважаемый профессор! Заработало.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В некоторых браузерах неправильно отображается кодировка svp Javascript под браузер 18 16.03.2017 23:49
Неправильно отображается дата в скрипте norb Общие вопросы Javascript 0 23.11.2016 18:16
Canvas цвет линий darkmessiahan Общие вопросы Javascript 1 09.08.2013 06:05
Почему неправильно вырисовывается canvas? Amateur Events/DOM/Window 0 19.09.2012 10:45
Canvas (разный цвет линий) neurostep Общие вопросы Javascript 2 26.10.2009 16:23