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/6G25-oruL6Gga.js.map
{"version":3,"file":"6G25-oruL6Gga.js","sources":["../../src/exercices/6e/6G25.js"],"sourcesContent":["import { cercle } from '../../lib/2d/cercle.js'\nimport { cibleCarree, dansLaCibleCarree } from '../../lib/2d/cibles.js'\nimport { codageMediatrice } from '../../lib/2d/codages.js'\nimport { droite, droiteParPointEtPerpendiculaire, positionLabelDroite } from '../../lib/2d/droites.js'\nimport { point, pointAdistance, pointIntersectionLC, tracePoint } from '../../lib/2d/points.js'\nimport { norme, segmentAvecExtremites, vecteur } from '../../lib/2d/segmentsVecteurs.js'\nimport { labelPoint, texteParPoint } from '../../lib/2d/textes.js'\nimport { homothetie, similitude, symetrieAxiale, translation } from '../../lib/2d/transformations.js'\nimport { choisitLettresDifferentes } from '../../lib/outils/aleatoires.js'\nimport { lettreDepuisChiffre } from '../../lib/outils/outilString.js'\nimport Exercice from '../Exercice.js'\nimport { mathalea2d, colorToLatexOrHTML, fixeBordures } from '../../modules/2dGeneralites.js'\nimport { listeQuestionsToContenu, randint, calculANePlusJamaisUtiliser } from '../../modules/outils.js'\nexport const titre = 'Construct bisectors with self-correcting target'\nexport const amcReady = true\nexport const amcType = 'AMCOpen'\n/**\n * Construction de médiatrices avec dispositif d'auto-correction aléatoire\n * Ref 6G25\n * @author Jean-Claude Lhote (Ajout AMC par Eric Elter)\n * Publié le 30/11/2020\n */\nexport const uuid = 'd7052'\nexport const ref = '6G25'\nexport default function ConstruireMediatrices6e () {\n  Exercice.call(this) // Héritage de la classe Exercice()\n  this.titre = titre\n  this.consigne = ''\n  this.nbQuestions = 1\n  this.nbQuestionsModifiable = false\n  this.nbCols = 1\n  this.nbColsCorr = 1\n  this.nouvelleVersion = function () {\n    this.listeQuestions = [] // Liste de questions\n    this.listeCorrections = [] // Liste de questions corrigées\n    this.autoCorrection = []\n    let result = [0, 0]\n    let texteCorr = ''\n    let texte = ''\n\n    const celluleAlea = function (rang) {\n      const lettre = lettreDepuisChiffre(randint(1, rang))\n      const chiffre = Number(randint(1, rang)).toString()\n      return lettre + chiffre\n    }\n    // We prepare the figure...\n    const noms = choisitLettresDifferentes(4, 'IQ', true)\n    texte = `Construct the bisector $(d)$ of the segment $[${noms[0]}${noms[1]}]$ and the bisector $(d')$ of the segment $[${noms[2]}${noms[3]}]$.<br>`\n    texte += 'Extend the lines $(d)$ and $(d\\')$ to obtain their intersection point..<br>'\n    const marks = ['/', '//', '///', 'x', 'o', 'S', 'V']\n    const I = point(0, 0, 'I')\n    const A = pointAdistance(I, randint(3, 6))\n    const B = similitude(A, I, randint(65, 150), randint(8, 15) / 10)\n    const medA = droite(I, A)\n    const medB = droite(I, B)\n\n    const dA = droiteParPointEtPerpendiculaire(A, medA)\n    const dB = droiteParPointEtPerpendiculaire(B, medB)\n    medA.color = colorToLatexOrHTML('blue')\n    medB.color = colorToLatexOrHTML('green')\n    const cA = cercle(A, calculANePlusJamaisUtiliser(randint(25, 40) / 20))\n    const cB = cercle(B, calculANePlusJamaisUtiliser(randint(45, 60) / 20))\n    const A1 = pointIntersectionLC(dA, cA, noms[0], 1)\n    const A2 = symetrieAxiale(A1, medA, noms[1])\n    const B1 = pointIntersectionLC(dB, cB, noms[2], 1)\n    const B2 = symetrieAxiale(B1, medB, noms[3])\n    const sA = segmentAvecExtremites(A1, A2)\n    const sB = segmentAvecExtremites(B1, B2)\n    sA.color = colorToLatexOrHTML('black')\n    sB.color = colorToLatexOrHTML('black')\n\n    const objetsEnonce = []\n    const objetsCorrection = []\n    const nomA1 = texteParPoint(noms[0], translation(A1, homothetie(vecteur(A2, A1), A, 0.5 / norme(vecteur(A2, A1)))), 'medium', 'black', 1, '', true)\n    const nomA2 = texteParPoint(noms[1], translation(A2, homothetie(vecteur(A1, A2), A, 0.5 / norme(vecteur(A2, A1)))), 'medium', 'black', 1, '', true)\n    const nomB1 = texteParPoint(noms[2], translation(B1, homothetie(vecteur(B2, B1), A, 0.5 / norme(vecteur(B2, B1)))), 'medium', 'black', 1, '', true)\n    const nomB2 = texteParPoint(noms[3], translation(B2, homothetie(vecteur(B1, B2), A, 0.5 / norme(vecteur(B2, B1)))), 'medium', 'black', 1, '', true)\n\n    const cellule = celluleAlea(6)\n    result = dansLaCibleCarree(I.x, I.y, 6, 0.6, cellule)\n    const cible = cibleCarree({ x: result[0], y: result[1], rang: 6, taille: 0.6, color: '#f15929' })\n    cible.opacite = 0.7\n\n    objetsEnonce.push(cible, sA, sB, nomA1, nomA2, nomB1, nomB2)\n    objetsCorrection.push(cible, sA, sB, tracePoint(I), labelPoint(I), nomA1, nomA2, nomB1, nomB2)\n    objetsCorrection.push(medA, medB, codageMediatrice(A1, A2, 'blue', marks[1]), codageMediatrice(B1, B2, 'green', marks[2]))\n\n    // objectsCorrection.push(segment(M[i],N[i],arcenciel(i)),codingMediatrice(M[i],N[i],arcenciel(i+5),marks[i]))\n    // objectsCorrection.push(traceCompass(A1,N[i],20),traceCompass(B,N[i],20))\n    texteCorr += `The point $I$ of intersection of the two bisectors is in the ${cellule} box of the grid.<br>`\n    /* const xMin = Math.min(A1.x - 1, A2.x - 1, B1.x - 1, B2.x - 1, I.x - 4)\n    const yMin = Math.min(A1.y - 1, A2.y - 1, B1.y - 1, B2.y - 1, I.y - 4)\n    const xMax = Math.max(A1.x + 1, A2.x + 1, B1.x + 1, B2.x + 1, I.x + 4)\n    const yMax = Math.max(A1.y + 1, A2.y + 1, B1.y + 1, B2.y + 1, I.y + 4)\n    */\n    // We call the fixBordures function which will determine the Mathalea2d window.\n    // Here, the target was an object centered on (target.x, target.y) and of size 4, we create two diagonal points\n    // so that it is taken into account in its entirety with the row and column headers.\n    const params = fixeBordures([nomA1, nomA2, nomB1, nomB2, point(cible.x - 2.5, cible.y - 2.5), point(cible.x + 2.5, cible.y + 2.5)])\n    params.pixelsParCm = 20\n    params.scale = 0.7\n    objetsCorrection.push(texteParPoint('(d)', positionLabelDroite(medA, params), 'medium', 'black', 1, 'middle', true))\n    objetsCorrection.push(texteParPoint('(d\\')', positionLabelDroite(medB, params), 'middle', 'black', 1, 'middle', true))\n\n    this.autoCorrection = [\n      {\n        enonce: texte + mathalea2d(params, objetsEnonce),\n        propositions: [\n          {\n            texte: texteCorr + mathalea2d(params, objetsCorrection),\n            statut: 3, // (ici c'is the number of lines of the frame for the answer of the'élève sur AMC)\n            feedback: '',\n            enonce: 'Text written above or before check boxes', // EE : ce champ est facultatif et fonctionnel qu'in hybrid mode (in normal mode, there is no point)\n            sanscadre: true // EE : ce champ est facultatif et permet (si true) de cacher le cadre et les lignes acceptant la réponse de l'élève\n\n          }\n        ]\n      }\n    ]\n\n    this.listeQuestions.push(texte + mathalea2d(params, objetsEnonce))\n    this.listeCorrections.push(texteCorr + mathalea2d(params, objetsCorrection))\n    listeQuestionsToContenu(this)\n  }\n}\n"],"names":["titre","amcReady","amcType","uuid","ref","ConstruireMediatrices6e","Exercice","result","texteCorr","texte","celluleAlea","rang","lettre","lettreDepuisChiffre","randint","chiffre","noms","choisitLettresDifferentes","marks","I","point","A","pointAdistance","similitude","medA","droite","medB","dA","droiteParPointEtPerpendiculaire","dB","colorToLatexOrHTML","cA","cercle","calculANePlusJamaisUtiliser","cB","A1","pointIntersectionLC","A2","symetrieAxiale","B1","B2","sA","segmentAvecExtremites","sB","objetsEnonce","objetsCorrection","nomA1","texteParPoint","translation","homothetie","vecteur","norme","nomA2","nomB1","nomB2","cellule","dansLaCibleCarree","cible","cibleCarree","tracePoint","labelPoint","codageMediatrice","params","fixeBordures","positionLabelDroite","mathalea2d","listeQuestionsToContenu"],"mappings":"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"}