File: /home/mmtprep/public_html/mathzen.mmtprep.com/assets/6G32-JWN0zz4O.js.map
{"version":3,"file":"6G32-JWN0zz4O.js","sources":["../../src/exercices/6e/6G32.js"],"sourcesContent":["import { angle, angleOriente } from '../../lib/2d/angles.js'\nimport { arc } from '../../lib/2d/cercle.js'\nimport { afficheLongueurSegment } from '../../lib/2d/codages.js'\nimport { distancePointDroite, droite } from '../../lib/2d/droites.js'\nimport { point, pointSurDroite, tracePoint } from '../../lib/2d/points.js'\nimport { nommePolygone, polygone } from '../../lib/2d/polygones.js'\nimport { longueur, segmentAvecExtremites } from '../../lib/2d/segmentsVecteurs.js'\nimport { labelPoint, latexParPoint } from '../../lib/2d/textes.js'\nimport { homothetie, rotation, symetrieAxiale } from '../../lib/2d/transformations.js'\nimport { miseEnEvidence, texteEnCouleurEtGras } from '../../lib/outils/embellissements'\nimport { choisitLettresDifferentes } from '../../lib/outils/aleatoires.js'\nimport { sp } from '../../lib/outils/outilString.js'\nimport { texNombre } from '../../lib/outils/texNombre.js'\nimport Exercice from '../Exercice.js'\nimport { fixeBordures, mathalea2d } from '../../modules/2dGeneralites.js'\nimport { calculANePlusJamaisUtiliser, gestionnaireFormulaireTexte, listeQuestionsToContenu, randint } from '../../modules/outils.js'\nexport const titre = 'Use axial symmetry preservation properties'\n\n// Gestion de la date de publication initiale\nexport const dateDePublication = '25/01/2023'\n\n/**\n * Utiliser les propriétés de la symétrie pour répondre à des questions\n * @author Eric Elter\n */\n\nexport const uuid = '65bd7'\nexport const ref = '6G32'\nexport default function SymetrieAxialeProprietes () {\n Exercice.call(this) // Héritage de la classe Exercice()\n this.titre = titre\n this.consigne = ''\n this.spacing = 2\n this.nbQuestions = 3\n this.nbCols = 1\n this.nbColsCorr = 1\n this.sup = '5'\n this.sup2 = true\n\n this.nouvelleVersion = function () {\n this.listeQuestions = [] // Liste de questions\n this.listeCorrections = [] // Liste de questions corrigées\n this.autoCorrection = []\n /*\n let typesDeQuestionsDisponibles = []\n if (!this.sup) { // Si aucune liste n'est saisie\n typesDeQuestionsDisponibles = rangeMinMax(1, 4)\n } else {\n if (typeof (this.sup) === 'number') { // Si c'is a number it means the number was entered in the address bar\n typesDeQuestionsDisponibles[0] = contraindreValeur(1, 5, this.sup, 5)\n } else {\n typesDeQuestionsDisponibles = this.sup.split('-')// Sinon on créé un tableau à partir des valeurs séparées par des -\n for (let i = 0; i < typesDeQuestionsDisponibles.length; i++) { // on a un tableau avec des strings : ['1', '1', '2']\n typesDeQuestionsDisponibles[i] = contraindreValeur(1, 5, parseInt(typesDeQuestionsDisponibles[i]), 5) // parseInt en fait un tableau d'entiers\n }\n }\n }\n if (compteOccurences(typesDeQuestionsDisponibles, 5) > 0) typesDeQuestionsDisponibles = rangeMinMax(1, 4) // Teste si l'utilisateur a choisi tout\n typesDeQuestionsDisponibles = combinaisonListes(typesDeQuestionsDisponibles, this.nbQuestions)\n*/\n\n const typesDeQuestionsDisponibles = gestionnaireFormulaireTexte({\n max: 4,\n defaut: 5,\n nbQuestions: this.nbQuestions,\n melange: 5,\n saisie: this.sup\n })\n\n for (let i = 0, texte, texteCorr, objetsEnonce, a, b, d, A, B, C, D, E, F, ptRef1, ptRef2, Aarc, Barc, Carc, ALabel, BLabel, CLabel, nbpoints, noms, cpt = 0; i < this.nbQuestions && cpt < 50;) {\n texte = ''\n texteCorr = ''\n objetsEnonce = []\n a = randint(-10, 10)\n b = randint(-10, 10, a)\n d = droite(a, b, 0, '(d)')\n switch (typesDeQuestionsDisponibles[i]) {\n case 1 :\n nbpoints = 4\n noms = choisitLettresDifferentes(nbpoints, 'QWX', true)\n A = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[0])\n while (distancePointDroite(A, d) < 1) A = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[0])\n B = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[1])\n while ((distancePointDroite(B, d) < 1) || (longueur(A, B) < 1) || (longueur(symetrieAxiale(A, d), B) < 1)) B = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[1])\n C = symetrieAxiale(A, d, noms[2])\n D = symetrieAxiale(B, d, noms[3])\n texte += `The segments $[${A.nom}${B.nom}]$ and $[${C.nom}${D.nom}]$ are symmetric with respect to $(d)$ and $${A.nom}${B.nom}=${texNombre(longueur(A, B, 1))}${sp()}\\\\text{cm}$ . What is the length of segment $[${C.nom}${D.nom}]$?`\n texte += this.sup2 ? ' Justify.<br>' : '<br>'\n objetsEnonce.push(d, segmentAvecExtremites(A, B), segmentAvecExtremites(C, D), nommePolygone(polygone([A, B]), A.nom + B.nom), nommePolygone(polygone([C, D]), C.nom + D.nom), afficheLongueurSegment(A, B))\n texte += '<br>' + mathalea2d(Object.assign({}, fixeBordures(objetsEnonce, { pixelsParCm: 40, scale: 1, style: 'margin-top: 40px' })), objetsEnonce)\n texteCorr += `The segments $[${A.nom}${B.nom}]$ and $[${C.nom}${D.nom}]$ are symmetric with respect to $(d)$.<br>`\n texteCorr += 'However, the symmetric of a segment is a segment of the same length.<br>'\n texteCorr += `So the segments $[${A.nom}${B.nom}]$ and $[${C.nom}${D.nom}]$ have the same length and $${miseEnEvidence(C.nom + D.nom + '=' + texNombre(longueur(A, B, 1)))}$${sp()}${texteEnCouleurEtGras('cm')}.<br>`\n break\n case 3 :\n nbpoints = 6\n noms = choisitLettresDifferentes(nbpoints, 'QWX', true)\n A = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[0])\n while (distancePointDroite(A, d) < 1) A = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[0])\n B = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[1])\n while ((distancePointDroite(B, d) < 1) || (longueur(A, B) < 1) || (longueur(symetrieAxiale(A, d), B) < 1)) B = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[1])\n C = pointSurDroite(droite(A, B), B.x + 1, noms[2])\n D = symetrieAxiale(A, d, noms[3])\n E = symetrieAxiale(B, d, noms[4])\n F = symetrieAxiale(C, d, noms[5])\n texte += `The points $${D.nom}$, $${E.nom}$ and $${F.nom}$ are the respective symmetrics of $${A.nom}$, $${B.nom}$ and $${C.nom}$ with respect to $(d)$. The points $${A.nom}$, $${B.nom}$ and $${C.nom}$ are aligned. Are the $${D.nom}$, $${E.nom}$ and $${F.nom}$ points?`\n texte += this.sup2 ? ' Justify.<br>' : '<br>'\n objetsEnonce.push(d, tracePoint(A, B, C, D, E, F), labelPoint(A, B, C, D, E, F))\n texte += '<br>' + mathalea2d(Object.assign({}, fixeBordures(objetsEnonce, { pixelsParCm: 40, scale: 1, style: 'margin-top: 40px' })), objetsEnonce)\n texteCorr += `The points $${D.nom}$, $${E.nom}$ and $${F.nom}$ are the respective symmetrics of $${A.nom}$, $${B.nom}$ and $${C.nom}$ with respect to $(d)$ and are aligned.<br>`\n texteCorr += 'However, axial symmetry preserves alignment.<br>'\n texteCorr += `So the $${miseEnEvidence(D.nom)}$${texteEnCouleurEtGras(',')}$${miseEnEvidence(E.nom)}$${texteEnCouleurEtGras(' And')}$${miseEnEvidence(F.nom)}$ ${texteEnCouleurEtGras(' are aligned')} points also.<br>`\n break\n case 2 :\n nbpoints = 6\n noms = choisitLettresDifferentes(nbpoints, 'QWX', true)\n A = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[0])\n while (distancePointDroite(A, d) < 1) A = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[0])\n B = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[1])\n while ((distancePointDroite(B, d) < 1) || (longueur(A, B) < 1) || (longueur(symetrieAxiale(A, d), B) < 1)) B = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[1])\n C = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[2])\n while ((distancePointDroite(C, d) < 1) || (longueur(A, C) < 1) || (longueur(symetrieAxiale(A, d), C) < 1) || (longueur(C, B) < 1) || (longueur(symetrieAxiale(B, d), C) < 1) || (angle(A, B, C) < 30) || (angle(B, A, C) < 30) || (angle(A, C, B) < 30)) C = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[2])\n D = symetrieAxiale(A, d, noms[3])\n E = symetrieAxiale(B, d, noms[4])\n F = symetrieAxiale(C, d, noms[5])\n texte += `The points $${D.nom}$, $${E.nom}$ and $${F.nom}$ are the respective symmetrics of $${A.nom}$, $${B.nom}$ and $${C.nom}$ with respect to $(d)$. What is the length of segment $[${D.nom}${F.nom}]$?`\n texte += this.sup2 ? ' Justify.<br>' : '<br>'\n objetsEnonce.push(d, polygone([A, B, C], 'green'), nommePolygone(polygone([A, B, C]), A.nom + B.nom + C.nom), polygone([D, E, F], 'brown'), nommePolygone(polygone([D, E, F]), D.nom + E.nom + F.nom), afficheLongueurSegment(A, B), afficheLongueurSegment(A, C), afficheLongueurSegment(C, B))\n texte += '<br>' + mathalea2d(Object.assign({}, fixeBordures(objetsEnonce, { rxmin: -1, rymin: -1, rxmax: 1, rymax: 1, pixelsParCm: 40, scale: 1, style: 'margin-top: 40px' })), objetsEnonce)\n texteCorr += `The segments $[${A.nom}${B.nom}]$ and $[${C.nom}${D.nom}]$ are symmetric with respect to $(d)$.<br>`\n texteCorr += 'However, the symmetric of a segment is a segment of the same length.<br>'\n texteCorr += `So the segments $[${A.nom}${B.nom}]$ and $[${C.nom}${D.nom}]$ have the same length and $${miseEnEvidence(C.nom + D.nom + '=' + texNombre(longueur(A, B, 1)))}$${sp()}${texteEnCouleurEtGras('cm')}.<br>`\n break\n case 4 :\n nbpoints = 6\n noms = choisitLettresDifferentes(nbpoints, 'QWX', true)\n A = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[0])\n while (distancePointDroite(A, d) < 1) A = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[0])\n B = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[1])\n while ((distancePointDroite(B, d) < 1) || (longueur(A, B) < 6 || (longueur(symetrieAxiale(A, d), B) < 1))) B = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[1])\n C = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[2])\n while ((distancePointDroite(C, d) < 1) || (longueur(A, C) < 6) || (longueur(symetrieAxiale(A, d), C) < 1) || (longueur(C, B) < 6) || (longueur(symetrieAxiale(B, d), C) < 1) || (angle(A, B, C) < 30) || (angle(B, A, C) < 30) || (angle(A, C, B) < 30)) C = point(calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), calculANePlusJamaisUtiliser(randint(-80, 80, 0) / 10), noms[2])\n D = symetrieAxiale(A, d, noms[3])\n E = symetrieAxiale(B, d, noms[4])\n F = symetrieAxiale(C, d, noms[5])\n texte += `The points $${D.nom}$, $${E.nom}$ and $${F.nom}$ are the respective symmetrics of $${A.nom}$, $${B.nom}$ and $${C.nom}$ with respect to $(d)$. What is the measure of the angle $\\\\widehat{${D.nom}${F.nom}${E.nom}}$?`\n texte += this.sup2 ? ' Justify.<br>' : '<br>'\n objetsEnonce.push(d, polygone([A, B, C], 'green'), nommePolygone(polygone([A, B, C]), A.nom + B.nom + C.nom), polygone([D, E, F], 'brown'), nommePolygone(polygone([D, E, F]), D.nom + E.nom + F.nom))\n ptRef1 = (longueur(A, B) < longueur(C, B)) ? A : C\n ptRef2 = (longueur(A, B) < longueur(C, B)) ? C : A\n Barc = homothetie(ptRef1, B, 2 / 10)\n BLabel = rotation(homothetie(ptRef1, B, 2 / 10 + 1 / longueur(ptRef1, B)), B, angleOriente(ptRef1, B, ptRef2) / 3)\n BLabel.positionLabel = 'center'\n objetsEnonce.push(arc(Barc, B, angleOriente(ptRef1, B, ptRef2)), latexParPoint(`${angle(ptRef1, B, ptRef2, 0)}\\\\degree`, BLabel, 'black', 12, 20, ''))\n ptRef1 = (longueur(A, C) < longueur(C, B)) ? A : B\n ptRef2 = (longueur(A, C) < longueur(C, B)) ? B : A\n Carc = homothetie(ptRef1, C, 2 / 10)\n CLabel = rotation(homothetie(ptRef1, C, 2 / 10 + 1 / longueur(ptRef1, C)), C, angleOriente(ptRef1, C, ptRef2) / 3)\n CLabel.positionLabel = 'center'\n objetsEnonce.push(arc(Carc, C, angleOriente(ptRef1, C, ptRef2)), latexParPoint(`${angle(ptRef1, C, ptRef2, 0)}\\\\degree`, CLabel, 'black', 12, 20, ''))\n ptRef1 = (longueur(A, C) < longueur(A, B)) ? C : B\n ptRef2 = (longueur(A, C) < longueur(A, B)) ? B : C\n Aarc = homothetie(ptRef1, A, 2 / 10)\n ALabel = rotation(homothetie(ptRef1, A, 2 / 10 + 1 / longueur(A, ptRef1)), A, angleOriente(ptRef1, A, ptRef2) / 3)\n ALabel.positionLabel = 'center'\n objetsEnonce.push(arc(Aarc, A, angleOriente(ptRef1, A, ptRef2)), latexParPoint(`${180 - angle(A, ptRef2, ptRef1, 0) - angle(A, ptRef1, ptRef2, 0)}\\\\degree`, ALabel, 'black', 12, 20, ''))\n texte += '<br>' + mathalea2d(Object.assign({}, fixeBordures(objetsEnonce, { rxmin: -1, rymin: -1, rxmax: 1, rymax: 1, pixelsParCm: 40, scale: 1, style: 'margin-top: 40px' })), objetsEnonce)\n texteCorr += `The angles $\\\\widehat{${A.nom}${C.nom}${B.nom}}$ and $\\\\widehat{${D.nom}${F.nom}${E.nom}}$ are symmetric with respect to $(d)$.<br>`\n texteCorr += 'However, the symmetrical of an angle is an angle of the same measure.<br>'\n texteCorr += `So the angles $\\\\widehat{${A.nom}${C.nom}${B.nom}}$ and $\\\\widehat{${D.nom}${F.nom}${E.nom}}$ have the same measure and $\\\\widehat{${D.nom}${F.nom}${E.nom}} = ${angle(D, F, E, 0)}\\\\degree$.<br>`\n break\n }\n if (this.questionJamaisPosee(i, a, b)) { // Si la question n'a jamais été posée, on en crée une autre\n this.listeQuestions.push(texte)\n this.listeCorrections.push(texteCorr)\n i++\n }\n cpt++\n }\n\n listeQuestionsToContenu(this)\n }\n this.besoinFormulaireTexte = ['Type of questions', 'Numbers separated by hyphens\\n1: Length of a single segment\\n2: Length of one segment among others\\n3: Alignment of points\\n4: Angle\\n5: Blending']\n this.besoinFormulaire2CaseACocher = ['Justification requested']\n}\n"],"names":["titre","dateDePublication","uuid","ref","SymetrieAxialeProprietes","Exercice","typesDeQuestionsDisponibles","gestionnaireFormulaireTexte","i","texte","texteCorr","objetsEnonce","a","b","d","A","B","C","D","E","F","ptRef1","ptRef2","Aarc","Barc","Carc","ALabel","BLabel","CLabel","nbpoints","noms","cpt","randint","droite","choisitLettresDifferentes","point","calculANePlusJamaisUtiliser","distancePointDroite","longueur","symetrieAxiale","texNombre","sp","segmentAvecExtremites","nommePolygone","polygone","afficheLongueurSegment","mathalea2d","fixeBordures","miseEnEvidence","texteEnCouleurEtGras","pointSurDroite","tracePoint","labelPoint","angle","homothetie","rotation","angleOriente","arc","latexParPoint","listeQuestionsToContenu"],"mappings":"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"}