user991429
user991429

Reputation: 322

How to draw points images on edge of circle of image

enter image description here

I'm really stuck on how to go about programming this. How to draw a circle in Android Canvas with a radius and points around the edge?

What is best approach to design this?

Upvotes: 9

Views: 3666

Answers (2)

Onur A.
Onur A.

Reputation: 3027

Well; drawing a circle is a very straightforward, inside your onDraw() method add this line

canvas.drawCircle(cX, cY, radius, paint); 

Simply provide the center point's x and y values and radius and paint object as well.

And for the pins around the corner you can go like this, e.g you want a pin at 30 degrees; with a simple trigonometric calculation, your pin's x and y values can be these;

pX = mX + radius * Math.cos(Math.toRadians(30));
pY = mY + radius * Math.sin(Math.toRadians(30));

So you can draw your pin at these x and y values respectively, also the degree can be changed.

Upvotes: 3

Sea
Sea

Reputation: 71

the point(cX,cY) you want draw

the center point(centerX,centerY) of the circle

the radius of the circle

the angle is the point(cX,cY) on the circle.

also see the image:

https://i.sstatic.net/2Dx2r.jpg

the code:

cX = centerX + radius*Math.cos(angle*Math.PI/180);
cY = centerY + radius*Math.sin(angle*Math.PI/180);
canvas.drawCircle(cX, cY, radius, paint); 

Upvotes: 7

Related Questions