//
//  Particle.h
//  gravity
//
//  Created by Mike Mintz on 12/31/05.
//  Copyright 2005 __MyCompanyName__. All rights reserved.
//

#import <ScreenSaver/ScreenSaver.h>

@interface Particle : NSObject {
	ScreenSaverDefaults *defaults;
	NSString* edgesOption;
	NSString* relativisticOption;
	float gravityCoefficient;
	float electricCoefficient;
	float maxSpeed;
	NSSize viewSize;
    NSPoint position;
	NSPoint velocity;
	NSPoint netForce;
	float mass;
	float restMass;
	float charge;
}
- (id)initWithDefaults: (ScreenSaverDefaults*)_defaults withViewSize: (NSSize)size withPosition: (NSPoint)p0 withVelocity: (NSPoint)v0 withMass: (float)m0 withCharge: (float)q0;
- (void)loadDefaults;
- (NSPoint)position;
- (NSPoint)velocity;
- (float)mass;
- (float)restMass;
- (float)charge;
- (void)moveOneFrame;
- (void)stayOnScreenWithRadius: (float)radius;
- (void)getInfluencedBy: (Particle*)other;
@end
