Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (711)
Games in Android Showcase (213)
games submitted by our members
Games in WIP (785)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Bullet Angles  (Read 6789 times)
0 Members and 1 Guest are viewing this topic.
Offline ToXSiK

Senior Newbie

« Posted 2011-05-26 21:20:56 »

Well, geometry has finally become of use in my life, too bad I rarely payed attention in that class  Grin

So I have a character, lets call him bob.  Bob is inside of a 100 x 100 window, the center of bobs body is at (50, 50), hence he is in the middle of the screen.

The mouse position can be put anywhere around bob in this window, and we want to calculate the angle at which the mouse is in relationship 0 - 360 degrees.

Just like a unit circle (yay calc!)

I have been using Math.atan, but it only gives angles -90 - 90, is there a way to calculate these angles in relationship to a horizontal-radian line pointing to the right?

This may expain better:

Offline Abuse

JGO Ninja

Medals: 57

falling into the abyss of reality

« Reply #1 - Posted 2011-05-26 23:36:42 »

Offline SimonH
« Reply #2 - Posted 2011-05-26 23:39:22 »

Rummaging around in my libraries I found;
public float getBearing(float x, float y, float x1, float y1)
        float dx=x1-x;
        float dy=y1-y;
        double d=Math.atan2(dy,dx);
        if (d<0)
        return (float)d;

which gives a bearing where east (1,0) is 0'

People make games and games make people
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline cylab

JGO Kernel

Medals: 162

« Reply #3 - Posted 2011-05-28 10:46:41 »

I first read Bullet Angels and thought: that would make a nice shooter name. Smiley

Mathias - I Know What [you] Did Last Summer!
Offline evilfrenchguy

Junior Devvie

Medals: 3

« Reply #4 - Posted 2011-06-02 13:05:30 »

I have the code to do this on my laptop. I'll come back later and comment it out and post it for you.
Offline martin

Senior Newbie

« Reply #5 - Posted 2011-06-08 12:42:36 »

I have implemented the method that indicates the full polar coordinate (with angle in [0;2*PI]) of an input coordinate, which could be mouse-bob in your case.
Search for Coord2d.fullPolar() here:

I use it a lot and it works as expected.
Offline oNyx

JGO Coder

Medals: 2

pixels! :x

« Reply #6 - Posted 2011-06-09 01:56:35 »

I first read Bullet Angels and thought: that would make a nice shooter name. Smiley

FWIW there is a game called Bullet Witch:

弾幕 ☆ @mahonnaiseblog
Pages: [1]
  ignore  |  Print  
You cannot reply to this message, because it is very, very old.

numerical (272 views)
2017-02-21 07:32:16

numerical (270 views)
2017-02-21 07:31:46

theagentd (382 views)
2017-02-18 13:42:33

theagentd (381 views)
2017-02-18 13:35:16

h.pernpeintner (1548 views)
2017-01-24 22:39:11

h.pernpeintner (1535 views)
2017-01-24 22:38:32

Galdo (2100 views)
2017-01-12 13:44:09

Archive (2100 views)
2017-01-02 05:31:41

0AndrewShepherd0 (2637 views)
2016-12-16 03:58:39

0AndrewShepherd0 (2346 views)
2016-12-15 21:50:57
List of Learning Resources
by elect
2016-09-09 09:47:55

List of Learning Resources
by elect
2016-09-08 09:47:20

List of Learning Resources
by elect
2016-09-08 09:46:51

List of Learning Resources
by elect
2016-09-08 09:46:27

List of Learning Resources
by elect
2016-09-08 09:45:41

List of Learning Resources
by elect
2016-09-08 08:39:20

List of Learning Resources
by elect
2016-09-08 08:38:19

Rendering resources
by Roquen
2016-08-08 05:55:21 is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!