Example #1
0
 /// <summary>
 /// Konvertierungskonstruktor: Erzeugt aus den Daten einer Klasse, die zur gleichen physikalischen Größe gehört wie z.B. Länge
 /// eine neue Instanz dieser Klasse.
 /// Hinweis: In den Ableitungen dieser abstrakten Basisklasse werden z.B. ToBaseUnitConversionFactor und OrderOfMagnitude
 /// festgelegt. Z.B. gibt es eine Klasse für Centimeter und eine zweite für Kilometer.
 /// </summary>
 /// <param name="mVector"></param>
 public MeasuredVector(MeasuredVector mVector)
 {
     try
     {
         if (ToBaseUnitConversionFactor == mVector.ToBaseUnitConversionFactor)
         {
             // Fall: Einheiten gleich
             if (OrderOfMagnitude == mVector.OrderOfMagnitude)
             {
                 // Fall: Größenordnungen gleich
                 CreateVector(mVector.Vector.coordinates);
             }
             else
             {
                 // Fall: Größenordnungen verschieden
                 CreateVector(Mag.FromTo(mVector.Vector, mVector.OrderOfMagnitude, OrderOfMagnitude).coordinates);
             }
         }
         else
         {
             // Fall: Einheiten verschieden
             CreateVector(Mag.FromTo(mVector.VectorInBaseUnit * (1 / ToBaseUnitConversionFactor), Mag.OrderOfMagnitudeEnum.One, OrderOfMagnitude).coordinates);
         }
     }
     catch (Exception ex)
     {
         throw new MeasuredVectorException("Konstruktor MeasuredVector(MeasuredVector mVector)", ex);
     }
 }
Example #2
0
 public override MeasuredVector Create(MeasuredVector mVector)
 {
     return(new LengthInInch((Length)mVector));
 }
Example #3
0
 public override MeasuredVector Create(MeasuredVector Value)
 {
     return(new AngleInDegree((Angle)Value));
 }
Example #4
0
 public override MeasuredVector Create(MeasuredVector mVector)
 {
     return(new LengthInLightYear((Length)mVector));
 }
Example #5
0
 public abstract MeasuredVector Create(MeasuredVector Value);
Example #6
0
 public override MeasuredVector Create(MeasuredVector Value)
 {
     return(new VelocityInMilesPerHour((Velocity)Value));
 }
Example #7
0
 public override MeasuredVector Create(MeasuredVector Value)
 {
     return(new LengthInMiles((Length)Value));
 }
Example #8
0
 public override MeasuredVector Create(MeasuredVector mVector)
 {
     return(new LengthInMeter <TOrderOfMagnitude>((Length)mVector));
 }
Example #9
0
 public override MeasuredVector Create(MeasuredVector Value)
 {
     return(new VelocityInMeterPerSec <TOrderOfMagnitude>((Velocity)Value));
 }
Example #10
0
 public override MeasuredVector Create(MeasuredVector Value)
 {
     return(new VelocityInKnots((Velocity)Value));
 }
Example #11
0
 public override MeasuredVector Create(MeasuredVector Value)
 {
     return(new ForceInNewton <TOrderOfMagnitude>((Force)Value));
 }
Example #12
0
 public override MeasuredVector Create(MeasuredVector Value)
 {
     return(new AccelerationInMeterPerSec <TOrderOfMagnitude>((Acceleration)Value));
 }