@DarCKoder

Как сделать такой эффект на canvas?

Добрый день.
Заинтересовало, как можно сделать круг из чисел как на картинке?
9EJuFze.jpg
  • Вопрос задан
  • 578 просмотров
Решения вопроса 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
Просто круги: jsFiddle
var canvas = document.getElementById("myCanvas")
  , ctx = canvas.getContext("2d")
	, r
;
ctx.translate( 500/2, 500/2); // передвинуться на центр листа

ctx.font = "14px Arial";
ctx.textAlign = "center";
ctx.textBaseline="middle"; 

ctx.fillStyle = "#999";
for(r=100;r<=500;r+=20) circle(r);

function circle(r) {
  var dist = 16
		, n = Math.round( 2 * Math.PI * r / dist)
		, i
	;

	for(i=0;i<n;i++) {
		ctx.rotate( 2 * Math.PI / n); // повернуть лист
		ctx.fillText( Math.round(100*Math.random())%2?0:1,0,-r);
	}
}


35d5640debf1414581e8d3d14d596d7d.png

Для меняющегося плавными областями цвета цифр можно задействовать шум Перлина – берутся координаты (x,y) в которые попадает очередная цифра, и через шум Перлина получается её яркость – так получаются не хаотичные, а плавными областями, как облака, яркости. Напр. реализация шума Перлина на JS.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Negwereth
@Negwereth
lvivcss.com.ua
Немножечко геометрии и математических расчётов.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы