var x1= (rad*Math.cos(t)) + xoff;
var y1= (rad*k*Math.sin(t)) + yoff;
Движение по эллипсу
[HTML]<html>
<head>
<style type="text/css">
body div
{
position: absolute;
}
</style>
<script language="javascript" type="text/javascript">
var rad = 200;
var k=0.3;
var xoff = 300;
var yoff = 100;
var pi = Math.PI;
var inc = pi/300;
var t=0;
var t2=2*pi/3;
var t3=4*pi/3;
function updateTime()
{
var x1= (rad*Math.cos(t)) + xoff;
var y1= (rad*k*Math.sin(t)) + yoff;
var x2= (rad*Math.cos(t2)) + xoff;
var y2= (rad*k*Math.sin(t2)) + yoff;
var x3= (rad*Math.cos(t3)) + xoff;
var y3= (rad*k*Math.sin(t3)) + yoff;
t+= inc;
t2+= inc;
t3+= inc;
var divRunner1 = document.getElementById("runner1");
divRunner1.style.top = y1;
divRunner1.style.left = x1;
var divRunner2 = document.getElementById("runner2");
divRunner2.style.top = y2;
divRunner2.style.left = x2;
var divRunner3 = document.getElementById("runner3");
divRunner3.style.top = y3;
divRunner3.style.left = x3;
setTimeout('updateTime();', 25);
}
window.onload=updateTime
</script>
</head>
<body>
<div id="runner1">
<a href="#">first link text</a>
</div>
<div id="runner2">
<a href="#">second link text</a>
</div>
<div id="runner3">
<a href="#">third link text</a>
</div>
</body>
</html>[/HTML]
Вопрос: каким образом я должен поменять формулы изменения координат x и y чтобы эллипс располагался не горизонтально, а под углом к оси x? Посмотрите на приаттаченый файл, там я схематично это изобразил.
Вопрос запостил в общие вопросы, т.к. это скорее относиться к математике чем к программированию.
Код:
сделать
Код:
var x1_t = (rad * Math.cos(t))
var y1_t = (rad * k * Math.sin(t))
var x1 = x1_t * Math.cos(alpha) - y1_t * Math.sin(alpha) + xoff
var y1 = x1_t * Math.sin(alpha) + y1_t * Math.cos(alpha) + yoff
var y1_t = (rad * k * Math.sin(t))
var x1 = x1_t * Math.cos(alpha) - y1_t * Math.sin(alpha) + xoff
var y1 = x1_t * Math.sin(alpha) + y1_t * Math.cos(alpha) + yoff
Не проверял, если ошибся - напиши, исправлюсь.
Все работает. Спасибо.