请问下java的(0,0)在左上还是左下啊?在一个坐标系中已知两个矩形的左下顶点和右上顶点的坐标,如果两个矩形有重叠区域,求出重叠区域矩形的左下顶点坐标和右上顶点坐标public class Mytest{
public static void main(String[] args){
float x1=1.0f,y1=1.0f; //第一个矩形左下顶点
float x2=3.0f,y2=3.0f; //第一个矩形右上顶点
float x3=2.0f,y3=2.0f; //第二个矩形左下顶点
float x4=4.0f,y4=4.0f; //第二个矩形右上顶点
public static void main(String[] args){
float x1=1.0f,y1=1.0f; //第一个矩形左下顶点
float x2=3.0f,y2=3.0f; //第一个矩形右上顶点
float x3=2.0f,y3=2.0f; //第二个矩形左下顶点
float x4=4.0f,y4=4.0f; //第二个矩形右上顶点
|
|
|
|
|
|
Vy
左上边是0,0 从左往右x变大,从上往下y变大
public class Mytest{ public static void main(String[] args){ float x1=1.0f,y1=1.0f; //第一个矩形左下顶点 float x2=3.0f,y2=3.0f; //第一个矩形右上顶点 float x3=2.0f,y3=2.0f; //第二个矩形左下顶点 float x4=4.0f,y4=4.0f; //第二个矩形右上顶点 float x5,y5; //重合区域矩形左下顶点 float x6,y6; //重合区域矩形右上顶点 x5 = x1<=x3?x3:x1; y5 = y1<=y3?y3:y1; x6 = x2<=x4?x2:x4; y6 = y2<=y4?y2:y4; if(x5<x6&&y5<y6){ System.out.println("两个矩形有重叠区域。\n 重叠区域的矩形坐标为:"); System.out.println("x5= " + x5 + ", y5=" + y5); System.out.println("x6= " + x6 + ", y6=" + y6); } }}那这哥们写的意思。是X,Y轴在左下啊>
不是swing的,你如果想定义在右下都可以只要把逻辑想清楚
x5 = x1<=x3?x3:x1; //横坐标取 x1和x3的最大 (即x轴最靠右)
y5 = y1<=y3?y3:y1; //纵坐标取 y1和y3的最大 (即y轴最靠下)
这样得出的是相交的左下坐标
x6 = x2<=x4?x2:x4; //横坐标取 x2和x4的最小 (即x轴最靠左)
y6 = y2<=y4?y2:y4; //纵坐标取 y2和y4的最小 (即y轴最靠上)
这样得出的是相交的右上坐标
LZ可以自己画个图就知道了
0,0--------------------
| |-----|
| |--|-| | //右上坐标
| | |-|---| //左下坐标
| |----|
|