Java Double Number mod modifySize(double[] x, int newLen)

Here you can find the source of modifySize(double[] x, int newLen)

Description

modify Size

License

Open Source License

Declaration

static public double[] modifySize(double[] x, int newLen) 

Method Source Code

//package com.java2s;
/**/*from   www .ja  v  a  2s  . c om*/
 * Copyright 2004-2006 DFKI GmbH.
 * All Rights Reserved.  Use is subject to license terms.
 *
 * This file is part of MARY TTS.
 *
 * MARY TTS is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License.
 *
 * This program 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 *
 */

public class Main {
    static public double[] modifySize(double[] x, int newLen) {
        double[] y = null;

        if (newLen < 1)
            return y;

        if (x.length == newLen || newLen == 1) {
            y = new double[x.length];
            System.arraycopy(x, 0, y, 0, x.length);
            return y;
        } else {
            y = new double[newLen];
            int mappedInd;
            int i;
            for (i = 1; i <= newLen; i++) {
                mappedInd = (int) (Math.floor((i - 1.0) / (newLen - 1.0) * (x.length - 1.0) + 1.5));
                if (mappedInd < 1)
                    mappedInd = 1;
                else if (mappedInd > x.length)
                    mappedInd = x.length;

                y[i - 1] = x[mappedInd - 1];
            }

            return y;
        }
    }
}

Related

  1. mod2pi(double vin)
  2. mod2pi_pos(double vin)
  3. modArray(double value, int mod, int div)
  4. modifiedGramSchmidt(double[][] s)
  5. modifiedJulianToJulian(double modifiedJulian)
  6. modPI2(double angle)
  7. Modulo(double x, double y)
  8. modulo10(double d, boolean round)
  9. moduloAngle(double angle)