Question

Comment puis-je calculer l'arc entre deux cercles? L'arc doit être tangent aux deux points sur les cercles.

Voici une photo illustrant. Je suis en train de calculer le code et l'arc orange et l'arc bleu.

text alt

plus de détails:

Votre applet doit avoir 2 modes: 2D et 3D. L'utilisateur doit être en mesure de basculer entre eux en appuyant sur la barre d'espace. Dans le mode 2D, l'utilisateur peut modifier la position des quatre points de contrôle A, B, C et D et doit voir 4 arcs de cercle définis par ces points comme suit. Les mensonges d'arc rouges sur un cercle de centre A et de rayon AB || ||. Les mensonges d'arc vert sur un cercle de centre C et de rayon || CD ||. Les mensonges d'arc orange sur un cercle de support qui est tangente au cercle support de l'arc rouge à B et aussi tangente au cercle vert à un point E, que votre code doit calculer. Ce cercle de support ne doit pas séparer A et C (à savoir, A et C doit être soit à la fois dans ce cercle ou à l'extérieur de celui-ci). De même, les mensonges d'arc bleu sur un cercle qui ne sépare pas A et C et qui est tangente au cercle support de l'arc vert à D et est également tangente au cercle de l'arc rouge de soutien à un point F qui vous incontournable du programme calculer. L'arc rouge tourne dans le sens horaire à partir de F à B. L'orange arc fonctionne de B à E. Les pistes d'arc vert de E à D. Les pistes d'arc bleu de dos D à F. Ces quatre arcs forment un bord lisse d'une région S de l'avion. Notez que selon la position des points de contrôle, l'orange et le bleu arcs peuvent chacun être soit concave ou convexe. Dans la figure ci-dessous, l'arc bleu est concave. (Ci-dessus)

Était-ce utile?

La solution

Il y a beaucoup de "cercles tangents"!

text alt

Autres conseils

D'une manière générale, vous ne pouvez pas. Tracer des lignes droites par AB et CE, et de les étendre au point d'intersection. Appelez l'intersection M. Vous pouvez dessiner un arc par B et E qui est tangente aux cercles si et seulement si BM = EM.

Soit G le centre du cercle de l'arc entre B et E et H du cercle de l'arc entre F et D.

Le point clé est que la ligne qui coupe un cercle est une ligne tangente si et seulement si elle est perpendiculaire au rayon au point d'intersection. Cela signifie que si vous avez deux cercles tangents, le point de tangence et les centres des cercles sont colinéaires.

Cela signifie donc que le centre G est l'intersection de la ligne définie par B et A et la ligne définie par E et C. De manière similaire, le centre H est l'intersection de la ligne définie par A et F et la ligne définie par C et D.

Compte tenu de ces centres, vous pouvez déterminer les rayons des deux cercles seulement de la distance du centre au point de tangence. De là, vous pouvez utiliser des méthodes standard pour dessiner l'arc donné ses extrémités et le cercle, il fait partie.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top