point à l'intérieur d'un polygone
Modérateur : xcasadmin
point à l'intérieur d'un polygone
Bonjour
Question assez urgente car j'anime un stage dans lequel je veux faire passer les collègues de GeoGebra à Xcas en leur montrant les complémentarité des 2 logiciels.
Dans une fenêtre géométrie : ABCD est un parallélogramme.
Je veux définir M(xm,ym) à l'intérieur de ABCD afin de comparer "aire(AMB)+aire(DMC)" avec "aire(AMD)+aire(BMC)"à l'aide de calculs algébriques.
avec GGB j'ai l'outil "point sur une surface définie par un polygone" (croisé ou non !).
Je n'arrive pas à trouver cet outils dans Xcas.
Merci.
Question assez urgente car j'anime un stage dans lequel je veux faire passer les collègues de GeoGebra à Xcas en leur montrant les complémentarité des 2 logiciels.
Dans une fenêtre géométrie : ABCD est un parallélogramme.
Je veux définir M(xm,ym) à l'intérieur de ABCD afin de comparer "aire(AMB)+aire(DMC)" avec "aire(AMD)+aire(BMC)"à l'aide de calculs algébriques.
avec GGB j'ai l'outil "point sur une surface définie par un polygone" (croisé ou non !).
Je n'arrive pas à trouver cet outils dans Xcas.
Merci.
Re: point à l'intérieur d'un polygone
Bonjour,
peut-être quelque chose comme :
peut-être quelque chose comme :
Code : Tout sélectionner
supposons(x:=[0.6,0,1,0.01]);
supposons(y:=[0.5,0,1,0.01]);
A := point(0);
B := point(2);
C := point(2.5+i);
parallelogramme(A,B,C,D);
M := point(x*(B-A) +y*(D-A));
a1 := aire(triangle(A,M,B)) + aire(triangle(D,M,C));
a2 := aire(triangle(A,M,D)) + aire(triangle(B,M,C));
a1 - a2;
Re: point à l'intérieur d'un polygone
Bonjour,
[/quote]
C'est ce qui me gêne : je voulais une fonction "toute faite".
L'idée est de le présenter à des collègues et/ou à des élèves de 2nde.
J'aime bien calculer à l'aide du nom des points, mais pour moi. Devant des élèves de seconde qui maîtrisent plus que mal les vecteurs, j'évite.
Surtout que l'idée de l'exercice n'est pas de placer un point à l'intérieur d'un polygone, mais un calcul d'aire. je voulais passer de GGB avec une recherche "numérique" et une conjecture à Xcas avec une démonstration.
Merci quand même pour cette réponse.
Code : Tout sélectionner
M := point(x*(B-A) +y*(D-A));
C'est ce qui me gêne : je voulais une fonction "toute faite".
L'idée est de le présenter à des collègues et/ou à des élèves de 2nde.
J'aime bien calculer à l'aide du nom des points, mais pour moi. Devant des élèves de seconde qui maîtrisent plus que mal les vecteurs, j'évite.
Surtout que l'idée de l'exercice n'est pas de placer un point à l'intérieur d'un polygone, mais un calcul d'aire. je voulais passer de GGB avec une recherche "numérique" et une conjecture à Xcas avec une démonstration.
Merci quand même pour cette réponse.
Re: point à l'intérieur d'un polygone
Je pense qu'il y a une ambiguité sur la question qui explique peut-etre que la réponse ne vous satisfait pas. Est-ce que vous voulez un point sur le parallélogramme ou dans le parallélogramme?
J'avais compris "dans" et dans ce cas je ne connais pas de méthode simple pour en générer un pour un polygone général, la méthode proposée par Guillaume répondant parfaitement à la question pour un parallélogramme.
S'il s'agit d'un point sur le parallélogramme ou sur un polygone en général (ça me semble être ce que fait geogebra avec point sur objet), la commande M:=element(E) si E:=parallelogramme(A,B,C,D) répond à la question.
J'avais compris "dans" et dans ce cas je ne connais pas de méthode simple pour en générer un pour un polygone général, la méthode proposée par Guillaume répondant parfaitement à la question pour un parallélogramme.
S'il s'agit d'un point sur le parallélogramme ou sur un polygone en général (ça me semble être ce que fait geogebra avec point sur objet), la commande M:=element(E) si E:=parallelogramme(A,B,C,D) répond à la question.
Re: point à l'intérieur d'un polygone
Je comprends le problème. Je m'étonne cependant que malgré cette incitation des programmes à utiliser des logiciels, on n'en ai pas profité pour enfin travailler sur des espaces affines et calculer sur des points ce qui me paraît tellement plus naturel et éclairant que des opérations alambiquées sur les coordonnées.
Voici donc une autre proposition qui permet de démontrer le résultat dans le cas général sans opération sur les points.
Je pense que la construction et la modélisation du point M a un intérêt en soi et il serait dommage d'employer une boîte noire "point dans le parallélogramme" pour ensuite s'en servir pour démontrer : ça biaise un peu la portée de la "démonstration"... Autant dire tout de suite que ça vaut zéro et basta.
Placer le point M, ça permet de parler de coordonnées dans un pepère (ici A,B,D) puis de faire un peu de calcul.
Voici donc une autre proposition qui permet de démontrer le résultat dans le cas général sans opération sur les points.
Je pense que la construction et la modélisation du point M a un intérêt en soi et il serait dommage d'employer une boîte noire "point dans le parallélogramme" pour ensuite s'en servir pour démontrer : ça biaise un peu la portée de la "démonstration"... Autant dire tout de suite que ça vaut zéro et basta.
Placer le point M, ça permet de parler de coordonnées dans un pepère (ici A,B,D) puis de faire un peu de calcul.
Code : Tout sélectionner
supposons(x:=[0.34,0,1,0.01]);
supposons(y:=[0.86,0,1,0.01]);
supposons(xb:=[1.4,0,10,0.1]);
supposons(xc:=[2.1,0,10,0.1]);
supposons(yc:=[1.6,0,10,0.1]);
A := point(0,0);
B := point(xb,0);
C := point(xc,yc);
parallelogramme(A,B,C,D);
M := point( x*(abscisse(B)-abscisse(A)) + y*(abscisse(D)-abscisse(A)) , x*(ordonnee(B)-ordonnee(A)) + y*(ordonnee(D)-ordonnee(A)) );
a1 := aire(triangle(A,B,M)) + aire(triangle(D,M,C));
a2 := aire(triangle(A,M,D)) + aire(triangle(B,C,M));
a1 - a2;
simplifier(a1 - a2);
Re: point à l'intérieur d'un polygone
"J'aime bien calculer à l'aide du nom des points, mais pour moi. Devant des élèves de seconde qui maîtrisent plus que mal les vecteurs, j'évite."
c'est peut-être une erreur.
Penser "B-A" quand on cherche les coordonnées du vecteur AB permet à un élève de seconde de ne plus se tromper. (j'ai testé)
A ce titre M:=A+3*(B-A) est vite assimilé.
Concernant ton sujet, je ne vois pas l'intérêt d'imposer à M d'être dans la figure.
On peut naviguer à vue dans le parallélogramme et travailler en symbolique.
Il faut juste indiquer les points dans le sens trigo ou prendre la valeur absolue de l'aire.
Pour un point sur un polygone il y a une fonction que je ne retrouve pas de mémoire ...
[Edit] j'ai retrouvé. paragraphe 9.9.13 de la doc
pour aller vite: cliquer en mode point pour créer A,B,C,D,E,F
figure:=polygone(A,B,C,D,E,F);
t:=element(0 .. 6);
M:=element(figure,[floor(t),frac(t)])
c'est peut-être une erreur.
Penser "B-A" quand on cherche les coordonnées du vecteur AB permet à un élève de seconde de ne plus se tromper. (j'ai testé)
A ce titre M:=A+3*(B-A) est vite assimilé.
Concernant ton sujet, je ne vois pas l'intérêt d'imposer à M d'être dans la figure.
On peut naviguer à vue dans le parallélogramme et travailler en symbolique.
Il faut juste indiquer les points dans le sens trigo ou prendre la valeur absolue de l'aire.
Pour un point sur un polygone il y a une fonction que je ne retrouve pas de mémoire ...
[Edit] j'ai retrouvé. paragraphe 9.9.13 de la doc
pour aller vite: cliquer en mode point pour créer A,B,C,D,E,F
figure:=polygone(A,B,C,D,E,F);
t:=element(0 .. 6);
M:=element(figure,[floor(t),frac(t)])
Re: point à l'intérieur d'un polygone
Bonsoir
Je voulais un point DANS le (sur la surface du) parallélogramme (ou un polygone plus généralement). Mon idée est de passer de GGB à Xcas pour pouvoir démontrer et je veux utiliser les mêmes protocoles de construction.
Avec GGB je clique et je conjecture, avec Xcas j'écris et je démontre : c'est un peu le fil du rouge de mon stage.
Beaucoup de collègues sont frileux devant Xcas et commencent à maîtriser GGB, c'est pourquoi je veux faire des passerelles entre les deux pour initier en souplesse.
On a pas forcément besoin de l'outil informatique pour cet exerice, mais il est simple à comprendre et mettre en place pour commencer. La figure proposée permet de conjecturer avec GGB et l'outil "point DANS un polygone" que la somme des aires est constante, je voulais passer en "géométrie formelle" pour démontrer avec Xcas en utilsant des commandes similaire.
Maintenant, pour un autre type d'exercice, j'aime bien les solutions proposées et elles me satisfont pleinement
Merci.
Je voulais un point DANS le (sur la surface du) parallélogramme (ou un polygone plus généralement). Mon idée est de passer de GGB à Xcas pour pouvoir démontrer et je veux utiliser les mêmes protocoles de construction.
Avec GGB je clique et je conjecture, avec Xcas j'écris et je démontre : c'est un peu le fil du rouge de mon stage.
Beaucoup de collègues sont frileux devant Xcas et commencent à maîtriser GGB, c'est pourquoi je veux faire des passerelles entre les deux pour initier en souplesse.
On a pas forcément besoin de l'outil informatique pour cet exerice, mais il est simple à comprendre et mettre en place pour commencer. La figure proposée permet de conjecturer avec GGB et l'outil "point DANS un polygone" que la somme des aires est constante, je voulais passer en "géométrie formelle" pour démontrer avec Xcas en utilsant des commandes similaire.
Maintenant, pour un autre type d'exercice, j'aime bien les solutions proposées et elles me satisfont pleinement
Merci.
Re: point à l'intérieur d'un polygone
Pourquoi pas ceci M pouvant sortir de la surface (on peut cliquer les 3 points en mode exact)
Code : Tout sélectionner
A:=point([-2,3,'affichage'=0]);
B:=point([3,6,'affichage'=0]);
C:=point([2,-1,'affichage'=0]);
P:=parallelogramme(A,B,C,D);
supposons(x=[0.88,-4,4,0.08]);
supposons(y=[2.55,-5,10,0.15]);
M:=point(x,y);
T1:=triangle(A,M,B);
T2:=triangle(D,C,M);
T3:=triangle(A,D,M);
T4:=triangle(B,M,C);
S1:=abs(aire(T1))+abs(aire(T2));
simplifier(S1);
S2:=abs(aire(T3))+abs(aire(T4));
simplifier(S2);
Re: point à l'intérieur d'un polygone
Ou est l'outil point dans polygone dans geogebra? Je vois bien point sur objet dans le menu point, mais pas point dans polygone.
Re: point à l'intérieur d'un polygone
Bon, j'ai trouve, il suffit de cliquer dans et pas sur le polygone dans geogebra. Et en reflechissant, il est assez simple de savoir si on est encore dans le polygone si on y etait, il suffit de verifier que les equations de droite des segment limitant le polygone restent du meme signe (c'est d'ailleurs sans doute encore vrai pour d'autres types de frontieres). Dans Xcas, ca aurait sans doute plus de sens d'ecrire une fonction qui teste l'appartenance exacte a un polygone (quitte a laisser l'utilisateur deplacer un point completement libre) que d'essayer de faire une interface pour ca, et esperer qu'un jour les concepteurs de geogebra s'interesseront a giac comme noyau de calcul formel (ca permettrait d'utiliser leur interface pour la geometrie). Maintenant que je sais faire une interface en java pour giac, ca a peut-etre des chances, d'autant que leur noyau cas actuel reduce doit pas etre facile a interfacer et n'a pas de commandes de geometrie formelle.
Re: point à l'intérieur d'un polygone
Apparamment, il y a des algos la:
http://geomalgorithms.com/a03-_inclusio ... ygon%28%29
http://geomalgorithms.com/a03-_inclusio ... ygon%28%29
Re: point à l'intérieur d'un polygone
Juste une réflexion: cela revient à calculer l'indice d'un point par rapport à un lacet (une intégrale complexe), non ? Ligne brisée étant relativement facile à paramétrer, je suis tenté de dire que l'on peut le calculer directement en Xcas (mais certainement ce n'est pas au niveau de lycée!). Un avantage est que cela devrait être faisable pour une plus grande famille de courbes.
A.
A.
Re: point à l'intérieur d'un polygone
En effet, on doit pouvoir le calculer comme ca pour une courbe pour laquelle chercher des intersections avec une demi-droite serait compliquee.
Re: point à l'intérieur d'un polygone
J'ajoute une fonction is_inside (en francais est_dans) dans la branche 1.1 de giac. Pour l'instant ca traite les polygones et les cercles.