[java.awt.Rectangle] documentatie fout?

Pagina: 1
Acties:

  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 10-08 15:15
De documentatie van java.awt.Rectangle spreekt expliciet over dat de x en y members de linkerbovenhoek van de driehoek voorstellen ("...whose top-left corner is specified as (x, y)...").

Volgens mij klopt er geen bal van en stelt het juist de linkeronderhoek voor. Kijk bijvoorbeeld eens naar de volgende tests:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Rectangle r1, r2;
      
r1 = new Rectangle(0, 0, 50, 50);
r2 = new Rectangle(10, 30, 20, 20);
System.out.println(r1.intersection(r2));
// java.awt.Rectangle[x=10,y=30,width=20,height=20]
      
r1 = new Rectangle(0, 50, 50, 50);
r2 = new Rectangle(10, 30, 20, 20);
System.out.println(r1.intersection(r2));
// java.awt.Rectangle[x=10,y=50,width=20,height=0]
      
r1 = new Rectangle(0, 0, 50, 50);
r2 = new Rectangle(10, 40, 20, 20);
System.out.println(r1.intersection(r2));
// java.awt.Rectangle[x=10,y=40,width=20,height=10]
      
r1 = new Rectangle(0, 50, 50, 50);
r2 = new Rectangle(10, 40, 20, 20);
System.out.println(r1.intersection(r2));
// java.awt.Rectangle[x=10,y=50,width=20,height=10]

Kan iemand dit bevestigen, of heb ik het mis?

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 12:35

.oisyn

Moderator Devschuur®

Demotivational Speaker

de resultaten kloppen hoor. En ze zijn consistent met linksboven

Maar denk eens na, linksonder zou toch niet logisch zijn als je denkt dat positief x naar rechts is, en positief y naar onderen

in principe maakt het trouwens niet uit.. als je het assenstelsel definieert als positief x naar rechts en positief y naar boven dan is die hoek linksonder

+x naar links en +y naar onder is rechtsboven

en overal zullen de resultaten hetzelfde zijn

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 10-08 15:15
in principe maakt het trouwens niet uit.. als je het assenstelsel definieert als positief x naar rechts en positief y naar boven dan is die hoek linksonder
Je hebt gelijk. Ik ging er vanuit dat ze het assenstelsel gedefinieerd hadden als positief x naar rechts en positief y naar boven (zeg maar het wiskundige)...
... maar ze hebben voor die rectangles hetzelfde assenstelsel gehouden als voor de grafische operaties wordt gebruikt (achteraf eigenlijk wel logisch).

Maar welke coordinate space gebruikt wordt had er eigenlijk wel bij mogen staan.

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]