HEX
Server: Apache
System: Linux vps.mmtprep.com 4.18.0-477.21.1.el8_8.x86_64 #1 SMP Thu Aug 10 13:51:50 EDT 2023 x86_64
User: mmtprep (1001)
PHP: 8.1.34
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/mmtprep/public_html/mathzen.mmtprep.com/assets/6G20-SOnms2H-.js.map
{"version":3,"file":"6G20-SOnms2H-.js","sources":["../../src/exercices/6e/6G20.js"],"sourcesContent":["import { codageAngle, codageAngleDroit } from '../../lib/2d/angles.js'\nimport { codageSegments } from '../../lib/2d/codages.js'\nimport { point } from '../../lib/2d/points.js'\nimport { barycentre, carre, nommePolygone, polygone } from '../../lib/2d/polygones.js'\nimport { grille, seyes } from '../../lib/2d/reperes.js'\nimport { vecteur } from '../../lib/2d/segmentsVecteurs.js'\nimport { homothetie, rotation, similitude, translation } from '../../lib/2d/transformations.js'\nimport { combinaisonListes } from '../../lib/outils/arrayOutils'\nimport { creerNomDePolygone } from '../../lib/outils/outilString.js'\nimport Exercice from '../Exercice.js'\nimport { mathalea2d, vide2d } from '../../modules/2dGeneralites.js'\nimport { context } from '../../modules/context.js'\nimport { listeQuestionsToContenu, randint } from '../../modules/outils.js'\nexport const titre = 'Naming and coding polygons'\n\n/**\n * @author Jean-Claude Lhote\n * Placer les sommets et les égalités de longueur...\n */\nexport const uuid = '90e1a'\nexport const ref = '6G20'\nexport default function NommerEtCoderDesPolygones () {\n  Exercice.call(this) // Héritage de la classe Exercice()\n  this.nbQuestions = 4\n  this.nbCols = 2\n  this.nbColsCorr = 2\n  this.sup = 3\n\n  this.nouvelleVersion = function () {\n    this.consigne = this.nbQuestions === 1 ? 'Name the figure' : 'Name the figures'\n    this.consigne += ' based on the statement then add the coding.'\n    this.listeQuestions = [] // Liste de questions\n    this.listeCorrections = [] // Liste de questions corrigées\n    this.autoCorrection = []\n    let Xmin, Xmax, Ymin, Ymax, sc, g, carreaux\n    const ppc = 40\n    if (context.isHtml) {\n      sc = 0.5\n    } else {\n      sc = 0.4\n    }\n\n    let params\n\n    const liste = combinaisonListes([1, 2, 3, 4, 5, 6, 7, 8], this.nbQuestions)\n    let listeDeNomsDePolygones\n    for (\n      let i = 0, texte, texteCorr, cpt = 0;\n      i < this.nbQuestions && cpt < 50;\n\n    ) {\n      if (i % 4 === 0) listeDeNomsDePolygones = ['PQD']\n      context.pixelsParCm = 40\n      let pol, polcode, polsom\n      const choisirPolygone = (n) => { // n compris entre 1 et 8 (1 à 4 pour un triangle, 5 à 8 pour une quadrilatère)\n        let A, B, C, D\n        const nom = creerNomDePolygone(4, listeDeNomsDePolygones); let pnom; let q; let p; let pcode; let enonce\n        switch (n) {\n          case 1: // triangle isocèle\n            A = point(3, randint(0, 20) / 10, nom[0])\n            B = point(randint(7, 8), randint(0, 10) / 10, nom[1])\n            C = rotation(B, A, randint(25, 80), nom[2])\n            q = polygone(A, B, C)\n            p = rotation(q, barycentre(q), randint(0, 360))\n            A = p.listePoints[0]\n            B = p.listePoints[1]\n            C = p.listePoints[2]\n            pnom = nommePolygone(p, nom[0] + nom[1] + nom[2])\n            pcode = [codageSegments('||', 'blue', A, B, A, C), codageAngle(B, C, A, 0.8, '|', 'blue', 2, 0.8, 'blue', 0.2), codageAngle(C, B, A, 0.8, '|', 'blue', 2, 0.8, 'blue', 0.2)]\n            enonce = `The triangle $${nom[0] + nom[1] + nom[2]}$ is isosceles in $${nom[0]}$.<br>`\n            break\n          case 2: // triangle équilatéral\n            A = point(3, randint(0, 20) / 10, nom[0])\n            B = point(randint(7, 8), randint(0, 10) / 10, nom[1])\n            C = rotation(B, A, 60, nom[2])\n            q = polygone(A, B, C)\n            p = rotation(q, barycentre(q), randint(0, 360))\n            A = p.listePoints[0]\n            B = p.listePoints[1]\n            C = p.listePoints[2]\n            pnom = nommePolygone(p, nom[0] + nom[1] + nom[2])\n            pcode = [codageSegments('||', 'blue', A, B, A, C, B, C), codageAngle(B, C, A, 0.8, '|', 'blue', 2, 0.8, 'blue', 0.2), codageAngle(C, B, A, 0.8, '|', 'blue', 2, 0.8, 'blue', 0.2), codageAngle(C, A, B, 0.8, '|', 'blue', 2, 0.8, 'blue', 0.2)]\n            enonce = `The triangle $${nom[0] + nom[1] + nom[2]}$ is equilateral.<br>$\\\\phantom{and its length is AB}$`\n            break\n          case 3: // triangle rectangle\n            A = point(3, randint(0, 20) / 10, nom[0])\n            B = point(randint(7, 8), randint(0, 10) / 10, nom[1])\n            C = similitude(B, A, 90, randint(30, 100) / 100, nom[2])\n            q = polygone(A, B, C)\n            p = rotation(q, barycentre(q), randint(0, 360))\n            A = p.listePoints[0]\n            B = p.listePoints[1]\n            C = p.listePoints[2]\n            pnom = nommePolygone(p, nom[0] + nom[1] + nom[2])\n            pcode = codageAngleDroit(B, A, C)\n            enonce = `The triangle $${nom[0] + nom[1] + nom[2]}$ is right-angled in $${nom[0]}$.<br>$\\\\phantom{and its length is AB}$`\n            break\n          case 4: // triangle rectangle isocèle\n            A = point(3, randint(0, 20) / 10, nom[0])\n            B = point(randint(7, 8), randint(0, 10) / 10, nom[1])\n            C = rotation(B, A, 90, nom[2])\n            q = polygone(A, B, C)\n            p = rotation(q, barycentre(q), randint(0, 360))\n            A = p.listePoints[0]\n            B = p.listePoints[1]\n            C = p.listePoints[2]\n            pnom = nommePolygone(p, nom[0] + nom[1] + nom[2])\n            pcode = [codageSegments('||', 'blue', A, B, A, C), codageAngleDroit(B, A, C), codageAngle(B, C, A, 0.8, '|', 'blue', 2, 0.8, 'blue', 0.2), codageAngle(C, B, A, 0.8, '|', 'blue', 2, 0.8, 'blue', 0.2)]\n            enonce = `The triangle $${nom[0] + nom[1] + nom[2]}$ is right-angled and isosceles in $${nom[0]}$.`\n            break\n          // we choose a quadrilateral\n          case 5: // carré\n            A = point(3, randint(0, 20) / 10, nom[0])\n            B = point(randint(7, 8), randint(10, 30) / 10, nom[1])\n            q = carre(A, B)\n            p = rotation(q, barycentre(q), randint(0, 360))\n            A = p.listePoints[0]\n            B = p.listePoints[1]\n            C = p.listePoints[2]\n            D = p.listePoints[3]\n            pnom = nommePolygone(p, nom[0] + nom[1] + nom[2] + nom[3])\n            pcode = [codageSegments('||', 'blue', A, B, B, C, C, D, D, A), codageAngleDroit(B, A, D), codageAngleDroit(A, B, C), codageAngleDroit(B, C, D), codageAngleDroit(A, D, C)]\n            enonce = `The quadrilateral $${nom[0] + nom[1] + nom[2] + nom[3]}$ is a square.<br>$\\\\phantom{and its length is AB}$`\n            break\n          case 6: // rectangle\n            A = point(3, randint(0, 20) / 10, nom[0])\n            B = point(randint(7, 8), randint(10, 30) / 10, nom[1])\n            C = similitude(A, B, -90, randint(30, 80) / 100, nom[2])\n            D = translation(C, vecteur(B, A), nom[3])\n            q = polygone(A, B, C, D)\n            p = rotation(q, barycentre(q), randint(0, 360))\n            A = p.listePoints[0]\n            B = p.listePoints[1]\n            C = p.listePoints[2]\n            D = p.listePoints[3]\n            pnom = nommePolygone(p, nom[0] + nom[1] + nom[2] + nom[3])\n            pcode = [codageSegments('||', 'blue', A, B, C, D), codageSegments('|', 'red', C, B, A, D), codageAngleDroit(B, A, C), codageAngleDroit(A, B, C), codageAngleDroit(B, C, D), codageAngleDroit(A, D, C)]\n            enonce = `The quadrilateral $${nom[0] + nom[1] + nom[2] + nom[3]}$ is a rectangle and $${nom[0] + nom[1]}$ is its length.`\n            break\n          case 7: // losange\n            A = point(3, randint(0, 20) / 10, nom[0])\n            B = point(randint(7, 8), randint(10, 30) / 10, nom[1])\n            C = rotation(A, B, randint(100, 150), nom[2])\n            D = translation(C, vecteur(B, A), nom[3])\n            q = polygone(A, B, C, D)\n            p = rotation(q, barycentre(q), randint(0, 360))\n            A = p.listePoints[0]\n            B = p.listePoints[1]\n            C = p.listePoints[2]\n            D = p.listePoints[3]\n            pnom = nommePolygone(p, nom[0] + nom[1] + nom[2] + nom[3])\n            pcode = [codageSegments('O', 'blue', A, B, B, C, C, D, D, A), codageAngle(C, D, A, 0.8, '||', 'red', 2, 0.8, 'red', 0.2), codageAngle(C, B, A, 0.8, '||', 'red', 2, 0.8, 'red', 0.2), codageAngle(B, C, D, 0.8, '|', 'blue', 2, 0.8, 'blue', 0.2), codageAngle(D, A, B, 0.8, '|', 'blue', 2, 0.8, 'blue', 0.2)]\n            enonce = `The quadrilateral $${nom[0] + nom[1] + nom[2] + nom[3]}$ is a rhombus and [$${nom[0] + nom[2]}$] is its largest diagonal.`\n            break\n          case 8: // trapèze rectangle\n            A = point(3, randint(0, 20) / 10, nom[0])\n            B = point(randint(7, 8), randint(10, 30) / 10, nom[1])\n            D = similitude(B, A, 90, randint(30, 80) / 100, nom[3])\n            C = translation(D, homothetie(vecteur(A, B), A, randint(30, 80) / 100), nom[2])\n            q = polygone(A, B, C, D)\n            p = rotation(q, barycentre(q), randint(0, 360))\n            A = p.listePoints[0]\n            B = p.listePoints[1]\n            C = p.listePoints[2]\n            D = p.listePoints[3]\n            pnom = nommePolygone(p, nom[0] + nom[1] + nom[2] + nom[3])\n            pcode = [codageAngleDroit(B, A, D), codageAngleDroit(C, D, A)]\n            enonce = `The quadrilateral $${nom[0] + nom[1] + nom[2] + nom[3]}$ is a rectangular trapezoid of large base $${nom[0] + nom[1]}$ of height $${nom[0] + nom[3]}$.`\n            break\n        }\n        return [p, nom, pcode, pnom, enonce]\n      }\n      [pol,, polcode, polsom, texte] = choisirPolygone(liste[i])\n      if (pol.listePoints.length === 4) {\n        Xmin = Math.floor(Math.min(pol.listePoints[0].x, pol.listePoints[1].x, pol.listePoints[2].x, pol.listePoints[3].x) - 1)\n        Ymin = Math.floor(Math.min(pol.listePoints[0].y, pol.listePoints[1].y, pol.listePoints[2].y, pol.listePoints[3].y) - 1)\n        Xmax = Math.ceil(Math.max(pol.listePoints[0].x, pol.listePoints[1].x, pol.listePoints[2].x, pol.listePoints[3].x) + 1)\n        Ymax = Math.ceil(Math.max(pol.listePoints[0].y, pol.listePoints[1].y, pol.listePoints[2].y, pol.listePoints[3].y) + 1)\n      } else {\n        Xmin = Math.floor(Math.min(pol.listePoints[0].x, pol.listePoints[1].x, pol.listePoints[2].x) - 1)\n        Ymin = Math.floor(Math.min(pol.listePoints[0].y, pol.listePoints[1].y, pol.listePoints[2].y) - 1)\n        Xmax = Math.ceil(Math.max(pol.listePoints[0].x, pol.listePoints[1].x, pol.listePoints[2].x) + 1)\n        Ymax = Math.ceil(Math.max(pol.listePoints[0].y, pol.listePoints[1].y, pol.listePoints[2].y) + 1)\n      }\n      params = {\n        xmin: Xmin,\n        ymin: Ymin,\n        xmax: Xmax,\n        ymax: Ymax,\n        pixelsParCm: ppc,\n        scale: sc\n      }\n      if (this.sup < 3) g = grille(Xmin, Ymin, Xmax, Ymax, 'gray', 0.7)\n      else g = vide2d()\n      if (parseInt(this.sup === 2)) {\n        carreaux = seyes(Xmin, Ymin, Xmax, Ymax)\n      } else {\n        carreaux = vide2d()\n      }\n\n      pol.epaisseur = 2\n      texte += '<br>' + mathalea2d(params, pol, g, carreaux)\n      texteCorr = mathalea2d(params, pol, polcode, polsom, g, carreaux)\n      if (this.questionJamaisPosee(i, texte)) { // <- laisser le i et ajouter toutes les variables qui rendent les exercices différents (par exemple a, b, c et d)\n        this.listeQuestions.push(texte)\n        this.listeCorrections.push(texteCorr)\n        i++\n      }\n      cpt++\n    }\n    listeQuestionsToContenu(this)\n    context.pixelsParCm = 20\n  }\n  this.besoinFormulaireNumerique = [\n    'Notebook type',\n    3,\n    ' 1: Notebook with small squares\\n 2: Notebook with large squares (Seyes)\\n 3: Blank sheet'\n  ]\n}\n"],"names":["titre","uuid","ref","NommerEtCoderDesPolygones","Exercice","Xmin","Xmax","Ymin","Ymax","sc","g","carreaux","ppc","context","params","liste","combinaisonListes","listeDeNomsDePolygones","i","texte","texteCorr","cpt","pol","polcode","polsom","n","A","B","C","D","nom","creerNomDePolygone","pnom","q","p","pcode","enonce","point","randint","rotation","polygone","barycentre","nommePolygone","codageSegments","codageAngle","similitude","codageAngleDroit","carre","translation","vecteur","homothetie","grille","vide2d","seyes","mathalea2d","listeQuestionsToContenu"],"mappings":"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"}