home *** CD-ROM | disk | FTP | other *** search
/ NeXT Education Software Sampler 1992 Fall / NeXT Education Software Sampler 1992 Fall.iso / Programming / Source / Car / Wheels.m < prev   
Encoding:
Text File  |  1992-06-16  |  1.1 KB  |  84 lines

  1.  
  2. /* Generated by Interface Builder */
  3.  
  4. #import "Car_main.h"
  5. #import "Wheels.h"
  6. #import "Car.h"
  7.  
  8. @implementation Wheels
  9.  
  10. - init
  11. {
  12.     [super init];
  13.     wheel = self;
  14.     return self;
  15. }
  16.  
  17. - read:(NXTypedStream *)stream
  18. {
  19.     [super read:stream];
  20.     NXReadTypes(stream,"fff",&diameter,&mass,&rollingResistance);
  21.     return self;
  22. }
  23.  
  24. - write:(NXTypedStream *)stream
  25. {
  26.     [super write:stream];
  27.     NXWriteTypes(stream,"fff",&diameter,&mass,&rollingResistance);
  28.     return self;    
  29. }
  30.  
  31. - (float)diameter
  32. {
  33.     return diameter;
  34. }
  35.  
  36. - setDiameter:(float)aNumber
  37. {
  38.     diameter = aNumber;
  39.     return self;
  40. }
  41.  
  42. - (float)mass
  43. {
  44.     return mass;
  45. }
  46.  
  47. - setMass:(float)aNumber
  48. {
  49.     mass = aNumber;
  50.     return self;
  51. }
  52.  
  53. - (float)rollingResistance
  54. {
  55.     return rollingResistance;
  56. }
  57.  
  58. - setRollingResistance:(float)aNumber
  59. {
  60.     rollingResistance = aNumber;
  61.     return self;
  62. }
  63.  
  64. - (float)speed
  65. {
  66. float carSpeed;
  67. float angVelocity;
  68.  
  69.     carSpeed = [car currentVelocity];
  70.     angVelocity = carSpeed / ( diameter / 2 );
  71.     return angVelocity;
  72. }
  73.  
  74. - inputTorque:(float)torque
  75. {
  76. float force;
  77.  
  78.     force = torque / ( diameter / 2 );
  79.     [car setRoadForce:force];
  80.     return self;
  81. }
  82.  
  83. @end
  84.