Here you can find the source of getClosestIndexEqualToOrLargerThanGivenCoordinate(double[] coordinates, double coordinate)
private static int getClosestIndexEqualToOrLargerThanGivenCoordinate(double[] coordinates, double coordinate)
//package com.java2s; /* MOD_V2.0//from w ww. j a va2s. c om * Copyright (c) 2012 OpenDA Association * All rights reserved. * * This file is part of OpenDA. * * OpenDA 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, either version 3 of * the License, or (at your option) any later version. * * OpenDA 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 OpenDA. If not, see <http://www.gnu.org/licenses/>. */ import java.util.Arrays; public class Main { private static int getClosestIndexEqualToOrLargerThanGivenCoordinate(double[] coordinates, double coordinate) { int i = Arrays.binarySearch(coordinates, coordinate); if (i >= 0) return i; int insertionIndex = -i - 1; if (insertionIndex <= 0) {//if outside grid. return -1; } if (insertionIndex >= coordinates.length) {//if outside grid. return coordinates.length; } return insertionIndex; } }