Finding x and y offset of point after rotation
up vote
0
down vote
favorite
Hi so I'm stuck with a problem. My old projectile system would only shoot in 4 directions so when finding a new offset it was easy, I just had to inverse certain numbers
case "down":
xOffset = hitbox.xOffset;
yOffset = hitbox.yOffset;
width = hitbox.width;
height = hitbox.height;
break;
case "up":
xOffset = hitbox.xOffset;
yOffset = -hitbox.yOffset - hitbox.height;
width = hitbox.width;
height = hitbox.height;
break;
case "right":
xOffset = hitbox.yOffset;
yOffset = hitbox.xOffset;
width = hitbox.height;
height = hitbox.width;
break;
case "left":
xOffset = -hitbox.yOffset - hitbox.height;
yOffset = hitbox.xOffset;
width = hitbox.height;
height = hitbox.width;
break;
So this worked perfectly, but now the problem is I am no longer using rects for my hitbox and using circles, and i also now implemented 360 shooting.
I have a function that gets the x and y speed based on where I clicked but I do not have the function to get the new hitbox based on it.
newSpeed.x += speed * Math.cos(angle * Math.PI / 180);
newSpeed.y += speed * Math.sin(angle * Math.PI / 180);
How can I do something similar to get the new offset?
math game-physics trigonometry
add a comment |
up vote
0
down vote
favorite
Hi so I'm stuck with a problem. My old projectile system would only shoot in 4 directions so when finding a new offset it was easy, I just had to inverse certain numbers
case "down":
xOffset = hitbox.xOffset;
yOffset = hitbox.yOffset;
width = hitbox.width;
height = hitbox.height;
break;
case "up":
xOffset = hitbox.xOffset;
yOffset = -hitbox.yOffset - hitbox.height;
width = hitbox.width;
height = hitbox.height;
break;
case "right":
xOffset = hitbox.yOffset;
yOffset = hitbox.xOffset;
width = hitbox.height;
height = hitbox.width;
break;
case "left":
xOffset = -hitbox.yOffset - hitbox.height;
yOffset = hitbox.xOffset;
width = hitbox.height;
height = hitbox.width;
break;
So this worked perfectly, but now the problem is I am no longer using rects for my hitbox and using circles, and i also now implemented 360 shooting.
I have a function that gets the x and y speed based on where I clicked but I do not have the function to get the new hitbox based on it.
newSpeed.x += speed * Math.cos(angle * Math.PI / 180);
newSpeed.y += speed * Math.sin(angle * Math.PI / 180);
How can I do something similar to get the new offset?
math game-physics trigonometry
which language is that?
– phuclv
Nov 11 at 2:44
1
What do you need for the hitbox? You said you are using circles now, so don't you just need a position and a radius? Please explain your system in more detail (possibly with an image) - we can't guess how it looks like.
– Nico Schertler
Nov 11 at 8:20
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
Hi so I'm stuck with a problem. My old projectile system would only shoot in 4 directions so when finding a new offset it was easy, I just had to inverse certain numbers
case "down":
xOffset = hitbox.xOffset;
yOffset = hitbox.yOffset;
width = hitbox.width;
height = hitbox.height;
break;
case "up":
xOffset = hitbox.xOffset;
yOffset = -hitbox.yOffset - hitbox.height;
width = hitbox.width;
height = hitbox.height;
break;
case "right":
xOffset = hitbox.yOffset;
yOffset = hitbox.xOffset;
width = hitbox.height;
height = hitbox.width;
break;
case "left":
xOffset = -hitbox.yOffset - hitbox.height;
yOffset = hitbox.xOffset;
width = hitbox.height;
height = hitbox.width;
break;
So this worked perfectly, but now the problem is I am no longer using rects for my hitbox and using circles, and i also now implemented 360 shooting.
I have a function that gets the x and y speed based on where I clicked but I do not have the function to get the new hitbox based on it.
newSpeed.x += speed * Math.cos(angle * Math.PI / 180);
newSpeed.y += speed * Math.sin(angle * Math.PI / 180);
How can I do something similar to get the new offset?
math game-physics trigonometry
Hi so I'm stuck with a problem. My old projectile system would only shoot in 4 directions so when finding a new offset it was easy, I just had to inverse certain numbers
case "down":
xOffset = hitbox.xOffset;
yOffset = hitbox.yOffset;
width = hitbox.width;
height = hitbox.height;
break;
case "up":
xOffset = hitbox.xOffset;
yOffset = -hitbox.yOffset - hitbox.height;
width = hitbox.width;
height = hitbox.height;
break;
case "right":
xOffset = hitbox.yOffset;
yOffset = hitbox.xOffset;
width = hitbox.height;
height = hitbox.width;
break;
case "left":
xOffset = -hitbox.yOffset - hitbox.height;
yOffset = hitbox.xOffset;
width = hitbox.height;
height = hitbox.width;
break;
So this worked perfectly, but now the problem is I am no longer using rects for my hitbox and using circles, and i also now implemented 360 shooting.
I have a function that gets the x and y speed based on where I clicked but I do not have the function to get the new hitbox based on it.
newSpeed.x += speed * Math.cos(angle * Math.PI / 180);
newSpeed.y += speed * Math.sin(angle * Math.PI / 180);
How can I do something similar to get the new offset?
math game-physics trigonometry
math game-physics trigonometry
asked Nov 10 at 20:21
joe
377318
377318
which language is that?
– phuclv
Nov 11 at 2:44
1
What do you need for the hitbox? You said you are using circles now, so don't you just need a position and a radius? Please explain your system in more detail (possibly with an image) - we can't guess how it looks like.
– Nico Schertler
Nov 11 at 8:20
add a comment |
which language is that?
– phuclv
Nov 11 at 2:44
1
What do you need for the hitbox? You said you are using circles now, so don't you just need a position and a radius? Please explain your system in more detail (possibly with an image) - we can't guess how it looks like.
– Nico Schertler
Nov 11 at 8:20
which language is that?
– phuclv
Nov 11 at 2:44
which language is that?
– phuclv
Nov 11 at 2:44
1
1
What do you need for the hitbox? You said you are using circles now, so don't you just need a position and a radius? Please explain your system in more detail (possibly with an image) - we can't guess how it looks like.
– Nico Schertler
Nov 11 at 8:20
What do you need for the hitbox? You said you are using circles now, so don't you just need a position and a radius? Please explain your system in more detail (possibly with an image) - we can't guess how it looks like.
– Nico Schertler
Nov 11 at 8:20
add a comment |
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53243073%2ffinding-x-and-y-offset-of-point-after-rotation%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
which language is that?
– phuclv
Nov 11 at 2:44
1
What do you need for the hitbox? You said you are using circles now, so don't you just need a position and a radius? Please explain your system in more detail (possibly with an image) - we can't guess how it looks like.
– Nico Schertler
Nov 11 at 8:20