Java-Gaming.org Hi !
 Featured games (90) games approved by the League of Dukes Games in Showcase (753) Games in Android Showcase (228) games submitted by our members Games in WIP (842) games currently in development
 News: Read the Java Gaming Resources, or peek at the official Java tutorials
 Show Posts Pages: [1]
1  Game Development / Game Mechanics / Re: !! Please help !! Java2d geometry question. on: 2008-04-09 13:10:46
Thanks for your help. I found out that it is in fact a lot simpler than I thought. By using arctan on the change in x and y I get the correct result:
 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15 `   public void calculateBearing() {            updateObstacleLine();            float dx = (botCentre.x - obstLoc.x);      float dy = (botCentre.y - obstLoc.y);            double thetaRadians = (StrictMath.atan2(dy,dx));       double thetaDegrees = StrictMath.toDegrees(thetaRadians);             targetAngle = thetaRadians;            targetBearingVec = new Vector2f(thetaDegrees);   }`

However, I now need to work out how to decide whether to rotate CW or CCW to get to this new bearing. Many thanks for your input.
2  Game Development / Game Mechanics / !! Please help !! Java2d geometry question. on: 2008-04-08 13:55:39
Hi! I have a java2d geometry problem that I am trying to solve for a project I'm currently working on. My maths isn't great by any stretch of the imagination, so it might be true that this is a lot simpler than I am imagining. Please forgive my ignorance. I have made a quick visual representation of what I am trying to achieve (see). The scenario is as follows:

My (circular) bot has a surrounding Circle representing it's sensor range. When this circle intercepts an obstacle (also a circle) my checkCollision() method returns true. The Bot class holds the bearing (in radians) which the bot is currently travelling towards. When the bot collides with the Obstacle, I want it to call the rotate() method - this rotates the bot by a small increment each game loop - until the bot is facing in the opposite direction to the Obstacle. I create a line to join the obstacle with the bot, representing the bearing of the Obstacle. But what I really need to know is theta - the angle between the current bearing and the new bearing.

My first idea was to call rotate() until the bearing line was parallel with the obstBearing line, however I can't work out how to do that and it might cause a problem if the bot rotates clockwise instead of anti-clockwise. So it looks like I'm in for some complicated trigonometry. Any ideas(?) much appreciated. Thanks for reading this.

Here's some of my code to give an idea of how my program works:

 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18 `public double calculateBearing() {      double newBearing = 0;      Line hypotenuse;      Vector2f intersection;      double m, c, x2, x1, y2, y1, r;            x1 = botCentre.x;      y1 = botCentre.y;      x2 = obstLoc.x;      y2 = obstLoc.y;      r = sensCircle.getRadius();      m = (botCentre.y - obstLoc.y)/(botCentre.x - obstLoc.y); // gradient (or slope) of line      c = y1 - (m * x1); // y intersection //calculations here            return newBearing;   }`

 Pages: [1]
 ivj94 (581 views) 2018-03-24 14:47:39 ivj94 (45 views) 2018-03-24 14:46:31 ivj94 (372 views) 2018-03-24 14:43:53 Solater (60 views) 2018-03-17 05:04:08 nelsongames (107 views) 2018-03-05 17:56:34 Gornova (147 views) 2018-03-02 22:15:33 buddyBro (690 views) 2018-02-28 16:59:18 buddyBro (90 views) 2018-02-28 16:45:17 xxMrPHDxx (492 views) 2017-12-31 17:17:51 xxMrPHDxx (728 views) 2017-12-31 17:15:51
 SHC 10x NuclearPixels 10x Zemlaynin 10x KaiHH 10x ByerN 7x Spasi 6x Guerra2442 6x philfrei 5x VaTTeRGeR 5x orangepascal 4x ags1 4x princec 3x ndnwarrior15 3x Trilarion 3x mesterh 3x Phased 2x
 Java Gaming Resourcesby philfrei2017-12-05 19:38:37Java Gaming Resourcesby philfrei2017-12-05 19:37:39Java Gaming Resourcesby philfrei2017-12-05 19:36:10Java Gaming Resourcesby philfrei2017-12-05 19:33:10List of Learning Resourcesby elect2017-03-13 14:05:44List of Learning Resourcesby elect2017-03-13 14:04:45SF/X Librariesby philfrei2017-03-02 08:45:19SF/X Librariesby philfrei2017-03-02 08:44:05
 java-gaming.org 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‑gaming.org