Я создаю небольшую html5 игру с использованием box2dweb.Я пытаюсь нарисовать линию на mousedown + mousemove.Эти линии поймают падающие квадраты, и цель состоит в том, чтобы отскочить квадраты от отверстий по обеим сторонам страницы.
Все, что я смог сделать, это нарисовать несколько квадратов вдоль mouseX и mouseY для имитациисплошная линия, но я не чувствую, что этого достаточно.Может ли кто-нибудь помочь мне понять, как нарисовать сплошную линию или отдельный многоугольник, который соответствует форме желаемой линии?
В процессе работы здесь http://acoolsip.com/html5/mobile/
в настоящее время методы, которыеобрабатывают щелчок мышью, перемещение мыши и рисование линий.
function addClick(x, y, dragging)
{
clickX.push(x);
clickY.push(y);
clickDrag.push(dragging);
bodyDef.type = b2Body.b2_staticBody;
fixDef.shape = new b2PolygonShape;
fixDef.shape.SetAsBox(
0.1 //Math.random() + 0.1 //half width
, 0.1 //Math.random() + 0.1 //half height
);
//the position of the created object
bodyDef.position.x = x;
bodyDef.position.y = y;
//bodyDef.angle = 1;
world.CreateBody(bodyDef).CreateFixture(fixDef);
}
document.addEventListener("mousedown", function(e) {
isMouseDown = true;
mouseX = (e.clientX - canvasPosition.x) / 30;
mouseY = (e.clientY - canvasPosition.y) / 30;
addClick(mouseX,mouseY);
}, false);
document.addEventListener('mousemove', function(e) {
if(isMouseDown == true)
{
isMouseMoving = true;
e.preventDefault();
mouseX = (e.clientX - canvasPosition.x) / 30;
mouseY = (e.clientY - canvasPosition.y) / 30;
addClick(mouseX, mouseY, true);
}
}, false);
Спасибо за вашу помощь.