Example usage for android.graphics Color RGBToHSV

List of usage examples for android.graphics Color RGBToHSV

Introduction

In this page you can find the example usage for android.graphics Color RGBToHSV.

Prototype

public static void RGBToHSV(@IntRange(from = 0, to = 255) int red, @IntRange(from = 0, to = 255) int green,
        @IntRange(from = 0, to = 255) int blue, @Size(3) float hsv[]) 

Source Link

Document

Convert RGB components to HSV.

Usage

From source file:Main.java

public static int getContrastColor(int color) {
    float[] hsv = new float[3];
    Color.RGBToHSV(Color.red(color), Color.green(color), Color.blue(color), hsv);
    if (hsv[2] < 0.5) {
        hsv[2] = 0.7f;/*w w  w . ja v a2 s . c o  m*/
    } else {
        hsv[2] = 0.3f;
    }
    hsv[1] = hsv[1] * 0.2f;
    return Color.HSVToColor(hsv);
}

From source file:Main.java

/**
 * Convert an ARGB color to HSV components
 *
 * @param color an ARGB color/*from   ww w.j  av  a2 s  .  c  om*/
 * @return the HSV components for the specified color
 */
public static float[] colorToHSV(int color) {
    int r = Color.red(color);
    int g = Color.green(color);
    int b = Color.blue(color);

    float[] hsv = new float[3];
    Color.RGBToHSV(r, g, b, hsv);
    return hsv;
}

From source file:Main.java

private static float[] getMainHSV(Bitmap bm) {
    Bitmap onePixelBitmap = Bitmap.createScaledBitmap(bm, 1, 1, true);
    int pixel = onePixelBitmap.getPixel(0, 0);

    int red = Color.red(pixel);
    int blue = Color.blue(pixel);
    int green = Color.green(pixel);

    float[] hsvVals = new float[3];
    Color.RGBToHSV(red, green, blue, hsvVals);
    return hsvVals;
}

From source file:nl.hnogames.domoticz.Fragments.Switches.java

@Override
public void onColorButtonClick(final int idx) {
    ColorPickerDialog colorDialog = new ColorPickerDialog(getActivity());
    colorDialog.show();//  w w  w .j  a  v a 2  s . c  o  m
    colorDialog.onDismissListener(new ColorPickerDialog.DismissListener() {
        @Override
        public void onDismiss(int selectedColor) {
            float[] hsv = new float[3];
            Color.RGBToHSV(Color.red(selectedColor), Color.green(selectedColor), Color.blue(selectedColor),
                    hsv);
            Log.v(TAG, "Selected HVS Color: h:" + hsv[0] + " v:" + hsv[1] + " s:" + hsv[2]);

            mDomoticz.setRGBColorAction(idx, Domoticz.Json.Url.Set.RGBCOLOR, Math.round(hsv[0]), 100,
                    new setCommandReceiver() {
                        @Override
                        public void onReceiveResult(String result) {
                            Snackbar.make(coordinatorLayout, getContext().getString(R.string.color_set) + ": "
                                    + getSwitch(idx).getName(), Snackbar.LENGTH_SHORT).show();
                            getSwitchesData();
                        }

                        @Override
                        public void onError(Exception error) {
                            Snackbar.make(coordinatorLayout, getContext().getString(R.string.error_color),
                                    Snackbar.LENGTH_SHORT).show();
                        }
                    });
        }
    });
}

From source file:com.cs528.style.style.weather.WeatherActivity.java

public float transferFromRgbToH(int color) {
    int red = Color.red(color);
    int green = Color.green(color);
    int blue = Color.blue(color);

    float[] hsv = new float[3];

    Color.RGBToHSV(red, green, blue, hsv);
    return hsv[0];
}