2013-08-06 12 views
7

enter image description hereWie Punkte Bilder am Rande des Kreises des Bildes

Ich bin wirklich aufgeklebt ziehen, wie dieser über die Programmierung zu gehen. Wie zeichne einen Kreis in Android Canvas mit einem Radius und zeigt um den Rand?

Was ist der beste Ansatz, um dies zu entwerfen?

+0

möglich Duplikat http://stackoverflow.com/questions/18073084/draw-circle-and-points- on-circle-edge – Raghunandan

+1

mögliches Duplikat von [Zeichne einen Kreis mit einem Radius und zeigt um den Rand] (http://stackoverflow.com/questions/2508704/draw-a-circle-with-a-radius-and-points (um die Ecke) – g00dy

+0

Bitte helfen Sie mir ein und dasselbe. Hilfe wird geschätzt ... – user991429

Antwort

2

Gut; Zeichnen eines Kreises ist ein sehr einfach, in Ihrem onDraw() Methode

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

einfach bieten die x Mittelpunkt und y-Werte und Radius und Farbe Objekt auch diese Zeile hinzufügen.

Und für die Pins um die Ecke können Sie so gehen, z. B. möchten Sie einen Stift bei 30 Grad; Mit einer einfachen trigonometrischen Berechnung können die x- und y-Werte Ihres Pins diese sein;

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

So können Sie Ihre PIN bei diesen X- und Y-Werten zeichnen, auch der Grad kann geändert werden.

4

den Punkt (Cx, Cy) möchten Sie

den Mittelpunkt (centerX, centerY) des Kreises

der Radius des Kreises

der Winkel ist der Punkt (cX zeichnen, cY) auf dem Kreis.

siehe auch Bild:

http://i.stack.imgur.com/2Dx2r.jpg

der 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); 
+0

Während dieser Codeblock die Frage beantworten kann, wäre es am besten, wenn Sie eine kleine Erklärung dafür liefern könnten, warum dies der Fall ist. – David

+0

Ihre Antwort ist Suite Ergebnis am besten – Crawler

Verwandte Themen