@Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); // Don't draw pin before image is ready so it doesn't move around during setup. if (!isReady()) { return; } paint.setAntiAlias(true); if (sPin != null && pin != null) { sourceToViewCoord(sPin, vPin); float vX = vPin.x - (pin.getWidth()/2); float vY = vPin.y - pin.getHeight(); canvas.drawBitmap(pin, vX, vY, paint); } }
@Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); // Don't draw anything before image is ready. if (!isReady()) { return; } paint.setAntiAlias(true); if (sPoints != null && sPoints.size() >= 2) { vPath.reset(); sourceToViewCoord(sPoints.get(0).x, sPoints.get(0).y, vPrev); vPath.moveTo(vPrev.x, vPrev.y); for (int i = 1; i < sPoints.size(); i++) { sourceToViewCoord(sPoints.get(i).x, sPoints.get(i).y, vPoint); vPath.quadTo(vPrev.x, vPrev.y, (vPoint.x + vPrev.x) / 2, (vPoint.y + vPrev.y) / 2); vPrev = vPoint; } paint.setStyle(Style.STROKE); paint.setStrokeCap(Cap.ROUND); paint.setStrokeWidth(strokeWidth * 2); paint.setColor(Color.BLACK); canvas.drawPath(vPath, paint); paint.setStrokeWidth(strokeWidth); paint.setColor(Color.argb(255, 51, 181, 229)); canvas.drawPath(vPath, paint); } }
@Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); // Don't draw pin before image is ready so it doesn't move around during setup. if (!isReady()) { return; } sCenter.set(getSWidth()/2, getSHeight()/2); sourceToViewCoord(sCenter, vCenter); float radius = (getScale() * getSWidth()) * 0.25f; paint.setAntiAlias(true); paint.setStyle(Style.STROKE); paint.setStrokeCap(Cap.ROUND); paint.setStrokeWidth(strokeWidth * 2); paint.setColor(Color.BLACK); canvas.drawCircle(vCenter.x, vCenter.y, radius, paint); paint.setStrokeWidth(strokeWidth); paint.setColor(Color.argb(255, 51, 181, 229)); canvas.drawCircle(vCenter.x, vCenter.y, radius, paint); }
@Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); if (!isReady()) { return; } if (dotCenter != null) { PointF vPoint = sourceToViewCoord(dotCenter); float scaledRadius = getScale() * radius; Paint paint = new Paint(); paint.setAntiAlias(true); paint.setStyle(Paint.Style.FILL); paint.setColor(getResources().getColor(R.color.ia_blue)); canvas.drawCircle(vPoint.x, vPoint.y, scaledRadius, paint); } } }
@Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); if (!isReady()) { Log.w(TAG, "drawing not yet ready, skipping drawing locations"); return; } final float scaledRadius = getScale() * mRadius; Iterator<LocationEntry> iterator = mKnownLocations.values().iterator(); while (iterator.hasNext()) { LocationEntry entry = iterator.next(); final float scaledRadiusAccuracy = getScale() * (mRadius + entry.mAccuracy); sourceToViewCoord(entry.mPoint, mRecyclePoint); mDotPaint.setColor(entry.mSource.color); mTextPaint.setColor(entry.mSource.color); canvas.drawCircle(mRecyclePoint.x, mRecyclePoint.y, scaledRadius, mDotPaint); mDotPaintAccuracy.setColor(entry.mSource.color); mDotPaintAccuracy.setAlpha(50); canvas.drawCircle(mRecyclePoint.x, mRecyclePoint.y, scaledRadiusAccuracy, mDotPaintAccuracy); canvas.drawText(entry.mSource.name, mRecyclePoint.x + (scaledRadius * 1.2f), mRecyclePoint.y + (scaledRadius / 2), mTextPaint); } }
@Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); // Don't draw anything before image is ready. if (!isReady() || cropRect == null) { return; } drawBackground(canvas); drawRect(canvas); drawCorners(canvas); if (touching) { drawGuidelines(canvas); } }