예제 #1
0
        /******************************************************************/
        public double SubUnitFactor(SiDistance_SubUnits SubUnit)
        {
            double factor = 1.0;

            switch (SubUnit)
            {
            case SiDistance_SubUnits.Meter:
                factor = 1.0;
                break;

            case SiDistance_SubUnits.DecaMeter:
                factor = 1.0 / 10.0;
                break;

            case SiDistance_SubUnits.HectoMeter:
                factor = 1.0 / 100.0;
                break;

            case SiDistance_SubUnits.KiloMeter:
                factor = 1.0 / 1000.0;
                break;

            case SiDistance_SubUnits.Centimeter:
                factor = 100.0;
                break;
            }
            return(factor);
        }
예제 #2
0
        /****************************************************************/
        /******************************************************************/
        public string SubUnitString(SiDistance_SubUnits SubUnit)
        {
            string sub_unit_name = "";

            switch (SubUnit)
            {
            case SiDistance_SubUnits.Meter:
                sub_unit_name = "m";
                break;

            case SiDistance_SubUnits.DecaMeter:
                sub_unit_name = "dm";
                break;

            case SiDistance_SubUnits.HectoMeter:
                sub_unit_name = "hm";
                break;

            case SiDistance_SubUnits.KiloMeter:
                sub_unit_name = "km";
                break;

            case SiDistance_SubUnits.Centimeter:
                sub_unit_name = "cm";
                break;
            }
            return(sub_unit_name);
        }
예제 #3
0
 /****************** constructors ******************************/
 /**@brief A constructor where the value unit's is specified. */
 /**@param "x" The internal value is assigned to it. It is assumed x is distances */
 /**@param "SubUnit" The units in wich 'x' is expressed. */
 public SiDistance(double x, SiDistance_SubUnits SubUnit)
 {
     this.the_value = 0.0;
     this.the_value = x / SubUnitFactor(SubUnit);
 }
예제 #4
0
 /**@brief Returns the value converted to the selected units. */
 public double ToSubUnits(SiDistance_SubUnits SubUnit)
 {
     return(this.Value * SubUnitFactor(SubUnit));
 }