Je voudrais savoir comment obtenir un point spécifique sur la circonférence d'un cercle, compte tenu d'un angle. Le diamètre du cercle est 1 et le point central du cercle est { X: 0.5, Y: 0.5 }
.
la source
Je voudrais savoir comment obtenir un point spécifique sur la circonférence d'un cercle, compte tenu d'un angle. Le diamètre du cercle est 1 et le point central du cercle est { X: 0.5, Y: 0.5 }
.
Vous pouvez résoudre ce problème en utilisant la trigonométrie de base. http://www.freehomeworkmathhelp.com/Trigonometry/Trigonometry_Introduction/trigonometry.html
Tan(angle) = Opposite / Adjacent
Sin(angle) = Opposite / Hypotenuse
Cos(angle) = Adjacent / Hypotenuse
Je me souviens toujours de ce qui précède
The Old Arab
Sat On His
Camel And Howled
Ce qui précède signifie que si nous avons l'angle et une longueur d'un triangle rectangle, nous pouvons calculer les longueurs des autres côtés. Heureusement, votre problème peut être considéré comme le calcul de la longueur des côtés du triangle:
Au-dessus, r est l'hypoténuse, x est adjacent et y est l'opposé.
Donc pour x:
Cos(a) = x / r
Cos(a) * r = x
x = Cos(a) * r
Et pour y:
Sin(a) = y / r
Sin(a) * r = y
y = Sin(a) * r
Cela suppose un cercle à (0, 0), nous ajoutons donc simplement le centre du cercle.
radius = 1;
CenterX = 0.5;
CenterY = 0.5;
x = Cos(angle) * radius + CenterX;
Y = Sin(angle) * radius + CenterY;
Remarque: Les fonctions mathématiques C # utilisent des angles en radians, donc si vous avez des degrés, convertissez-les d'abord:
radians = degrees * Math.PI / 180