List of usage examples for android.graphics Color HSVToColor
@ColorInt public static int HSVToColor(@Size(3) float hsv[])
From source file:com.abhinavjhanwar.android.egg.neko.Cat.java
public Bitmap createLargeBitmap(Context context) { final Resources res = context.getResources(); final int w = res.getDimensionPixelSize(android.R.dimen.notification_large_icon_width); final int h = res.getDimensionPixelSize(android.R.dimen.notification_large_icon_height); Bitmap result = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888); final Canvas canvas = new Canvas(result); final Paint pt = new Paint(); float[] hsv = new float[3]; Color.colorToHSV(mBodyColor, hsv); hsv[2] = (hsv[2] > 0.5f) ? (hsv[2] - 0.25f) : (hsv[2] + 0.25f); pt.setColor(Color.HSVToColor(hsv)); pt.setFlags(Paint.ANTI_ALIAS_FLAG); float r = w / 2; canvas.drawCircle(r, r, r, pt);//from w w w . j av a 2 s . c om int m = w / 10; slowDraw(canvas, m, m, w - m - m, h - m - m); return result; }
From source file:edu.stanford.mobisocial.dungbeetle.model.DbObject.java
private static int colorFor(Long hash) { float[] baseHues = Feed.getBaseHues(); ByteBuffer bos = ByteBuffer.allocate(8); bos.putLong(hash);//from w w w.j av a 2 s . c o m byte[] hashBytes = new byte[8]; bos.position(0); bos.get(hashBytes); SecureRandom r = new SecureRandom(hashBytes); float hsv[] = new float[] { baseHues[r.nextInt(baseHues.length)], r.nextFloat(), r.nextFloat() }; hsv[0] = hsv[0] + 20 * r.nextFloat() - 10; hsv[1] = hsv[1] * 0.2f + 0.8f; hsv[2] = hsv[2] * 0.2f + 0.8f; return Color.HSVToColor(hsv); }
From source file:com.miz.utils.ViewUtils.java
public static int darkenColor(int color, float factor) { final float[] hsv = new float[3]; Color.colorToHSV(color, hsv); hsv[2] *= factor;//from ww w . ja va 2 s . c om return Color.HSVToColor(hsv); }
From source file:org.voidsink.anewjkuapp.fragment.CalendarFragment2.java
@Override public void onLoadFinished(Loader<Cursor> loader, Cursor data) { ArrayList<WeekViewEvent> events = mWeekViewLoader.getEvents(loader.getId()); events.clear();/*from w w w . java2 s.com*/ Account mAccount = AppUtils.getAccount(getContext()); if (mAccount != null) { // fetch calendar colors final SparseIntArray mColors = new SparseIntArray(); ContentResolver cr = getContext().getContentResolver(); Cursor cursor = cr.query(CalendarContractWrapper.Calendars.CONTENT_URI(), new String[] { CalendarContractWrapper.Calendars._ID(), CalendarContractWrapper.Calendars.CALENDAR_COLOR() }, null, null, null); if (cursor != null) { while (cursor.moveToNext()) { int color = cursor.getInt(1); double lastContrast = ColorUtils.calculateContrast(color, mWeekView.getEventTextColor()); //Log.d(TAG, String.format("color=%d %d %d, contrast=%f", Color.red(color), Color.green(color), Color.blue(color), lastContrast)); while (lastContrast < 1.6) { float[] hsv = new float[3]; Color.colorToHSV(color, hsv); hsv[2] = Math.max(0f, hsv[2] - 0.033f); // darken color = Color.HSVToColor(hsv); lastContrast = ColorUtils.calculateContrast(color, mWeekView.getEventTextColor()); //Log.d(TAG, String.format("new color=%d %d %d, contrast=%f", Color.red(color), Color.green(color), Color.blue(color), lastContrast)); if (hsv[2] == 0) break; } mColors.put(cursor.getInt(0), color); } cursor.close(); } if (data != null) { data.moveToFirst(); data.moveToPrevious(); while (data.moveToNext()) { boolean allDay = data.getInt(CalendarUtils.COLUMN_EVENT_ALL_DAY) == 1; Calendar startTime = Calendar.getInstance(); if (allDay) { startTime.setTimeZone(TimeZone.getTimeZone("UTC")); } startTime.setTimeInMillis(data.getLong(CalendarUtils.COLUMN_EVENT_DTSTART)); Calendar endTime = Calendar.getInstance(); if (allDay) { endTime.setTimeZone(TimeZone.getTimeZone("UTC")); } endTime.setTimeInMillis(data.getLong(CalendarUtils.COLUMN_EVENT_DTEND)); if (allDay && endTime.getTimeInMillis() % DateUtils.DAY_IN_MILLIS == 0) { endTime.add(Calendar.MILLISECOND, -1); } WeekViewEvent event = new WeekViewEvent(data.getLong(CalendarUtils.COLUMN_EVENT_ID), data.getString(CalendarUtils.COLUMN_EVENT_TITLE), data.getString(CalendarUtils.COLUMN_EVENT_LOCATION), startTime, endTime, allDay); event.setColor(mColors.get(data.getInt(CalendarUtils.COLUMN_EVENT_CAL_ID))); events.add(event); } } } mWeekView.notifyDatasetChanged(); }
From source file:com.derrick.movies.MovieDetailsActivity.java
private void loadPoster(Context baseContext, String url, final ImageView image) { Glide.with(baseContext).load(IMAGE_BASE + url).diskCacheStrategy(DiskCacheStrategy.ALL) .listener(new RequestListener<String, GlideDrawable>() { @Override/*from w w w.j a v a2s .c o m*/ public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) { return false; } @Override public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) { Bitmap bitmap = ((GlideBitmapDrawable) resource).getBitmap(); if (bitmap != null) { Palette.from(bitmap).maximumColorCount(24).generate(new Palette.PaletteAsyncListener() { @Override public void onGenerated(Palette palette) { int vibrantColor = palette .getVibrantColor(getResources().getColor(R.color.colorPrimary)); float[] hsv = new float[3]; Color.colorToHSV(vibrantColor, hsv); hsv[2] *= 0.8f; int darkerColor = Color.HSVToColor(hsv); toolbarLayout.setContentScrimColor(vibrantColor); toolbarLayout.setStatusBarScrimColor(darkerColor); setStatusBarColor(darkerColor); TagLineLayout.setBackgroundColor(vibrantColor); //imageBackdrop.setColorFilter(new ColorMatrixColorFilter(geColorMatrix())); } }); } return false; } }).into(image); }
From source file:com.layer_net.stepindicator.StepIndicator.java
private int getColorToBG(float offset) { offset = Math.abs(offset);/*from ww w . ja v a2 s .co m*/ float[] hsv = new float[3]; hsv[0] = hsvBG[0] + (hsvCurrent[0] - hsvBG[0]) * offset; hsv[1] = hsvBG[1] + (hsvCurrent[1] - hsvBG[1]) * offset; hsv[2] = hsvBG[2] + (hsvCurrent[2] - hsvBG[2]) * offset; return Color.HSVToColor(hsv); }
From source file:com.layer_net.stepindicator.StepIndicator.java
private int getColorToProgess(float offset) { offset = Math.abs(offset);//from w w w. ja va2 s .co m float[] hsv = new float[3]; hsv[0] = hsvCurrent[0] + (hsvProgress[0] - hsvCurrent[0]) * offset; hsv[1] = hsvCurrent[1] + (hsvProgress[1] - hsvCurrent[1]) * offset; hsv[2] = hsvCurrent[2] + (hsvProgress[2] - hsvCurrent[2]) * offset; return Color.HSVToColor(hsv); }
From source file:com.ess.tudarmstadt.de.sleepsense.mgraph.SleepEstimGPlotFragment.java
private void drawChart(ArrayList<GraphViewData> data_line, String title, int graphR_id, boolean isBar) { if (data_line.size() > 0) { GraphViewData[] dataList = new GraphViewData[data_line.size()]; for (int i = 0; i < data_line.size(); i++) { dataList[i] = data_line.get(i); }//from w w w. ja v a2 s . com GraphViewSeriesStyle seriesStyle = new GraphViewSeriesStyle(); seriesStyle.setValueDependentColor(new ValueDependentColor() { @Override public int get(GraphViewDataInterface data) { // the higher the more green // return Color.rgb((int) ((75 / 255) * ((data.getY() / 50))), // (int) (255 * (data.getY() / 100)), 50); // the higher the more green (better color) float hue = Float.valueOf(String.valueOf(data.getY() * 120 / SLEEP_THREHOLD)); return Color.HSVToColor(new float[] { hue, 1f, 0.5f }); // if (data.getY() > SLEEP_THREHOLD){ // return Color.GREEN; // } // else if (data.getY() > 30) // return Color.YELLOW; // return Color.RED; } }); GraphViewSeries gvs_series = new GraphViewSeries("Sleep Pattern", seriesStyle, dataList); createGraph(title, gvs_series, graphR_id, isBar); } else { // clear Chart GraphViewData[] dataList = new GraphViewData[1]; dataList[0] = new GraphViewData(0.0, 0.0); GraphViewSeries gvs_series = new GraphViewSeries(dataList); createGraph(title, gvs_series, graphR_id, isBar); } }
From source file:de.vanita5.twittnuker.view.ColorPickerView.java
private int[] buildHueColorArray() { final int[] hue = new int[361]; int count = 0; for (int i = hue.length - 1; i >= 0; i--, count++) { hue[count] = Color.HSVToColor(new float[] { i, 1f, 1f }); }/*from w w w. j a va2 s . c o m*/ return hue; }
From source file:com.google.android.apps.muzei.settings.SettingsChooseSourceFragment.java
public void updateSources() { mSelectedSource = null;/*ww w. j a v a 2s .c o m*/ Intent queryIntent = new Intent(ACTION_MUZEI_ART_SOURCE); PackageManager pm = getActivity().getPackageManager(); mSources.clear(); List<ResolveInfo> resolveInfos = pm.queryIntentServices(queryIntent, PackageManager.GET_META_DATA); for (ResolveInfo ri : resolveInfos) { Source source = new Source(); source.label = ri.loadLabel(pm).toString(); source.icon = new BitmapDrawable(getResources(), generateSourceImage(ri.loadIcon(pm))); source.componentName = new ComponentName(ri.serviceInfo.packageName, ri.serviceInfo.name); if (ri.serviceInfo.descriptionRes != 0) { try { Context packageContext = getActivity() .createPackageContext(source.componentName.getPackageName(), 0); Resources packageRes = packageContext.getResources(); source.description = packageRes.getString(ri.serviceInfo.descriptionRes); } catch (PackageManager.NameNotFoundException e) { Log.e(TAG, "Can't read package resources for source " + source.componentName); } } Bundle metaData = ri.serviceInfo.metaData; source.color = Color.WHITE; if (metaData != null) { String settingsActivity = metaData.getString("settingsActivity"); if (!TextUtils.isEmpty(settingsActivity)) { source.settingsActivity = ComponentName .unflattenFromString(ri.serviceInfo.packageName + "/" + settingsActivity); } String setupActivity = metaData.getString("setupActivity"); if (!TextUtils.isEmpty(setupActivity)) { source.setupActivity = ComponentName .unflattenFromString(ri.serviceInfo.packageName + "/" + setupActivity); } source.color = metaData.getInt("color", source.color); try { float[] hsv = new float[3]; Color.colorToHSV(source.color, hsv); boolean adjust = false; if (hsv[2] < 0.8f) { hsv[2] = 0.8f; adjust = true; } if (hsv[1] > 0.4f) { hsv[1] = 0.4f; adjust = true; } if (adjust) { source.color = Color.HSVToColor(hsv); } if (Color.alpha(source.color) != 255) { source.color = Color.argb(255, Color.red(source.color), Color.green(source.color), Color.blue(source.color)); } } catch (IllegalArgumentException ignored) { } } mSources.add(source); } final String appPackage = getActivity().getPackageName(); Collections.sort(mSources, new Comparator<Source>() { @Override public int compare(Source s1, Source s2) { String pn1 = s1.componentName.getPackageName(); String pn2 = s2.componentName.getPackageName(); if (!pn1.equals(pn2)) { if (appPackage.equals(pn1)) { return -1; } else if (appPackage.equals(pn2)) { return 1; } } return s1.label.compareTo(s2.label); } }); redrawSources(); }