2002-08-17 05:27:34 +00:00
|
|
|
#include "Point.h"
|
|
|
|
|
|
|
|
@implementation Point
|
|
|
|
|
|
|
|
- (id) initWithComponents: (integer)_x : (integer)_y
|
|
|
|
{
|
2002-11-01 01:31:37 +00:00
|
|
|
self = [super init];
|
2002-08-17 05:27:34 +00:00
|
|
|
x = _x;
|
|
|
|
y = _y;
|
|
|
|
return self;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (id) initWithPoint: (Point) aPoint
|
|
|
|
{
|
2002-11-01 01:31:37 +00:00
|
|
|
self = [super init];
|
2002-08-17 05:27:34 +00:00
|
|
|
|
|
|
|
if (!self || !aPoint)
|
|
|
|
return NIL;
|
|
|
|
|
|
|
|
x = [aPoint x];
|
|
|
|
y = [aPoint y];
|
|
|
|
|
|
|
|
return self;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (id) copy
|
|
|
|
{
|
|
|
|
local id myCopy = [super copy];
|
|
|
|
|
|
|
|
if (!myCopy)
|
|
|
|
myCopy = [[self class] alloc];
|
|
|
|
|
|
|
|
return [myCopy initWithComponents: x : y];
|
|
|
|
}
|
|
|
|
|
|
|
|
- (id) x
|
|
|
|
{
|
|
|
|
return x;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (id) y
|
|
|
|
{
|
|
|
|
return y;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (void) setPoint: (Point)aPoint
|
|
|
|
{
|
|
|
|
x = [aPoint x];
|
|
|
|
y = [aPoint y];
|
|
|
|
}
|
|
|
|
|
|
|
|
- (void) addPoint: (Point) aPoint
|
|
|
|
{
|
|
|
|
x += [aPoint x];
|
|
|
|
y += [aPoint y];
|
|
|
|
}
|
|
|
|
|
|
|
|
- (void) subtractPoint: (Point) aPoint
|
|
|
|
{
|
|
|
|
x -= [aPoint x];
|
|
|
|
y -= [aPoint y];
|
|
|
|
}
|
|
|
|
|
|
|
|
@end
|