本文整理了Java中android.graphics.Color.HSVToColor()
方法的一些代码示例,展示了Color.HSVToColor()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Color.HSVToColor()
方法的具体详情如下:
包路径:android.graphics.Color
类名称:Color
方法名:HSVToColor
暂无
代码示例来源:origin: gzu-liyujiang/AndroidPicker
private int getColorForGradient(float[] hsv) {
// fixed: 17-1-7 Equality tests should not be made with floating point values.
if ((int) hsv[2] != 1) {
float oldV = hsv[2];
hsv[2] = 1;
int color = Color.HSVToColor(hsv);
hsv[2] = oldV;
return color;
} else {
return Color.HSVToColor(hsv);
}
}
代码示例来源:origin: wangdan/AisenWeiBo
public int getColor() {
return Color.HSVToColor(colorHSV);
}
代码示例来源:origin: googlemaps/android-maps-utils
protected int getColor(int clusterSize) {
final float hueRange = 220;
final float sizeRange = 300;
final float size = Math.min(clusterSize, sizeRange);
final float hue = (sizeRange - size) * (sizeRange - size) / (sizeRange * sizeRange) * hueRange;
return Color.HSVToColor(new float[]{
hue, 1f, .6f
});
}
代码示例来源:origin: timehop/sticky-headers-recyclerview
private int getRandomColor() {
SecureRandom rgen = new SecureRandom();
return Color.HSVToColor(150, new float[]{
rgen.nextInt(359), 1, 1
});
}
代码示例来源:origin: mikepenz/FastAdapter
private int getRandomColor() {
SecureRandom rgen = new SecureRandom();
return Color.HSVToColor(150, new float[]{
rgen.nextInt(359), 1, 1
});
}
代码示例来源:origin: naman14/Timber
public static int getStatusBarColor(int primaryColor) {
float[] arrayOfFloat = new float[3];
Color.colorToHSV(primaryColor, arrayOfFloat);
arrayOfFloat[2] *= 0.9F;
return Color.HSVToColor(arrayOfFloat);
}
代码示例来源:origin: prolificinteractive/material-calendarview
@OnClick(R.id.button_set_colors)
void onColorsClicked() {
int color = Color.HSVToColor(new float[] {
random.nextFloat() * 360,
1f,
0.75f
});
widget.setSelectionColor(color);
}
代码示例来源:origin: wdullaer/MaterialDateTimePicker
public static int darkenColor(int color) {
float[] hsv = new float[3];
Color.colorToHSV(color, hsv);
hsv[2] = hsv[2] * 0.8f; // value component
return Color.HSVToColor(hsv);
}
代码示例来源:origin: iSoron/uhabits
public static int setMinValue(int color, float newValue)
{
float hsv[] = new float[3];
Color.colorToHSV(color, hsv);
hsv[2] = Math.max(hsv[2], newValue);
return Color.HSVToColor(hsv);
}
代码示例来源:origin: iSoron/uhabits
/**
* Given a particular color, adjusts its value by a multiplier.
*/
private static int getPressedColor(int color) {
float[] hsv = new float[3];
Color.colorToHSV(color, hsv);
hsv[2] = hsv[2] * PRESSED_STATE_MULTIPLIER;
return Color.HSVToColor(hsv);
}
代码示例来源:origin: Rajawali/Rajawali
@Override
protected void applyTransformation() {
mMultipliedColor[0] = mDiffColor[0] * (float) mInterpolatedTime;
mMultipliedColor[1] = mDiffColor[1] * (float) mInterpolatedTime;
mMultipliedColor[2] = mDiffColor[2] * (float) mInterpolatedTime;
mMultipliedAlpha = (int) (mDiffAlpha * (float) mInterpolatedTime);
mAddedColor[0] = mFromColor[0] + mMultipliedColor[0];
mAddedColor[1] = mFromColor[1] + mMultipliedColor[1];
mAddedColor[2] = mFromColor[2] + mMultipliedColor[2];
((Object3D) mTransformable3D).setColor(Color.HSVToColor(mMultipliedAlpha + mFromAlpha, mAddedColor));
}
代码示例来源:origin: gzu-liyujiang/AndroidPicker
public static int toDarkenColor(@ColorInt int color, @FloatRange(from = 0f, to = 1f) float value) {
float[] hsv = new float[3];
Color.colorToHSV(color, hsv);
hsv[2] *= value;//HSV指Hue、Saturation、Value,即色调、饱和度和亮度,此处表示修改亮度
return Color.HSVToColor(hsv);
}
代码示例来源:origin: gzu-liyujiang/AndroidPicker
protected void onUpdateColorSelection(int x, int y) {
x = (int) Math.max(mGradientRect.left, Math.min(x, mGradientRect.right));
y = (int) Math.max(mGradientRect.top, Math.min(y, mGradientRect.bottom));
if (mIsBrightnessGradient) {
float b = pointToValueBrightness(x);
mHSV[2] = b;
mSelectedColor = Color.HSVToColor(mHSV);
} else {
float hue = pointToHue(x);
float sat = pointToSaturation(y);
mHSV[0] = hue;
mHSV[1] = sat;
mHSV[2] = 1f;
mSelectedColor = Color.HSVToColor(mHSV);
}
dispatchColorChanged(mSelectedColor);
}
代码示例来源:origin: wangdan/AisenWeiBo
private void drawPointerArrow(Canvas canvas) {
int centerX = getWidth() / 2;
int centerY = getHeight() / 2;
double tipAngle = (colorHSV[2] - 0.5f) * Math.PI;
double leftAngle = tipAngle + Math.PI / 96;
double rightAngle = tipAngle - Math.PI / 96;
double tipAngleX = Math.cos(tipAngle) * outerWheelRadius;
double tipAngleY = Math.sin(tipAngle) * outerWheelRadius;
double leftAngleX = Math.cos(leftAngle) * (outerWheelRadius + arrowPointerSize);
double leftAngleY = Math.sin(leftAngle) * (outerWheelRadius + arrowPointerSize);
double rightAngleX = Math.cos(rightAngle) * (outerWheelRadius + arrowPointerSize);
double rightAngleY = Math.sin(rightAngle) * (outerWheelRadius + arrowPointerSize);
arrowPointerPath.reset();
arrowPointerPath.moveTo((float) tipAngleX + centerX, (float) tipAngleY + centerY);
arrowPointerPath.lineTo((float) leftAngleX + centerX, (float) leftAngleY + centerY);
arrowPointerPath.lineTo((float) rightAngleX + centerX, (float) rightAngleY + centerY);
arrowPointerPath.lineTo((float) tipAngleX + centerX, (float) tipAngleY + centerY);
valuePointerArrowPaint.setColor(Color.HSVToColor(colorHSV));
valuePointerArrowPaint.setStyle(Style.FILL);
canvas.drawPath(arrowPointerPath, valuePointerArrowPaint);
valuePointerArrowPaint.setStyle(Style.STROKE);
valuePointerArrowPaint.setStrokeJoin(Join.ROUND);
valuePointerArrowPaint.setColor(Color.BLACK);
canvas.drawPath(arrowPointerPath, valuePointerArrowPaint);
}
代码示例来源:origin: googlemaps/android-maps-utils
/**
* Helper function for creation of color map
* Interpolates between two given colors using their HSV values.
*
* @param color1 First color
* @param color2 Second color
* @param ratio Between 0 to 1. Fraction of the distance between color1 and color2
* @return Color associated with x2
*/
static int interpolateColor(int color1, int color2, float ratio) {
int alpha = (int) ((Color.alpha(color2) - Color.alpha(color1)) * ratio + Color.alpha(color1));
float[] hsv1 = new float[3];
Color.RGBToHSV(Color.red(color1), Color.green(color1), Color.blue(color1), hsv1);
float[] hsv2 = new float[3];
Color.RGBToHSV(Color.red(color2), Color.green(color2), Color.blue(color2), hsv2);
// adjust so that the shortest path on the color wheel will be taken
if (hsv1[0] - hsv2[0] > 180) {
hsv2[0] += 360;
} else if (hsv2[0] - hsv1[0] > 180) {
hsv1[0] += 360;
}
// Interpolate using calculated ratio
float[] result = new float[3];
for (int i = 0; i < 3; i++) {
result[i] = (hsv2[i] - hsv1[i]) * (ratio) + hsv1[i];
}
return Color.HSVToColor(alpha, result);
}
代码示例来源:origin: wangdan/AisenWeiBo
private Bitmap createColorWheelBitmap(int width, int height) {
Bitmap bitmap = Bitmap.createBitmap(width, height, Config.ARGB_8888);
int colorCount = 12;
int colorAngleStep = 360 / 12;
int colors[] = new int[colorCount + 1];
float hsv[] = new float[] { 0f, 1f, 1f };
for (int i = 0; i < colors.length; i++) {
hsv[0] = (i * colorAngleStep + 180) % 360;
colors[i] = Color.HSVToColor(hsv);
}
colors[colorCount] = colors[0];
SweepGradient sweepGradient = new SweepGradient(width / 2, height / 2, colors, null);
RadialGradient radialGradient = new RadialGradient(width / 2, height / 2, colorWheelRadius, 0xFFFFFFFF, 0x00FFFFFF, TileMode.CLAMP);
ComposeShader composeShader = new ComposeShader(sweepGradient, radialGradient, PorterDuff.Mode.SRC_OVER);
colorWheelPaint.setShader(composeShader);
Canvas canvas = new Canvas(bitmap);
canvas.drawCircle(width / 2, height / 2, colorWheelRadius, colorWheelPaint);
return bitmap;
}
代码示例来源:origin: wangdan/AisenWeiBo
colorViewPaint.setColor(Color.HSVToColor(colorHSV));
canvas.drawPath(colorViewPath, colorViewPaint);
SweepGradient sweepGradient = new SweepGradient(centerX, centerY, new int[] { Color.BLACK, Color.HSVToColor(hsv), Color.WHITE }, null);
sweepGradient.setLocalMatrix(gradientRotationMatrix);
valueSliderPaint.setShader(sweepGradient);
valuePointerPaint.setColor(Color.HSVToColor(new float[] { 0f, 0f, 1f - colorHSV[2] }));
代码示例来源:origin: gzu-liyujiang/AndroidPicker
protected void setColor(int selectedColor, boolean updatePointers) {
Color.colorToHSV(selectedColor, mHSV);
if (mIsBrightnessGradient) {
mSelectedColorGradient[0] = getColorForGradient(mHSV);
mSelectedColor = Color.HSVToColor(mHSV);
buildShader();
if (mLastX != Integer.MIN_VALUE) {
mHSV[2] = pointToValueBrightness(mLastX);
}
selectedColor = Color.HSVToColor(mHSV);
}
if (updatePointers) {
updatePointerPosition();
}
mSelectedColor = selectedColor;
invalidate();
dispatchColorChanged(mSelectedColor);
}
代码示例来源:origin: robolectric/robolectric
@Test
public void HSVToColorShouldReverseColorToHSV() {
float[] hsv = new float[3];
Color.colorToHSV(Color.RED, hsv);
assertThat(Color.HSVToColor(hsv)).isEqualTo(Color.RED);
}
}
代码示例来源:origin: PhilJay/MPAndroidChart
Color.blue(originalColor), _hsvBuffer);
_hsvBuffer[2] *= 0.5f;
final int color = Color.HSVToColor(Color.alpha(originalColor), _hsvBuffer);
内容来源于网络,如有侵权,请联系作者删除!