Inscription / Connexion Nouveau Sujet
Niveau exercices
Partager :

Placer un triangle isocèle dans un cercle

Posté par
Chris37000
21-06-18 à 08:25

Bonjour à tous,

J'ai un petit souci avec un projet informatique.
Pour mon boulot, je suis informaticien et malgré que j'étais pas trop mauvais en math, la trigonométrie j'ai du mal, alors après plus de 30 ans c'est bien loin.

Dans un cercle je souhaite placer un triangle isocèle.

Je connais les coordonnées de mon cercle, le diamètre donc je sais où se trouve mon centre. Je connais les coordonnées de l'une de pointe du triangle, car je souhaite qu'elle  soit en bas du cercle, donc même coordonnées X que le centre et Y est de placer au point (Y du centre plus le rayon).

Pour information en informatique le point 0;0 est placé en haut à gauche.

Je souhaite avoir donc un côté du triangle en haut du cercle qui soit horizontal.
Il faut donc que je trouve les coordonnées mathématiques des 2 points de cette droite horizontale afin de faire un triangle isocèle.

J'ai placé les points manuellement, cela me donne (fichier joint):

Merci a vous

Placer un triangle isocèle dans un cercle

Posté par
carpediem
re : Placer un triangle isocèle dans un cercle 21-06-18 à 09:18

salut

si tu connais les coordonnées du centre C(a, b) du cercle et du sommet S(x, y) en bas alors rien de plus facile :

les deux sommets sont les images de S par la rotation de centre C et d'angle pi/3 et -pi/3

en complexe si w = a + ib et z = x + iy

alors l'affixe de tes points sont w + e^{it}(z - w) où t prend les valeurs pi/3et -pi/3

Posté par
LittleFox
re : Placer un triangle isocèle dans un cercle 21-06-18 à 09:49


Salut,

Soit (X,Y) les coordonnées du centre du cercle et R le rayon de celui-ci.
Le point situé en bas sera aux coordonnées (X,Y+R) comme tu l'as dis plus haut.
Les deux autres points doivent être à une distance R du centre, être symétriques par rapport à l'axe x=X et avoir la même ordonnée (plus petite que Y).
On obtient les points (X \pm a, Y-\sqrt{R^2-a^2}).

En particulier si on veut que le triangle soit équilatéral, alors puisque l'angle au sommet entre l'horizontale et la direction du centre est de 30°, a = R\cos{30} = R\frac{\sqrt{3}}{2}.
Ce qui simplifie les deux points en (X \pm R\frac{\sqrt{3}}{2}, Y-\frac{R}{2})

Posté par
matheuxmatou
re : Placer un triangle isocèle dans un cercle 21-06-18 à 10:02

carpediem @ 21-06-2018 à 09:18

salut

si tu connais les coordonnées du centre C(a, b) du cercle et du sommet S(x, y) en bas alors rien de plus facile :

les deux sommets sont les images de S par la rotation de centre C et d'angle pi/3 et -pi/3

en complexe si w = a + ib et z = x + iy

alors l'affixe de tes points sont w + e^{it}(z - w) où t prend les valeurs pi/3et -pi/3


tu ne voulais pas plutôt dire 2pi/3 ?

et puis le terme "isocèle" ne veut-il pas signifier "équilatéral" ici ?

sinon effectivement le plus simple est de travailler avec les complexes... et le bon angle de rotation...

Posté par
carpediem
re : Placer un triangle isocèle dans un cercle 21-06-18 à 10:34

oui bien sur 2pi/3 ou -2pi/3 ...

tu as raison c'est parce que j'ai pensé triangle équilatéral que je me suis mélangé les pinceaux pour l'angle de la rotation ...

les complexes sont le plus simples dans l'écriture et même dans le calcul "formel" ...

il est aisé ici avec cette valeur particulière de revenir à des calculs numériques aisés sur les coordonnées

Posté par
Chris37000
re : Placer un triangle isocèle dans un cercle 21-06-18 à 14:08

Bonjour a vous tous,

Je vous remercie, pour vos réponses, j'ai vais regarder cela attentivement. Je suis en formation cette après midi et demain, au pire des cas je vous répond lundi, ou si j'ai le temps lors d'une autre petite pause.

Merci encore

