Показать сообщение отдельно
  #1 (permalink)  
Старый 30.05.2014, 19:35
Профессор
Отправить личное сообщение для imedia Посмотреть профиль Найти все сообщения от imedia
 
Регистрация: 20.05.2014
Сообщений: 292

Анимация окружности канвас
Скажите пожалуйста как анимировать дугу от начала до конца чтобы она как бы открылась? Это должна быть раскрывающаяся диаграмма, И еще один вопрос как сделать четче канвас
<html>
<head>
<script src="/js/jquery-1.9.1.min.js"></script>
<style>
#canvas /* стили для canvas*/
{
    position:absolute;
    width:600px; /*ширина*/
    height:300px; /*высота*/
    display:block; /*превратим элемент в блочный*/
    /* background:rgba(255,255,255,1); */ /*цвет фона*/
    border: 1px solid black; /*рамка*/
	
}
</style>
</head>
<body>
<canvas id="canvas"> Браузер не поддерживает canvas</canvas>
<script>
window.onload = function (){
var canvas = document.getElementById('canvas');
var context = canvas.getContext('2d');
var context_a = canvas.getContext('2d');
//координаты центра окружности (распологается в центре холсте)
var x = canvas.width /2;
var y = canvas.height / 2;
 
//радиус 100px
var radius = 50;
 
//начальный и конечный углы (тригонометрия x_X)
var startAngle = 17*Math.PI/7;
var endAngle = 13*Math.PI/2.9;
var counterClockwise = false;//направление дуги. По умолчанию false

context.lineWidth = 22;
context.strokeStyle = 'rgba(255,255,255,1)';
 
//начало пути, рисуем круг с нашими параметрами и обводим
context.beginPath();
context.arc(x, y, radius, startAngle, endAngle, counterClockwise);
context.stroke();
var startAngle2 = 10*Math.PI/7;
var endAngle2 = 2*Math.PI/1.0;

var radius2 = 55;
 context_a.lineWidth = 8;
context_a.strokeStyle = 'rgba(204,0,65,1)';
 
//начало пути, рисуем круг с нашими параметрами и обводим
context_a.beginPath();
context_a.arc(x, y, radius2, startAngle2, endAngle2, counterClockwise);
context_a.stroke();

var radius2 = 45;
 context_a.lineWidth = 8;
context_a.strokeStyle = 'rgba(251,79,134,1)';
 
//начало пути, рисуем круг с нашими параметрами и обводим
context_a.beginPath();
context_a.arc(x, y, radius2, startAngle2, endAngle2, counterClockwise);
context_a.stroke();
//ширина и цвет круга





}

</script>
</body>
</html>
Ответить с цитированием