File: /home/mmtprep/public_html/mathzen.mmtprep.com/assets/5G41-9FaYoFGW.js.map
{"version":3,"file":"5G41-9FaYoFGW.js","sources":["../../src/exercices/5e/5G41.js"],"sourcesContent":["import { codageAngleDroit } from '../../lib/2d/angles.js'\nimport { cercle, cercleCentrePoint, traceCompas } from '../../lib/2d/cercle.js'\nimport { cibleCarree, dansLaCibleCarree } from '../../lib/2d/cibles.js'\nimport { afficheLongueurSegment, afficheMesureAngle, codageSegments } from '../../lib/2d/codages.js'\nimport { droite } from '../../lib/2d/droites.js'\nimport {\n milieu,\n point,\n pointAdistance,\n pointIntersectionCC,\n pointIntersectionDD,\n tracePoint\n} from '../../lib/2d/points.js'\nimport { polygoneAvecNom } from '../../lib/2d/polygones.js'\nimport { demiDroite, longueur, segment } from '../../lib/2d/segmentsVecteurs.js'\nimport { labelPoint, texteParPosition } from '../../lib/2d/textes.js'\nimport { rotation, similitude } from '../../lib/2d/transformations.js'\nimport { choice } from '../../lib/outils/arrayOutils'\nimport { miseEnEvidence, texteEnCouleurEtGras } from '../../lib/outils/embellissements'\nimport { choisitLettresDifferentes } from '../../lib/outils/aleatoires'\nimport { arrondi } from '../../lib/outils/nombres'\nimport { lettreDepuisChiffre } from '../../lib/outils/outilString.js'\nimport { texNombre } from '../../lib/outils/texNombre'\nimport Exercice from '../deprecatedExercice.js'\nimport { mathalea2d } from '../../modules/2dGeneralites.js'\nimport { listeQuestionsToContenu, randint, calculANePlusJamaisUtiliser } from '../../modules/outils.js'\n\nexport const titre = 'Construct specific quadrilaterals'\nexport const dateDeModifImportante = '02/09/2023'\nexport const dateDePublication = '03/02/2020'\n/**\n * Construction de quadrilatères avec dispositif d'auto-correction aléatoire\n * @author Jean-Claude Lhote\n */\nexport const uuid = '37e37'\nexport const ref = '5G41'\nexport default function ConstructionsParallelogrammesParticuliers () {\n Exercice.call(this) // Héritage de la classe Exercice()\n this.nbQuestions = 1\n this.nbQuestionsModifiable = false\n this.nbCols = 1\n this.nbColsCorr = 1\n this.sup = 1\n this.correctionDetaillee = false\n this.correctionDetailleeDisponible = true\n this.nouvelleVersion = function () {\n this.listeQuestions = [] // Liste de questions\n this.listeCorrections = [] // Liste de questions corrigées\n this.autoCorrection = []\n let texte = ''; let texteCorr = ''\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(5, 'QOX', true) // on choisit 5 lettres, les 4 premières sont les sommets, la 5e est le centre\n const nom = noms[0] + noms[1] + noms[2] + noms[3]\n let A, B, C, D, O, d1, d2, c1, c2, c3, c4, alpha, tri, t1, t2, t3, t4, t5, dd1, dd2\n const objetsEnonce = []; const objetsCorrection = []\n let typesDeQuestionsDisponibles\n let xm, ym, xM, yM\n if (this.sup === 1) typesDeQuestionsDisponibles = [1, 2, 3]\n else if (this.sup === 2) typesDeQuestionsDisponibles = [4, 5, 6, 7]\n else typesDeQuestionsDisponibles = [1, 2, 3, 4, 5, 6, 7]\n typesDeQuestionsDisponibles = [7, 7]\n const typeDeQuestion = choice(typesDeQuestionsDisponibles)\n switch (typeDeQuestion) {\n case 1:\n A = point(0, 0, noms[0])\n c1 = randint(20, 25) * 2 // AB\n c4 = calculANePlusJamaisUtiliser(randint(20, 30, c1 / 2) / 5) // AD\n c1 = calculANePlusJamaisUtiliser(c1 / 10)\n d1 = 5 * (Math.abs(c4 - c1) + 2)\n d2 = 5 * (c1 + c4 - 3)\n d1 = calculANePlusJamaisUtiliser(randint(Math.min(d1, d2), Math.max(d1, d2)) / 5) // BD\n B = pointAdistance(A, c1, randint(-30, 30), noms[1])\n D = pointIntersectionCC(cercle(A, c4), cercle(B, d1), noms[3])\n O = milieu(B, D, noms[4])\n C = rotation(A, O, 180, noms[2])\n texte = `$${nom}$ is a parallelogram such that`\n texte += `$${noms[0] + noms[1]}=${texNombre(c1)}$ cm, $${noms[0] + noms[3]}=${texNombre(c4)}$ cm, $${noms[1] + noms[3]}=${texNombre(d1)}$ cm.<br>`\n objetsEnonce.push(tracePoint(A, B), labelPoint(A, B))\n if (this.correctionDetaillee) {\n texteCorr += `Since $${nom}$ is a parallelogram, its diagonals intersect in the middle.<br>`\n texteCorr += `Let's name $${noms[4]}$, the midpoint of $[${noms[1] + noms[3]}]$. $${noms[2]}$ is the symmetric of $${noms[0]}$ with respect to $${noms[4]}$.`\n texteCorr += `Let's first construct the triangle $${noms[0] + noms[1] + noms[3]}$.<br>Then let's place $${noms[4]}$, the midpoint of $[${noms[1] + noms[3]}]$ and finally the point $${noms[2]}$.<br>`\n }\n if (longueur(B, D) !== longueur(A, C)) {\n texteCorr += `Like $${noms[0] + noms[3]}\\ne ${noms[0] + noms[1]}$ and $${noms[0] + noms[2]}\\ne ${noms[3] + noms[1]}$, the parallelogram $${nom}$ is neither a rhombus nor a rectangle.<br>`\n texteCorr += `$${miseEnEvidence(nom)}$ ${texteEnCouleurEtGras('is not a particular parallelogram')}.<br>`\n } else {\n texteCorr += `Since $$${noms[0] + noms[2]} = ${noms[3] + noms[1]}$ and $${noms[0] + noms[3]}\\ne ${noms[0] + noms[1]}$, the parallelogram $${miseEnEvidence(nom)}$ ${texteEnCouleurEtGras('is a rectangle')}.<br>`\n }\n objetsCorrection.push(afficheLongueurSegment(A, B, 'black', -0.5), afficheLongueurSegment(A, D, 'black', 0.5))\n t1 = traceCompas(A, D, 15)\n t2 = traceCompas(B, D, 15)\n t3 = traceCompas(O, C, 20)\n tri = polygoneAvecNom(A, B, D)\n xm = Math.min(A.x, B.x, D.x) - 0.8\n ym = Math.min(A.y, B.y, D.y) - 0.8\n xM = Math.max(A.x, B.x, D.x) + 0.8\n yM = Math.max(A.y, B.y, D.y) + 0.8\n break\n case 2:\n O = point(0, 0, noms[4])\n c1 = randint(25, 35) * 2 // AC\n c4 = calculANePlusJamaisUtiliser(randint((c1 + 4) / 2, 45) / 5) // BD\n c1 = calculANePlusJamaisUtiliser(c1 / 10)\n alpha = randint(100, 130)\n\n A = pointAdistance(O, c1 / 2, randint(-30, 30), noms[0])\n B = similitude(A, O, alpha, c4 / c1, noms[1])\n D = rotation(B, O, 180, noms[3])\n C = rotation(A, O, 180, noms[2])\n texte = `$${nom}$ is a parallelogram with center $${noms[4]}$ such that`\n texte += `$${noms[0] + noms[2]}=${texNombre(c1)}$ cm, $${noms[1] + noms[3]}=${texNombre(c4)}$ cm and $\\\\widehat{${noms[0] + noms[4] + noms[1]}}=${alpha}\\\\degree$ counterclockwise.<br>`\n objetsEnonce.push(tracePoint(A, O), labelPoint(A, O))\n if (this.correctionDetaillee) {\n texteCorr += `Since $${nom}$ is a parallelogram, its diagonals intersect $${noms[4]}$ in the middle.<br>`\n texteCorr += `$${noms[2]}$ is the symmetric of $${noms[0]}$ with respect to $${noms[4]}$. The distance $${noms[4] + noms[1]}$ is equal to half of $${noms[1] + noms[3]}$.<br>`\n texteCorr += `Let us first construct the point $${noms[2]}$ symmetrical to $${noms[0]}$ with respect to $${noms[4]}$.<br>`\n texteCorr += `Then let's construct an angle $\\\\widehat{${noms[0] + noms[4] + 'x'}}$ measuring $${alpha}\\\\degree$ counterclockwise.<br>`\n texteCorr += `Finally, let us construct the point $${noms[1]}$ on $[${noms[4]}x)$ and its symmetric $${noms[3]}$ with respect to $${noms[4]}$ both located at $${texNombre(arrondi(c4 / 2))}$ cm from $${noms[4]}$.<br>`\n }\n texteCorr += `$${miseEnEvidence(nom)}$ ${texteEnCouleurEtGras('is not a particular parallelogram')}.<br>`\n xm = Math.min(A.x, B.x, C.x) - 0.8\n ym = Math.min(A.y, B.y, C.y) - 0.8\n xM = Math.max(A.x, B.x, C.x) + 0.8\n yM = Math.max(A.y, B.y, C.y) + 0.8\n break\n case 3:\n A = point(0, 0, noms[0])\n c1 = randint(26, 40) * 2 // AB\n c4 = calculANePlusJamaisUtiliser(randint(15, 25) / 5) // AD\n c1 = calculANePlusJamaisUtiliser(c1 / 10)\n\n B = pointAdistance(A, c1, randint(-30, 30), noms[1])\n D = similitude(B, A, 90, c4 / c1, noms[3])\n O = milieu(B, D, noms[4])\n C = rotation(A, O, 180, noms[2])\n texte = `$${nom}$ is a parallelogram such that`\n texte += `$${noms[0] + noms[1]}=${texNombre(c1)}$ cm, $${noms[0] + noms[3]}=${texNombre(c4)}$ cm, $${noms[1] + noms[3]}=${noms[0] + noms[2]}$.<br>`\n objetsEnonce.push(tracePoint(A, B), labelPoint(A, B))\n\n if (this.correctionDetaillee) {\n texteCorr += `Let $${noms[4]}$ be the midpoint of $[${noms[1] + noms[3]}]$. $${noms[2]}$ is the symmetric of $${noms[0]}$ with respect to $${noms[4]}$.<br>`\n texteCorr += `Let's first construct the triangle $${noms[0] + noms[1] + noms[3]}$ then $${noms[4]}$ in the middle of $[${noms[1] + noms[3]}]$.<br>`\n texteCorr += `The four vertices of $${nom}$ are on the circle with center $${noms[4]}$ passing through $${noms[0]}$. $[${noms[0]}${noms[2]}]$ and $[${noms[1]}${noms[3]}]$ are diameters of this circle.<br>`\n }\n texteCorr += `Since $${nom}$ is a parallelogram whose diagonals have the same length, $${miseEnEvidence(nom)}$ ${texteEnCouleurEtGras('is therefore a rectangle')}.<br>`\n objetsCorrection.push(afficheLongueurSegment(A, B, 'black', -0.5), afficheLongueurSegment(A, D, 'black', 0.5))\n t1 = cercleCentrePoint(O, A, 'gray')\n t1.opacite = 0.5\n t3 = traceCompas(O, C, 20)\n tri = polygoneAvecNom(A, B, D)\n xm = Math.min(A.x, B.x, D.x) - 0.8\n ym = Math.min(A.y, B.y, D.y) - 0.8\n xM = Math.max(A.x, B.x, D.x) + 0.8\n yM = Math.max(A.y, B.y, D.y) + 0.8\n\n break\n case 4:\n A = point(0, 0, noms[0])\n c1 = randint(15, 30) // AB\n c4 = calculANePlusJamaisUtiliser(randint(15, 20, c1) / 5) // BD\n c1 = calculANePlusJamaisUtiliser(c1 / 5)\n\n B = pointAdistance(A, c1, randint(-30, 30), noms[1])\n D = pointIntersectionCC(cercle(A, c1), cercle(B, c4), noms[3])\n O = milieu(B, D, noms[4])\n C = rotation(A, O, 180, noms[2])\n\n texte = `$${nom}$ is a parallelogram such that`\n texte += `$${noms[0] + noms[1]}=${texNombre(c1)}$ cm, $${noms[1] + noms[3]}=${texNombre(c4)}$ cm, $[${noms[0] + noms[2]}]\\\\perp [${noms[1] + noms[3]}]$.<br>`\n objetsEnonce.push(tracePoint(A, B), labelPoint(A, B))\n\n if (this.correctionDetaillee) {\n texteCorr += `Since $${nom}$ is a parallelogram whose diagonals are perpendicular, it is a rhombus and then`\n texteCorr += `the triangle $${noms[0] + noms[1] + noms[3]}$ is isosceles in $${noms[0]}$.<br>`\n texteCorr += `Let's first construct the triangle $${noms[0] + noms[1] + noms[3]}$ then $${noms[4]}$, the midpoint of $[${noms[1] + noms[3]}]$ and finally the point $${noms[2]}$.<br>`\n }\n texteCorr += `Since $${nom}$ is a parallelogram whose diagonals are perpendicular, $${miseEnEvidence(nom)}$ ${texteEnCouleurEtGras('is therefore a rhombus')}.<br>`\n objetsCorrection.push(afficheLongueurSegment(A, B, 'black', -0.5), afficheLongueurSegment(A, D, 'black', 0.5))\n t1 = traceCompas(A, D, 15)\n t2 = traceCompas(B, D, 15)\n t3 = traceCompas(O, C, 20)\n tri = polygoneAvecNom(A, B, D)\n xm = Math.min(A.x, B.x, D.x) - 0.8\n ym = Math.min(A.y, B.y, D.y) - 0.8\n xM = Math.max(A.x, B.x, D.x) + 0.8\n yM = Math.max(A.y, B.y, D.y) + 0.8\n break\n case 5:\n A = point(0, 0, noms[0])\n c1 = randint(20, 35) * 2 // AC\n c4 = calculANePlusJamaisUtiliser(randint((c1 - 4) / 2, 35) / 5) // AD\n c1 = calculANePlusJamaisUtiliser(c1 / 10)\n alpha = randint(95, 120)\n B = pointAdistance(A, c1, randint(-30, 30), noms[1])\n D = similitude(B, A, alpha, c4 / c1, noms[3])\n O = milieu(B, D, noms[4])\n C = rotation(A, O, 180, noms[2])\n texte = `$${nom}$ is a parallelogram with center $${noms[4]}$ such that`\n texte += `$${noms[0] + noms[1]}=${texNombre(c1)}$ cm, $${noms[0] + noms[3]}=${texNombre(c4)}$ cm and $\\\\widehat{${noms[1] + noms[2] + noms[3]}}=${alpha}\\\\degree$ counterclockwise.<br>`\n objetsEnonce.push(tracePoint(A, B), labelPoint(A, B))\n if (this.correctionDetaillee) {\n texteCorr += `Since $${nom}$ is a parallelogram, its opposite angles have the same measure, so $\\\\widehat{${noms[3] + noms[0] + noms[1]}}=${alpha}\\\\degree$.<br>`\n texteCorr += `Let's first construct the triangle $${noms[0] + noms[1] + noms[3]}$.<br>`\n texteCorr += `Let $${noms[4]}$ be the midpoint of $[${noms[1] + noms[3]}]$.<br>`\n texteCorr += `Let us then construct the point $${noms[2]}$ symmetrical to $${noms[0]}$ with respect to $${noms[4]}$, midpoint of $[${noms[1] + noms[3]}]$.<br>`\n }\n texteCorr += `Since $${nom}$ is a parallelogram which does not have a right angle and its consecutive sides are of different lengths,`\n texteCorr += `$${miseEnEvidence(nom)}$ ${texteEnCouleurEtGras('is not a particular parallelogram')}.<br>`\n t1 = traceCompas(A, D, 15)\n t2 = traceCompas(A, B, 15)\n t3 = traceCompas(O, C, 20)\n tri = polygoneAvecNom(A, B, D)\n xm = Math.min(A.x, B.x, D.x) - 0.8\n ym = Math.min(A.y, B.y, D.y) - 0.8\n xM = Math.max(A.x, B.x, D.x) + 0.8\n yM = Math.max(A.y, B.y, D.y) + 0.8\n break\n case 6:\n A = point(0, 0, noms[0])\n c1 = randint(20, 35) * 2 // AC\n c2 = randint(15, 20) * 2 // AO\n c3 = calculANePlusJamaisUtiliser(c1 + randint(5, 10) * 2) - c2 // BO\n c1 = calculANePlusJamaisUtiliser(c1 / 10)\n c2 = calculANePlusJamaisUtiliser(c2 / 10)\n c3 = calculANePlusJamaisUtiliser(c3 / 10)\n\n B = pointAdistance(A, c1, randint(-30, 30), noms[1])\n O = pointIntersectionCC(cercle(A, c2), cercle(B, c3), noms[4])\n C = rotation(A, O, 180, noms[2])\n D = rotation(B, O, 180, noms[3])\n texte = `$${nom}$ is a parallelogram with center $${noms[4]}$ such that`\n texte += `$${noms[0] + noms[1]}=${texNombre(c1)}$ cm, $${noms[4] + noms[2]}=${texNombre(c2)}$ cm and $${noms[4] + noms[3]}=${texNombre(c3)}$ cm.<br>`\n objetsEnonce.push(tracePoint(A, B), labelPoint(A, B))\n if (this.correctionDetaillee) {\n texteCorr += `Since $${nom}$ is a parallelogram, its diagonals intersect $${noms[4]}$ in the middle.<br>`\n texteCorr += `We deduce that $${noms[0] + noms[4]}=${noms[4] + noms[2]}=${texNombre(c2)}$ cm and that $${noms[1] + noms[4]}=${noms[4] + noms[3]}=${texNombre(c3)}$ cm.<br>`\n texteCorr += `Let's first construct the triangle $${noms[0] + noms[1] + noms[4]}$`\n texteCorr += `then the respective symmetric points $${noms[2]}$ and $${noms[3]}$ of $${noms[0]}$ and $${noms[1]}$ with respect to $${noms[4]}$.<br>`\n }\n if (c1 * c1 !== (c2 * c2 + c3 * c3)) {\n texteCorr += `The triangle $${noms[0] + noms[1] + noms[4]}$ is not a right triangle, so the diagonals are not perpendicular.<br>`\n if (c2 === c3) texteCorr += `The diagonals are the same length. $${nom}$ is a parallelogram whose diagonals are of equal length, $${miseEnEvidence(nom)}$ ${texteEnCouleurEtGras('is therefore a rectangle')}.<br>`\n else texteCorr += `In addition, they do not have the same length, so $${miseEnEvidence(nom)}$ ${texteEnCouleurEtGras('is not a particular parallelogram')}.<br>`\n } else {\n texteCorr += `The triangle $${noms[0] + noms[1] + noms[4]}$ is a right triangle, so the diagonals are perpendicular.<br>`\n if (c2 === c3) texteCorr += `moreover the diagonals have the same length. $${nom}$ is a parallelogram whose diagonals are perpendicular and of the same length, $${miseEnEvidence(nom)}$ ${texteEnCouleurEtGras('is therefore a square')}.<br>`\n }\n texteCorr += '.<br>'\n t1 = traceCompas(A, O, 20)\n t2 = traceCompas(B, O, 20)\n t3 = traceCompas(O, C, 30)\n t4 = traceCompas(O, D, 30)\n\n tri = polygoneAvecNom(A, B, O)\n xm = Math.min(A.x, B.x, O.x) - 0.8\n ym = Math.min(A.y, B.y, O.y) - 0.8\n xM = Math.max(A.x, B.x, O.x) + 0.8\n yM = Math.max(A.y, B.y, O.y) + 0.8\n break\n case 7:\n A = point(0, 0, noms[0])\n c1 = calculANePlusJamaisUtiliser(randint(30, 40) / 5) // AC\n c2 = randint(25, 40)// angle OAB\n c3 = randint(30, 45, c2) // angle OCB\n\n C = pointAdistance(A, c1, randint(-30, 30), noms[2])\n O = milieu(A, C, noms[4])\n B = rotation(C, A, c2)\n dd1 = droite(A, B)\n D = rotation(A, C, -c3)\n dd2 = droite(C, D)\n B = pointIntersectionDD(dd1, dd2, noms[1])\n D = rotation(B, O, 180, noms[3])\n texte = `$${nom}$ is a parallelogram with center $${noms[4]}$ such that`\n texte += `$${noms[0] + noms[2]}=${texNombre(c1)}$ cm.<br>$\\\\widehat{${noms[4] + noms[0] + noms[1]}}=${c2}\\\\degree$ counterclockwise.<br>$\\\\widehat{${noms[4] + noms[2] + noms[1]}}=${c3}\\\\degree$ clockwise.<br>`\n objetsEnonce.push(tracePoint(A, C), labelPoint(A, C))\n if (this.correctionDetaillee) {\n texteCorr += `Since $${nom}$ is a parallelogram, its opposite sides are parallel.<br>`\n texteCorr += `The diagonal $[${noms[0]}${noms[2]}]$ forms equal alternate-internal angles $\\\\widehat{${noms[4] + noms[0] + noms[1]}}$ and $\\\\widehat{${noms[4] + noms[2] + noms[3]}}$.<br>`\n texteCorr += `Likewise the angles $\\\\widehat{${noms[4] + noms[0] + noms[3]}}$ and $\\\\widehat{${noms[4] + noms[2] + noms[1]}}$ are also alternate-internal equal.<br>`\n texteCorr += `We deduce that $\\\\widehat{${noms[4] + noms[0] + noms[3]}}=\\\\widehat{${noms[4] + noms[2] + noms[1]}}=${miseEnEvidence(c3, 'red')}\\\\degree$ and that $\\\\widehat{${noms[4] + noms[0] + noms[1]}}=\\\\widehat{${noms[4] + noms[2] + noms[3]}}=${miseEnEvidence(c2, 'blue')}\\\\degree$.<br>`\n texteCorr += `Let's first construct the triangle $${noms[0] + noms[1] + noms[2]}$`\n texteCorr += `then the point $${noms[3]}$ symmetrical to $${noms[1]}$ with respect to $${noms[4]}$.<br>`\n }\n\n texteCorr += `The triangle $${noms[0] + noms[1] + noms[2]}$ is not an isosceles triangle because its angles are not equal.<br>`\n texteCorr += `Moreover, in this triangle $${noms[0] + noms[1] + noms[2]}$, the angle $\\\\widehat{${noms[0] + noms[1] + noms[2]}}$ measures $${180 - c2 - c3}\\\\degree$ and is not straight therefore $${miseEnEvidence(nom)}$ ${texteEnCouleurEtGras('is not a particular parallelogram')}.<br>`\n t1 = afficheMesureAngle(O, A, B, 'blue', 1, texNombre(c2) + '°')\n t2 = afficheMesureAngle(O, C, B, 'red', 1, texNombre(c3) + '°')\n t3 = traceCompas(O, D, 30)\n t5 = tracePoint(O)\n t5.style = '+'\n objetsCorrection.push(t1, t2)\n tri = polygoneAvecNom(A, B, C)\n xm = Math.min(A.x, B.x, C.x) - 0.8\n ym = Math.min(A.y, B.y, C.y) - 0.8\n xM = Math.max(A.x, B.x, C.x) + 0.8\n yM = Math.max(A.y, B.y, C.y) + 0.8\n break\n }\n texte += `Construct the parallelogram $${nom}$ and specify if it is a particular parallelogram.<br>`\n\n const p = polygoneAvecNom(A, B, C, D)\n\n const xMin = Math.min(A.x, B.x, C.x, D.x) - 2\n const yMin = Math.min(A.y, B.y, C.y, D.y) - 2\n const xMax = Math.max(A.x, B.x, C.x, D.x) + 2\n const yMax = Math.max(A.y, B.y, C.y, D.y) + 2\n\n const cellule1 = celluleAlea(5)\n const cellule2 = celluleAlea(5)\n const cellule3 = celluleAlea(5)\n const result1 = dansLaCibleCarree(B.x, B.y, 5, 0.3, cellule3)\n const result2 = dansLaCibleCarree(C.x, C.y, 5, 0.3, cellule1)\n const result3 = dansLaCibleCarree(D.x, D.y, 5, 0.3, cellule2)\n const cible1 = cibleCarree({ x: result1[0], y: result1[1], rang: 5, num: '', taille: 0.4, color: 'gray' })\n cible1.taille = 0.3\n cible1.opacite = 0.7\n const cible2 = cibleCarree({ x: result2[0], y: result2[1], rang: 5, num: '', taille: 0.4, color: 'gray' })\n cible2.taille = 0.3\n cible2.opacite = 0.7\n const cible3 = cibleCarree({ x: result3[0], y: result3[1], rang: 5, num: '', taille: 0.4, color: 'gray' })\n cible3.taille = 0.3\n cible3.opacite = 0.7\n dd1 = segment(O, A)\n dd2 = segment(O, B)\n const dd3 = segment(O, C)\n const dd4 = segment(O, D)\n\n switch (typeDeQuestion) {\n case 1:\n if (this.correctionDetaillee) texteCorr += mathalea2d({ xmin: xm, ymin: ym, xmax: xM, ymax: yM, pixelsParCm: 25, scale: 1 }, objetsCorrection, t1, t2, tri[0], tri[1], afficheLongueurSegment(D, B)) + '<br>'\n objetsEnonce.push(cible3, cible2)\n objetsCorrection.push(p[0], p[1], t3)\n objetsCorrection.push(cible3, cible2, dd1, dd2, dd3, dd4, labelPoint(O), codageSegments('||', 'red', A, O, O, C), codageSegments('|||', 'blue', B, O, O, D), afficheLongueurSegment(O, B))\n break\n case 2:\n if (this.correctionDetaillee) texteCorr += mathalea2d({ xmin: xm, ymin: ym, xmax: xM, ymax: yM, pixelsParCm: 25, scale: 1 }, codageSegments('||', 'red', A, O, O, C), t3, dd1, dd3, dd2, afficheMesureAngle(A, O, B, 'black', 1, alpha + '°'), tracePoint(A, O, C), labelPoint(A, O, C), texteParPosition('x', B.x - 0.5, B.y), afficheLongueurSegment(A, O), afficheLongueurSegment(O, C)) + '<br>'\n objetsEnonce.push(cible3, cible2, cible1)\n objetsCorrection.push(p[0], p[1], t3, afficheLongueurSegment(O, D))\n objetsCorrection.push(cible3, cible2, cible1, dd1, dd2, dd3, dd4, labelPoint(O), codageSegments('||', 'red', A, O, O, C), codageSegments('|||', 'blue', B, O, O, D), afficheMesureAngle(A, O, B, 'black', 1, alpha + '°'))\n\n break\n case 3:\n if (this.correctionDetaillee) texteCorr += mathalea2d({ xmin: xm, ymin: ym, xmax: xM, ymax: yM, pixelsParCm: 25, scale: 1 }, objetsCorrection, tri[0], tri[1], codageAngleDroit(D, A, B)) + '<br>'\n objetsEnonce.push(cible3, cible2)\n objetsCorrection.push(p[0], p[1], t1, t3)\n objetsCorrection.push(cible3, cible2, dd1, dd2, dd3, dd4, labelPoint(O), codageSegments('||', 'red', A, O, O, C), codageSegments('||', 'red', B, O, O, D))\n\n break\n case 4:\n if (this.correctionDetaillee) texteCorr += mathalea2d({ xmin: xm, ymin: ym, xmax: xM, ymax: yM, pixelsParCm: 25, scale: 1 }, objetsCorrection, tri[0], tri[1], afficheLongueurSegment(D, B), t2, traceCompas(A, B, 60), traceCompas(A, D, 60)) + '<br>'\n objetsEnonce.push(cible3, cible2)\n objetsCorrection.push(p[0], p[1], t3, afficheLongueurSegment(O, B))\n objetsCorrection.push(codageAngleDroit(A, O, D), cible3, cible2, dd1, dd2, dd3, dd4, labelPoint(O), codageSegments('||', 'red', A, O, O, C), codageSegments('|||', 'blue', B, O, O, D))\n break\n case 5:\n if (this.correctionDetaillee) texteCorr += mathalea2d({ xmin: xm, ymin: ym, xmax: xM, ymax: yM, pixelsParCm: 25, scale: 1 }, tri[0], tri[1], demiDroite(A, B), demiDroite(A, D), afficheMesureAngle(B, A, D, 'black', 1, alpha + '°'), afficheLongueurSegment(A, B), afficheLongueurSegment(A, D)) + '<br>'\n objetsEnonce.push(cible3, cible2)\n objetsCorrection.push(p[0], p[1], t3)\n objetsCorrection.push(cible3, cible2, dd1, dd2, dd3, dd4, labelPoint(O), codageSegments('||', 'red', A, O, O, C), codageSegments('|||', 'blue', B, O, O, D), afficheMesureAngle(B, A, D, 'black', 1, alpha + '°'), afficheLongueurSegment(B, A), afficheLongueurSegment(A, D), afficheLongueurSegment(C, B), afficheLongueurSegment(D, C))\n\n break\n case 6:\n if (this.correctionDetaillee) texteCorr += mathalea2d({ xmin: xm, ymin: ym, xmax: xM, ymax: yM, pixelsParCm: 25, scale: 1 }, objetsCorrection, tri[0], tri[1], afficheLongueurSegment(B, A), afficheLongueurSegment(O, B), afficheLongueurSegment(A, O), t1, t2, t5) + '<br>'\n objetsEnonce.push(cible3, cible2)\n objetsCorrection.push(p[0], p[1], t3, t4)\n objetsCorrection.push(cible3, cible2, dd1, dd2, dd3, dd4, labelPoint(O), codageSegments('||', 'red', A, O, O, C), codageSegments('|||', 'blue', B, O, O, D))\n break\n case 7:\n if (this.correctionDetaillee) texteCorr += mathalea2d({ xmin: xm, ymin: ym, xmax: xM, ymax: yM, pixelsParCm: 25, scale: 1 }, objetsCorrection, tri[0], tri[1], afficheLongueurSegment(C, O), afficheLongueurSegment(O, A), labelPoint(O), t5, codageSegments('||', 'red', A, O, O, C)) + '<br>'\n objetsEnonce.push(cible3, cible1)\n objetsCorrection.push(p[0], p[1], t3)\n objetsCorrection.push(cible3, t1, t2, t3, cible1, dd1, dd2, dd3, dd4, labelPoint(O), codageSegments('||', 'red', A, O, O, C), codageSegments('|||', 'blue', B, O, O, D), afficheMesureAngle(O, A, D, 'red', 1, texNombre(c3) + '°'), afficheMesureAngle(O, C, D, 'blue', 1, texNombre(c2) + '°'))\n break\n }\n texte += mathalea2d({ xmin: xMin, ymin: yMin, xmax: xMax, ymax: yMax, pixelsParCm: 25, scale: 1 }, objetsEnonce)\n texteCorr += mathalea2d({ xmin: xMin, ymin: yMin, xmax: xMax, ymax: yMax, pixelsParCm: 25, scale: 1 }, objetsCorrection)\n\n this.listeQuestions.push(texte)\n this.listeCorrections.push(texteCorr)\n listeQuestionsToContenu(this)\n }\n this.besoinFormulaireNumerique = ['Level of difficulty', 3, '1: Easy figures\\n2: More difficult figures\\n3: Combination']\n // this.needFormular2BoxCheck = [\"With points on both sides\"];\n}\n"],"names":["titre","dateDeModifImportante","dateDePublication","uuid","ref","ConstructionsParallelogrammesParticuliers","Exercice","texte","texteCorr","celluleAlea","rang","lettre","lettreDepuisChiffre","randint","chiffre","noms","choisitLettresDifferentes","nom","A","B","C","D","O","d1","d2","c1","c2","c3","c4","alpha","tri","t1","t2","t3","t4","t5","dd1","dd2","objetsEnonce","objetsCorrection","typesDeQuestionsDisponibles","xm","ym","xM","yM","typeDeQuestion","choice","point","calculANePlusJamaisUtiliser","pointAdistance","pointIntersectionCC","cercle","milieu","rotation","texNombre","tracePoint","labelPoint","longueur","miseEnEvidence","texteEnCouleurEtGras","afficheLongueurSegment","traceCompas","polygoneAvecNom","similitude","arrondi","cercleCentrePoint","droite","pointIntersectionDD","afficheMesureAngle","p","xMin","yMin","xMax","yMax","cellule1","cellule2","cellule3","result1","dansLaCibleCarree","result2","result3","cible1","cibleCarree","cible2","cible3","segment","dd3","dd4","mathalea2d","codageSegments","texteParPosition","codageAngleDroit","demiDroite","listeQuestionsToContenu"],"mappings":"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"}