This is a Java Program to check whether a point lies inside, outside or on the circle. For any point t (xt, yt) on the plane, its position with respect to the circle defined by 3 points (x1, y1) , (x2, y2), (x3, y3).
s = (x-xt)^2 + (y-yt)^2 – r*r
If s < 0, t lies inside the circle; if s > 0, t lies outside the circle; if s = 0, t lies on the circle.
Here is the source code of the Java Program to Check if a Point d lies Inside or Outside a Circle Defined by Points a, b, c in a Plane. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is a java program to check whether point d lies inside or outside the circle defined by a, b, c points import java.util.Random; import java.util.Scanner; public class Position_Point_WRT_Circle { public static void main(String args[]) { Random random = new Random(); int x1, y1, x2, y2, x3, y3; double m1, m2, c1, c2, r; x1 = random.nextInt(10); y1 = random.nextInt(10); x2 = random.nextInt(10); y2 = random.nextInt(10); x3 = random.nextInt(10); y3 = random.nextInt(10); m1 = (y1 - y2) / (x1 - x2); m2 = (y3 - y2) / (x3 - x2); c1 = ((m1 * m2 * (y3 - y1)) + (m1 * (x2 + x3)) - (m2 * (x1 + x2))) / (2 * (m1 - m2)); c2 = ((((x1 + x2) / 2) - c1) / (-1 * m1)) + ((y1 + y2) / 2); r = Math.sqrt(((x3 - c1) * (x3 - c1)) + ((y3 - c2) * (y3 - c2))); System.out.println("The points on the circle are: (" + x1 + ", " + y1 + "), (" + x2 + ", " + y2 + "), (" + x3 + ", " + y3 + ")"); System.out.println("The center of the circle is (" + c1 + ", " + c2 + ") and radius is " + r); System.out.println("Enter the point : <x>,<y>"); Scanner scan = new Scanner(System.in); int x, y; x = scan.nextInt(); y = scan.nextInt(); double s = ((x - c1) * (x - c1)) + ((y - c2) * (y - c1)) - (r * r); if (s < 0) System.out.println("The point lies inside the circle"); else if (s > 0) System.out.println("The point lies outside the circle"); else System.out.println("The point lies on the circle"); scan.close(); } }
Output:
$ javac Position_Point_WRT_Circle.java $ java Position_Point_WRT_Circle The points on the circle are: (5, 9), (4, 7), (2, 0) The center of the circle is (34.5, 23.25) and radius is 39.960136386153636 Enter the point : <x>,<y> 3 5 The point lies inside the circle The points on the circle are: (0, 1), (2, 3), (5, 4) The center of the circle is (3.5, 4.5) and radius is 1.5811388300841898 Enter the point : <x>,<y> 1 2 The point lies outside the circle
Related posts:
Java Program to Implement Sorted List
The Difference Between Collection.stream().forEach() and Collection.forEach()
Java Program to Implement Flood Fill Algorithm
How to Get a Name of a Method Being Executed?
Java Byte Array to InputStream
Java Program to Implement the linear congruential generator for Pseudo Random Number Generation
Spring Boot - Tomcat Deployment
How to Manually Authenticate User with Spring Security
Introduction to Spring Data JDBC
Consuming RESTful Web Services
Hướng dẫn sử dụng Printing Service trong Java
Java Program to Find the Shortest Path from Source Vertex to All Other Vertices in Linear Time
Java Program to Check Whether Graph is DAG
Java Program to Generate All Possible Combinations of a Given List of Numbers
Introduction to Spring Cloud Netflix – Eureka
Java Program to Implement Shunting Yard Algorithm
Concrete Class in Java
Introduction to Project Reactor Bus
Annotation trong Java 8
Immutable Objects in Java
Class Loaders in Java
A Guide to HashSet in Java
Spring Security Registration – Resend Verification Email
The HttpMediaTypeNotAcceptableException in Spring MVC
Java Program to Find a Good Feedback Edge Set in a Graph
Spring Boot - Zuul Proxy Server and Routing
A Guide to LinkedHashMap in Java
How to Get the Last Element of a Stream in Java?
Spring Data Reactive Repositories with MongoDB
Inheritance and Composition (Is-a vs Has-a relationship) in Java
Guide to CountDownLatch in Java
Java Program to Find the Median of two Sorted Arrays using Binary Search Approach