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/6G52-oRIwUfa4.js.map
{"version":3,"file":"6G52-oRIwUfa4.js","sources":["../../src/exercices/6e/6G52.js"],"sourcesContent":["import { codageAngleDroit } from '../../lib/2d/angles.js'\nimport { droite, droiteParPointEtPente, droiteParPointEtPerpendiculaire } from '../../lib/2d/droites.js'\nimport { point, pointSurDroite } from '../../lib/2d/points.js'\nimport { combinaisonListes, shuffle } from '../../lib/outils/arrayOutils'\nimport { miseEnEvidence } from '../../lib/outils/embellissements'\nimport Exercice from '../Exercice'\nimport { mathalea2d } from '../../modules/2dGeneralites.js'\nimport { listeQuestionsToContenu, randint } from '../../modules/outils.js'\nimport { labelOnLine } from './6G14.js'\nimport { context } from '../../modules/context.js'\nexport const titre = 'Use the relationships between perpendicularity and parallelism'\n\nexport const dateDePublication = '11/09/2022'\n\n/**\n * d0 et d1 sont parallèles données par l’énoncé\n * d1 et d2 sont perpendiculaires à d3\n * d4 perpendiculaire à d3 non marquée\n * d5 (et d6 ?) random\n *\n * Question :\n * Donner tous les couples de droites parallèles en justifiant.\n * Ou\n * Donner tous les couples de droites perpendiculaires en justifiant\n * Refactoring pour les noms des droites Mickael Guironnet\n * @author Guillaume Valmont\n * Référence 6G52\n*/\nexport const uuid = '5bac3'\nexport const ref = '6G52'\nexport default class TracerCarresRectangleslongueurDonnees extends Exercice {\n  constructor () {\n    super()\n    this.titre = titre\n    this.nbQuestions = 2\n\n    this.correctionDetailleeDisponible = true\n    this.correctionDetaillee = false\n\n    this.besoinFormulaireNumerique = ['Order', 3, '1: Parallel lines\\n2: Perpendicular lines\\n3: Combination']\n    this.sup = 3\n  }\n\n  nouvelleVersion () {\n    this.listeQuestions = []\n    this.listeCorrections = []\n    this.autoCorrection = []\n\n    let typesDeQuestionsDisponibles = ['Parallels', 'Perpendiculars']\n    if (this.sup === 1) typesDeQuestionsDisponibles = ['Parallels']\n    if (this.sup === 2) typesDeQuestionsDisponibles = ['Perpendiculars']\n\n    const listeTypeDeQuestions = combinaisonListes(typesDeQuestionsDisponibles, this.nbQuestions)\n    for (let i = 0, texte, texteCorr, cpt = 0; i < this.nbQuestions && cpt < 50;) {\n      const objetsEnonce = []\n      const noms = shuffle(['(d_1)', '(d_2)', '(d_3)', '(d_4)', '(d_5)', '(d_6)', '(d_7)'])\n      const couleurs = shuffle(['black', 'blue', 'green', '#2471A3', 'purple', 'red', 'brown'])\n      const couleur = (indice) => { // La fonction permet d'ajouter facilement une condition en fonction du contexte si besoin\n        return couleurs[indice]\n      }\n      const x = []\n      const y = []\n      for (let i = 0; i < 6; i++) {\n        x.push(randint(-3, 3, x))\n        y.push(randint(-3, 3, y))\n      }\n      for (let i = 0; i < 6; i++) {\n        x[i] = x[i] * 2 + randint(-10, 10) / 20\n        y[i] = y[i] * 2 + randint(-10, 10) / 20\n      }\n      const P03 = point(x[0], y[0]) //, texDroiteFigure(0), 'above left')\n      const P13 = point(x[1], y[0] + randint(-10, 10) / 10) //, texDroiteFigure(1), 'above left')\n      const d3 = droite(P03, P13, '', couleur(3))\n      const P23 = pointSurDroite(d3, x[2]) //, texDroiteFigure(2), 'above left')\n      const P43 = pointSurDroite(d3, x[3]) //, texDroiteFigure(4), 'above left')\n      const P53 = pointSurDroite(d3, x[4]) //, texDroiteFigure(5), 'above left')\n      const P63 = pointSurDroite(d3, x[5]) //, texDroiteFigure(6), 'above left')\n      // const P3 = pointOnRight(d3, Math.max(P03.x, P13.x, P23.x, P43.x, P53.x, P63.x) + 1) //, texRightFigure(3), 'right ')\n      const d0 = droiteParPointEtPerpendiculaire(P03, d3, '', couleur(0))\n      const d1 = droiteParPointEtPerpendiculaire(P13, d3, '', couleur(1))\n      const d2 = droiteParPointEtPerpendiculaire(P23, d3, '', couleur(2))\n      const d4 = droiteParPointEtPerpendiculaire(P43, d3, '', couleur(4))\n      const d5 = droiteParPointEtPente(P53, randint(-3, 3, [0]), '', couleur(5))\n      const d6 = droiteParPointEtPente(P63, randint(-3, 3, [0]), '', couleur(6))\n      const P1 = pointSurDroite(d1, 10)\n      const P2 = pointSurDroite(d2, 10)\n      const A13 = codageAngleDroit(P1, P13, P43, couleur(1), 0.7, 1, 0.6, couleur(1), 0.2)\n      const A23 = codageAngleDroit(P2, P23, P43, couleur(2), 0.7, 1, 0.6, couleur(2), 0.2)\n      objetsEnonce.push(d0, d1, d2, d3, d4, d5, d6, A13, A23) // , labelLatexPoint({ points: [P03, P13, P23, P43, P53, P63, P3] }))\n      // The lines below allow you to have a display with optimized dimensions\n      const xmin = Math.min(P03.x, P13.x, P23.x, P43.x, P53.x, P63.x) - 3\n      const xmax = Math.max(P03.x, P13.x, P23.x, P43.x, P53.x, P63.x) + 3\n      const ymin = Math.min(P03.y, P13.y, P23.y, P43.y, P53.y, P63.y) - 4\n      const ymax = Math.max(P03.y, P13.y, P23.y, P43.y, P53.y, P63.y) + 4\n\n      context.fenetreMathalea2d = [xmin, ymin, xmax, ymax] // important pour la position des labels\n      const d5nom = labelOnLine(d5, '$' + noms[5] + '$', { color: couleurs[5], taille: 8 })\n      const d6nom = labelOnLine(d6, '$' + noms[6] + '$', { color: couleurs[6], taille: 8, usedPosition: [d5nom] })\n      const d0nom = labelOnLine(d0, '$' + noms[0] + '$', { color: couleurs[0], taille: 8, usedPosition: [d5nom, d6nom] })\n      const d1nom = labelOnLine(d1, '$' + noms[1] + '$', { color: couleurs[1], taille: 8, usedPosition: [d5nom, d6nom, d0nom] })\n      const d2nom = labelOnLine(d2, '$' + noms[2] + '$', { color: couleurs[2], taille: 8, usedPosition: [d5nom, d6nom, d0nom, d1nom] })\n      const d4nom = labelOnLine(d4, '$' + noms[4] + '$', { color: couleurs[4], taille: 8, usedPosition: [d5nom, d6nom, d0nom, d1nom, d2nom] })\n      const d3nom = labelOnLine(d3, '$' + noms[3] + '$', { color: couleurs[3], taille: 8, usedPosition: [d5nom, d6nom, d0nom, d1nom, d2nom, d4nom] })\n\n      objetsEnonce.push(d0nom, d1nom, d2nom, d3nom, d4nom, d5nom, d6nom)\n      // Mathalea2d window parameters for normal statement\n      const params = { xmin, ymin, xmax, ymax, pixelsParCm: 20, scale: 1 }\n      // We add to the text of the correction, the figure of the correction\n      const texDroiteEnonce = (indice) => {\n        return `$${miseEnEvidence(noms[indice], couleurs[indice])}$`\n      }\n      texte = `The lines ${texDroiteEnonce(0)} and ${texDroiteEnonce(1)} are parallel.<br>`\n      switch (listeTypeDeQuestions[i]) {\n        case 'Parallels':\n          texte += 'Give all the pairs of parallel lines by justifying.'\n          texteCorr = `According to the statement, the lines ${texDroiteEnonce(0)} and ${texDroiteEnonce(1)} are parallel.<br><br>`\n          texteCorr += `The lines ${texDroiteEnonce(2)} and ${texDroiteEnonce(1)} are perpendicular to the same line ${texDroiteEnonce(3)}`\n          this.correctionDetaillee ? texteCorr += '.<br>However, if two lines are perpendicular to the same line then they are parallel to each other.<br>E' : texteCorr += ', '\n          texteCorr += 'They are therefore parallel.<br><br>'\n          texteCorr += `The lines ${texDroiteEnonce(0)} and ${texDroiteEnonce(2)} are parallel to the same line ${texDroiteEnonce(1)}`\n          this.correctionDetaillee ? texteCorr += '.<br>Now, if two lines are parallel to the same third line then they are parallel to each other.<br>E' : texteCorr += ', '\n          texteCorr += 'They are therefore parallel.<br>'\n          texteCorr += `<br>Note:<br>The ${texDroiteEnonce(4)} line also seems to be parallel to the others but nothing allows us to affirm this.<br>The statement would have had to say that it is parallel to another or that a right angle is marked for example.`\n          break\n        case 'Perpendiculars':\n          texte += 'Give all the pairs of perpendicular lines by justifying'\n          texteCorr = `The codings make it possible to assert that the lines ${texDroiteEnonce(1)} and ${texDroiteEnonce(2)} are both perpendicular to ${texDroiteEnonce(3)}<br><br>`\n          texteCorr += `The lines ${texDroiteEnonce(0)} and ${texDroiteEnonce(1)} are parallel (this is what the statement says) and ${texDroiteEnonce(3)} is perpendicular to ${texDroiteEnonce(1)}`\n          this.correctionDetaillee ? texteCorr += '.<br>Now, if two lines are parallel and if a third line is perpendicular to one then it is perpendicular to the other.<br>D' : texteCorr += 'd'\n          texteCorr += `onc ${texDroiteEnonce(3)} is also perpendicular to ${texDroiteEnonce(0)}.<br>`\n          texteCorr += `<br>Note:<br>The line ${texDroiteEnonce(4)} also seems to be perpendicular to ${texDroiteEnonce(3)} but nothing allows us to assert this.<br>The statement would have had to say that it is parallel to another or that a right angle is marked for example.`\n          break\n      }\n      texte += '<br>' + (context.vue === 'diap' ? '<center>' : '') + mathalea2d(params, objetsEnonce) + (context.vue === 'diap' ? '</center>' : '')\n      // If the question has never been asked, we save it\n      if (this.questionJamaisPosee(i, x, y)) {\n        this.listeQuestions.push(texte)\n        this.listeCorrections.push(texteCorr)\n        i++\n      }\n      cpt++\n    }\n    listeQuestionsToContenu(this)\n  }\n}\n"],"names":["titre","dateDePublication","uuid","ref","TracerCarresRectangleslongueurDonnees","Exercice","typesDeQuestionsDisponibles","listeTypeDeQuestions","combinaisonListes","i","texte","texteCorr","cpt","objetsEnonce","noms","shuffle","couleurs","couleur","indice","x","y","randint","P03","point","P13","d3","droite","P23","pointSurDroite","P43","P53","P63","d0","droiteParPointEtPerpendiculaire","d1","d2","d4","d5","droiteParPointEtPente","d6","P1","P2","A13","codageAngleDroit","A23","xmin","xmax","ymin","ymax","context","d5nom","labelOnLine","d6nom","d0nom","d1nom","d2nom","d4nom","d3nom","params","texDroiteEnonce","miseEnEvidence","mathalea2d","listeQuestionsToContenu"],"mappings":"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"}