Bob
Bob

Reputation: 142

Drawing a rectangle inside a rectangle

I feel a little silly asking this but i'm not able to figure it out.. I am trying to draw a rectangle inside another rectangle and the math i'm using must be off. the inside rectangle is always one pixel to short.

b.fillRect( rectangleX+rectangleOutlineSize, rectangleY+rectangleOutlineSize, rectangleWidth-rectangleOutlineSize*2, rectangleHeight);

Its probably simple but I have been stuck on it for a hour and I have had trouble with it in the past.

Upvotes: 1

Views: 2458

Answers (1)

peter.petrov
peter.petrov

Reputation: 39457

In programming the coordinate system is a bit
weird, not exactly as (the usual one) in math.

*---------------------------------------> X +
|
|
|
|
|
|
|
v

Y +

I guess you're having a problem with that.
The * is the (0,0) which is usually the upper left
corner of your drawing area (e.g. of your screen).

Try something along these lines.

b.fillRect( x, y, width, height );

b.fillRect( x + (width-w)/2.0, y + (height-h)/2.0, w, h );


width - the width of the big rectangle
height - the height of the big rectangle
x,y - upper left corner of the big rectangle
w,h - width, height of the small rectangle

Upvotes: 4

Related Questions