Android Unit Convert convertLength(float length, int fromScale, int toScale)

Here you can find the source of convertLength(float length, int fromScale, int toScale)

Description

convert from one unit of length to another

License

Open Source License

Parameter

Parameter Description
length the length reading to convert
fromScale the from scale, as define by one of the length related constants in this class
toScale the to scale, as defined by one of the length related constants in this class

Exception

Parameter Description
IllegalArgumentException if an invalid scale is provided

Return

the length in the to measurement scale

Declaration

public static float convertLength(float length, int fromScale,
        int toScale) 

Method Source Code

//package com.java2s;
/*/*from   w  w w . jav a 2s .c om*/
 * Copyright (C) 2012, 2013 The MaGDAA Project
 *
 * This file is part of the MaGDAA Library Software
 *
 * MaGDAA Library Software is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 3 of the License, or
 * (at your option) any later version.
 *
 * This source code is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this source code; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */

public class Main {
    /**
     * constant to define the millimetre scale
     */
    public static final int MILLIMETRE = 30;
    /**
     * constant to define the inch scale
     */
    public static final int INCH = 31;

    /**
     * convert from one unit of length to another
     * @param length the length reading to convert
     * @param fromScale the from scale, as define by one of the length related constants in this class
     * @param toScale the to scale, as defined by one of the length related constants in this class
     * @return the converted length measurement
     * @throws IllegalArgumentException if an invalid scale is provided
     * @return the length in the to measurement scale
     */
    public static float convertLength(float length, int fromScale,
            int toScale) {
        switch (fromScale) {
        case MILLIMETRE:
            // convert from millimetre
            switch (toScale) {
            case INCH:
                return convertFromMillimetreToInch(length);
            default:
                throw new IllegalArgumentException("invalid to scale");
            }
        case INCH:
            // convert from inch
            switch (toScale) {
            case MILLIMETRE:
                return convertFromInchToMillimetre(length);
            default:
                throw new IllegalArgumentException("invalid to scale");
            }
        default:
            throw new IllegalArgumentException("invalid from scale");
        }
    }

    private static float convertFromMillimetreToInch(float length) {
        return length * 0.0393700787f;

    }

    private static float convertFromInchToMillimetre(float length) {
        return length * 25.4f;
    }
}

Related

  1. convertUnits(double value, String oldUnits, String newUnits)
  2. formatHeartRate(int bpm)
  3. formatHeartRate(int bpm, boolean withUnit)
  4. convertToPerHour(float speedInMetersPerSecond, boolean imperial)
  5. convertBarometricPressure(float pressure, int fromScale, int toScale)
  6. convertFromHgInchToHpa(float hgInch)
  7. convertFromHpaToHgInch(float hpa)