This is Line.m in view mode; [Download] [Up]
// Written by Don Yacktman Copyright (c) 1994 by Don Yacktman.
// Version 1.0. All rights reserved.
//
// This notice may not be removed from this source code.
//
// This program is included in the MiscKit by permission from the author
// and its use is governed by the MiscKit license, found in the file
// "LICENSE.rtf" in the MiscKit distribution. Please refer to that file
// for a list of all applicable permissions and restrictions.
//
#import "Line.h"
@implementation Line
- setStart:(NXPoint *)s end:(NXPoint *)e
{
start.x = s->x;
start.y = s->y;
end.x = e->x;
end.y = e->y;
return self;
}
- render
{
PSmoveto(start.x, start.y);
PSlineto(end.x, end.y);
PSstroke();
return self;
}
- renderIfInRect:(const NXRect *)aRect
{
NXRect tempRect = { { MIN(start.x, end.x), MIN(start.y, end.y) },
{ MAX(ABS(start.x-end.x), 0.001), MAX(ABS(start.y-end.y), 0.001) } };
if (NXIntersectsRect(aRect, &tempRect)) {
[self render];
}
return self;
}
@end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.