From a9b27719b9f448879fb5ac821ee7ac1cf22b33ce Mon Sep 17 00:00:00 2001 From: Jorge Ruesga Date: Sun, 27 Oct 2013 13:46:12 +0100 Subject: Returns as a CyanogenMod project. Update author and Copyrights Signed-off-by: Jorge Ruesga --- .../wallpapers/photophase/utils/Utils.java | 83 ++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 src/org/cyanogenmod/wallpapers/photophase/utils/Utils.java (limited to 'src/org/cyanogenmod/wallpapers/photophase/utils/Utils.java') diff --git a/src/org/cyanogenmod/wallpapers/photophase/utils/Utils.java b/src/org/cyanogenmod/wallpapers/photophase/utils/Utils.java new file mode 100644 index 0000000..65d7f97 --- /dev/null +++ b/src/org/cyanogenmod/wallpapers/photophase/utils/Utils.java @@ -0,0 +1,83 @@ +/* + * Copyright (C) 2013 The CyanogenMod Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.cyanogenmod.wallpapers.photophase.utils; + +import android.content.Context; +import android.content.res.Configuration; +import android.content.res.Resources; +import android.graphics.RectF; +import android.util.DisplayMetrics; + +import java.util.Random; + +/** + * A helper class with utilities + */ +public class Utils { + + private static Random sRandom = new Random(); + + /** + * This method converts dp unit to equivalent device specific value in pixels. + * + * @param ctx The current context + * @param dp A value in dp (Device independent pixels) unit + * @return float A float value to represent Pixels equivalent to dp according to device + */ + public static float convertDpToPixel(Context ctx, float dp) { + Resources resources = ctx.getResources(); + DisplayMetrics metrics = resources.getDisplayMetrics(); + return dp * (metrics.densityDpi / 160f); + } + + /** + * Used to determine if the device is a tablet or not + * + * @param context The {@link Context} to use. + * @return True if the device is a tablet, false otherwise. + */ + public static final boolean isTablet(final Context context) { + final int layout = context.getResources().getConfiguration().screenLayout; + return (layout & Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_LARGE; + } + + /** + * Method that converts a rect from a vertex data + * + * @param vertex The vertex array + * @return RectF The rect data + */ + public static RectF rectFromVertex(float[] vertex) { + RectF rect = new RectF(); + rect.left = vertex[0]; + rect.top = vertex[7]; + rect.right = vertex[6]; + rect.bottom = vertex[1]; + return rect; + } + + /** + * Method that returns a random number between two numbers. + * + * @param low The low number + * @param high The high number + * @return int The random number + */ + public static int getNextRandom(int low, int high) { + return low + (int)(sRandom.nextDouble() * ((high - low) + 1)); + } +} \ No newline at end of file -- cgit v1.2.3