Posté par
Sylvieg Moderateur
re : Placer un triangle isocèle dans un cercle 22-06-18 à 09:16

Bonjour,
Avec des noms pour les points, c'est plus facile d'aider.
Je propose E , M et N les sommets du triangle ( E en bas et M et N en haut) et aussi C le centre du cercle.
Et enfin H le milieu du segment [MN] , qui est aussi le projeté orthogonal du point C sur [MN] .
Si j'ai bien compris, les coordonnées de C sont (R,R) où R est le rayon du cercle.
Si le triangle est équilatéral, alors HC = R/2 .
Les ordonnées des points M et N sont donc R/2 .

Posté par
Chris37000
re : Placer un triangle isocèle dans un cercle 22-06-18 à 15:01

Merci à tous pour m'avoir aider,

C'est bien un triangle équilatéral, je me suis trompé dans l'énoncé, comme quoi, moi et la trigo ... des vieux souvenirs qui n'étaient déjà pas bien encrés dans ma tête à l'époque.

Je suis vraiment désolé pour les personnes qui ont tenté de m'aidé avec les complexes, mais en programmation , en tout cas dans le langage que j'utilise, par défaut il ne gère pas les complexe, il faut que je rajoute des éléments de calcul, bon j'ai vu qu'il y a des classe toute faite pour cela et je ne dit pas que je ne vais pas le tester, juste pour me remettre aussi dans les complexes, mais du coup j'ai testé rapidement la formule que m'a proposé LittleFox, et cela fonctionne parfaitement.

Donc un grand merci à tous, le problème est résolu pour moi.
Bon week-end

Posté par
Chris37000
re : Placer un triangle isocèle dans un cercle 22-06-18 à 15:20

Je vous donne mon résultat quand même:
Les couleurs sont changeable bien-sur, c'est juste pour bien voir les objets:

Le but étant donc de créer un objet graphique, notamment ce que l'on appel le DateTimePicker, avec l'affichage de la date et/ou l'heure. L'environnement de développement ne permet pas de donner des courbes à l'objet graphique (en Windows.Form). et le rond et triangle me sert donc de bouton pour ouvrir le calendrier pour choisir la date, point sur lequel je bloque encore pour le moment.

Contrairement à ce que je pensais au début, le logiciel est plus plus rapide à créer les dessin qu'à afficher une image (aussi petite que le triangle) de 1 ou 2 ko. Car j'ai plusieurs objet similaire.
De plus cela me permet de dimensionner comme je le souhaite sans me soucier du rendu que j'aurais eue avec la résolution des images.

2 images donc, l'une est dans la dimension que je vais utiliser (env), la 2éme est agrandi tout se met en place automatiquement, le texte lui aussi est paramétrables en tailles...
J'ai fait express de ne pas suivre le rayon du cercle je l'ai réduit de quelques pourcent ici 4%.

Placer un triangle isocèle dans un cercle

Placer un triangle isocèle dans un cercle

Posté par
LittleFox
re : Placer un triangle isocèle dans un cercle 22-06-18 à 16:16


Heureux que ça t'ai été utile

La méthode des complexes est de fait plus élégante mais demande une ou deux étapes de plus pour avoir les coordonnées (re^{ia} \rightarrow (r \cos a, r \sin a), a=\frac{-2\pi}{3} \rightarrow (\frac{r}{2},\frac{r\sqrt{3}}{2} )).
Il ne faut pas essayer d'utiliser les complexes tels quels en programmation (sauf dans certains langages comme python qui les gère parfaitement).

Pour ce qui est des images c'est bizarre que ce soit si lent. Une astuce est d'avoir une seule grande image rassemblant toutes les images (un seul chargement d'image) et d'afficher seulement la partie de l'image dont tu as besoin pour chaque bouton.

Mais tu pers la possibilité de mise à l'échelle. A moins d'utiliser du dessin vectoriel. C# ne gère pas le SVG nativement mais il existe des frameworks qui le permettent

Posté par
carpediem
re : Placer un triangle isocèle dans un cercle 22-06-18 à 19:15

oui j'ai utilisé les complexes uniquement pour l'élégance de l'écriture ...

l'écriture analytique d'une rotation n'est guère plus compliquée ...

3/2 et 1/2 étant les valeurs particulières associées à l'angle 2pi/3 ...



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !