File: /home/mmtprep/public_html/mathzen.mmtprep.com/assets/6G41-KSG4Ky4c.js.map
{"version":3,"file":"6G41-KSG4Ky4c.js","sources":["../../src/exercices/6e/6G41.js"],"sourcesContent":["import { milieu, point, tracePoint } from '../../lib/2d/points.js'\nimport { grille, seyes } from '../../lib/2d/reperes.js'\nimport { segment } from '../../lib/2d/segmentsVecteurs.js'\nimport { labelPoint } from '../../lib/2d/textes.js'\nimport { similitude, translation2Points } from '../../lib/2d/transformations.js'\nimport { choice, combinaisonListes } from '../../lib/outils/arrayOutils'\nimport { creerNomDePolygone } from '../../lib/outils/outilString.js'\nimport Exercice from '../Exercice.js'\nimport { mathalea2d, colorToLatexOrHTML, vide2d } from '../../modules/2dGeneralites.js'\nimport { listeQuestionsToContenu, randint } from '../../modules/outils.js'\nimport { context } from '../../modules/context.js'\n\nexport const amcReady = true\nexport const amcType = 'AMCOpen'\n\nexport const titre = 'Complete a representation in cavalier perspective'\n\n/**\n * fonction servant à compléter des solides, inspirée des fonctions de 6G42 et 6G43\n * référence : 6G41\n * @author Mireille Gain, s'inspirant fortement de Jean-Claude Lhote\n */\nexport const uuid = 'a8e0f'\nexport const ref = '6G41'\nexport default function RepresenterUnSolide () {\n Exercice.call(this) // Héritage de la classe Exercice ()\n this.titre = titre\n this.nbQuestions = 1\n this.nbCols = 1\n this.nbColsCorr = 1\n this.sup = 1\n this.sup2 = 1\n this.classe = 6\n this.amcReady = amcReady\n this.amcType = amcType\n\n this.nouvelleVersion = function () {\n this.autoCorrection = []\n let typeDeQuestionsDisponibles\n\n if (this.sup === 3) { typeDeQuestionsDisponibles = [1, 2] } else if (this.sup === 5) { typeDeQuestionsDisponibles = [1, 2, 4] } else if (this.sup === 7) { typeDeQuestionsDisponibles = [1, 2, 4, 6] } else { typeDeQuestionsDisponibles = [parseInt(this.sup)] }\n\n const listeTypeDeQuestions = combinaisonListes(\n typeDeQuestionsDisponibles,\n this.nbQuestions\n ) // Tous les types de questions sont posées mais l'ordre diffère à chaque 'cycle'\n\n this.listeQuestions = [] // Liste de questions\n this.listeCorrections = [] // Liste de questions corrigées\n let Xmin, Xmax, Ymin, Ymax, ppc, sc\n\n // sixth: cube and right pad\n if (this.classe === 6) {\n typeDeQuestionsDisponibles = [1, 2]\n } else if (this.classe === 5) { // cinquième : on ajoute le prisme\n typeDeQuestionsDisponibles = [1, 2, 4]\n } else if (this.classe === 4) { // Quatrième : on ajoute la pyramide\n typeDeQuestionsDisponibles = [1, 2, 4, 6]\n }\n\n if (parseInt(this.sup2) === 1) { sc = 0.5 } else { sc = 0.8 }\n\n let A; let B; let C; let D; let E; let F; let G; let H; let I\n let AB; let BC; let CD; let DA; let EF; let FG; let GH; let HE; let AE; let BF; let CG; let DH; let IA; let IB; let IE; let IF; let BD; let FH\n let coeffpersp\n let correction\n let carreaux; let g\n let objetsEnonce = []\n let objetsCorrection = []\n let listeDeNomsDePolygones\n for (let i = 0, texte, enonce, cpt = 0; i < this.nbQuestions && cpt < 50;) {\n if (i % 2 === 0) listeDeNomsDePolygones = ['Q.D.']\n const nom = creerNomDePolygone(8, listeDeNomsDePolygones)\n listeDeNomsDePolygones.push(nom)\n const anglepersp = choice([30, 45, -30, -45, 150, 135, -150, -135])\n if (anglepersp % 10 === 0) { coeffpersp = 0.6 } else { coeffpersp = 0.4 }\n objetsCorrection = []\n objetsEnonce = []\n\n switch (listeTypeDeQuestions[i]) {\n case 1: // cube\n enonce = `$${nom}$ is a cube.<br>`\n break\n\n case 2: // pavé droit\n enonce = `$${nom}$ is a right pad.<br>`\n break\n\n case 4: // prisme\n enonce = 'We consider a prism with a triangular base.<br>'\n break\n\n case 6: // pyramide\n enonce = 'We consider a pyramid with a rectangular base.<br>'\n break\n }\n enonce += context.isHtml ? 'Reproduce and complete' : 'Complete'\n enonce += 'the figure below, passing the parallel segments of the same length in the same color.<br>'\n correction = 'Completed figure:<br>'\n\n switch (listeTypeDeQuestions[i] % 2) {\n case 1:\n A = point(6, 0, nom[0], 'left')\n B = point(11, 0, nom[1], 'right')\n C = point(11, 5, nom[2], 'right')\n D = point(6, 5, nom[3], 'left')\n E = similitude(B, A, anglepersp, coeffpersp, nom[4], 'left')\n E.x = Math.round(E.x)\n E.y = Math.round(E.y)\n break\n\n case 0:\n A = point(5, 0, nom[0], 'left')\n B = point(9 + randint(1, 3), 0, nom[1], 'right')\n C = point(B.x, randint(3, 7), nom[2], 'right')\n D = point(A.x, C.y, nom[3], 'left')\n E = similitude(B, A, anglepersp, coeffpersp * randint(5, 12) / 10, nom[4], 'left')\n E.x = Math.round(E.x)\n E.y = Math.round(E.y)\n break\n }\n\n F = translation2Points(E, A, B, nom[5], 'right')\n G = translation2Points(F, B, C, nom[6], 'right')\n H = translation2Points(G, C, D, nom[7], 'left')\n I = milieu(D, G)\n const matrace = tracePoint(I)\n matrace.taille = 4\n matrace.opacite = 0.9\n matrace.epaisseur = 5\n matrace.style = 'x'\n AB = segment(A, B, 'black')\n BC = segment(B, C, 'black')\n CD = segment(C, D, 'black')\n DA = segment(D, A, 'black')\n EF = segment(E, F, 'black')\n FG = segment(F, G, 'black')\n GH = segment(G, H, 'black')\n HE = segment(H, E, 'black')\n AE = segment(A, E, 'black')\n BF = segment(B, F, 'black')\n CG = segment(C, G, 'black')\n DH = segment(D, H, 'black')\n IA = segment(A, I, 'black')\n IB = segment(B, I)\n IE = segment(E, I)\n IF = segment(F, I)\n BD = segment(B, D)\n FH = segment(F, H)\n AB.epaisseur = 2\n BC.epaisseur = 2\n CD.epaisseur = 2\n DA.epaisseur = 2\n EF.epaisseur = 2\n FG.epaisseur = 2\n GH.epaisseur = 2\n HE.epaisseur = 2\n AE.epaisseur = 2\n BF.epaisseur = 2\n CG.epaisseur = 2\n DH.epaisseur = 2\n IA.epaisseur = 1\n IB.epaisseur = 1\n IE.epaisseur = 1\n IF.epaisseur = 1\n BD.epaisseur = 2\n FH.epaisseur = 2\n\n if (G.y < C.y && G.x < C.x) {\n CG.pointilles = 5\n GH.pointilles = 5\n FG.pointilles = 5\n IF.pointilles = 5\n FH.pointilles = 5\n CG.color = colorToLatexOrHTML('gray')\n GH.color = colorToLatexOrHTML('gray')\n FG.color = colorToLatexOrHTML('gray')\n CG.opacite = 0.7\n GH.opacite = 0.7\n FG.opacite = 0.7\n } else if (E.y > A.y && E.x > A.x) {\n AE.pointilles = 5\n EF.pointilles = 5\n HE.pointilles = 5\n IE.pointilles = 5\n FH.pointilles = 5\n AE.color = colorToLatexOrHTML('gray')\n EF.color = colorToLatexOrHTML('gray')\n HE.color = colorToLatexOrHTML('gray')\n AE.opacite = 0.7\n EF.opacite = 0.7\n HE.opacite = 0.7\n } else if (F.x < B.x && F.y > B.y) {\n BF.pointilles = 5\n FG.pointilles = 5\n EF.pointilles = 5\n IF.pointilles = 5\n FH.pointilles = 5\n BF.color = colorToLatexOrHTML('gray')\n FG.color = colorToLatexOrHTML('gray')\n EF.color = colorToLatexOrHTML('gray')\n BF.opacite = 0.7\n FG.opacite = 0.7\n EF.opacite = 0.7\n } else if (H.x > D.x && H.y < D.y) {\n DH.pointilles = 5\n GH.pointilles = 5\n HE.pointilles = 5\n IE.pointilles = 5\n FH.pointilles = 5\n DH.color = colorToLatexOrHTML('gray')\n GH.color = colorToLatexOrHTML('gray')\n HE.color = colorToLatexOrHTML('gray')\n DH.opacite = 0.7\n GH.opacite = 0.7\n HE.opacite = 0.7\n }\n Xmin = Math.min(A.x, E.x) - 1\n Ymin = Math.min(A.y, E.y) - 1\n Xmax = Math.max(B.x, F.x) + 2\n Ymax = Math.max(D.y, H.y) + 1\n ppc = 20\n\n if (this.sup2 < 3) { g = grille(Xmin, Ymin, Xmax, Ymax, 'gray', 0.7) } else { g = vide2d() }\n if (parseInt(this.sup2) === 2) { carreaux = seyes(Xmin, Ymin, Xmax, Ymax); sc = 0.8 } else { carreaux = vide2d(); sc = 0.5 }\n\n const params = {\n xmin: Xmin,\n ymin: Ymin,\n xmax: Xmax,\n ymax: Ymax,\n pixelsParCm: ppc,\n scale: sc\n }\n\n if (listeTypeDeQuestions[i] === 1) {\n objetsEnonce.push(AB, BC, CD, DA, AE, labelPoint(A, B, C, D, E),\n g,\n carreaux\n )\n }\n\n if (listeTypeDeQuestions[i] === 2) {\n objetsEnonce.push(AB, BC, CD, DA, AE, labelPoint(A, B, C, D, E),\n g,\n carreaux\n )\n }\n\n if (listeTypeDeQuestions[i] === 4) {\n objetsEnonce.push(AB, DA, BD, AE,\n g,\n carreaux\n )\n }\n\n if (listeTypeDeQuestions[i] === 6) {\n objetsEnonce.push(AB, BF, tracePoint(I, 'red'), labelPoint(I),\n g,\n carreaux\n )\n }\n\n enonce += mathalea2d(params, objetsEnonce)\n if (listeTypeDeQuestions[i] === 1) {\n AB.color = colorToLatexOrHTML('green')\n BC.color = colorToLatexOrHTML('red')\n CD.color = colorToLatexOrHTML('green')\n DA.color = colorToLatexOrHTML('red')\n EF.color = colorToLatexOrHTML('green')\n FG.color = colorToLatexOrHTML('red')\n GH.color = colorToLatexOrHTML('green')\n HE.color = colorToLatexOrHTML('red')\n AE.color = colorToLatexOrHTML('blue')\n BF.color = colorToLatexOrHTML('blue')\n CG.color = colorToLatexOrHTML('blue')\n DH.color = colorToLatexOrHTML('blue')\n objetsCorrection.push(AB, BC, CD, DA, EF, FG, GH, HE, AE, BF, CG, DH, labelPoint(A, B, C, D, E, F, G, H),\n g,\n carreaux\n )\n }\n\n if (listeTypeDeQuestions[i] === 2) {\n AB.color = colorToLatexOrHTML('green')\n BC.color = colorToLatexOrHTML('red')\n CD.color = colorToLatexOrHTML('green')\n DA.color = colorToLatexOrHTML('red')\n EF.color = colorToLatexOrHTML('green')\n FG.color = colorToLatexOrHTML('red')\n GH.color = colorToLatexOrHTML('green')\n HE.color = colorToLatexOrHTML('red')\n AE.color = colorToLatexOrHTML('blue')\n BF.color = colorToLatexOrHTML('blue')\n CG.color = colorToLatexOrHTML('blue')\n DH.color = colorToLatexOrHTML('blue')\n objetsCorrection.push(AB, BC, CD, DA, EF, FG, GH, HE, AE, BF, CG, DH, labelPoint(A, B, C, D, E, F, G, H),\n g,\n carreaux\n )\n }\n\n if (listeTypeDeQuestions[i] === 4) {\n AB.color = colorToLatexOrHTML('green')\n BC.color = colorToLatexOrHTML('red')\n CD.color = colorToLatexOrHTML('green')\n DA.color = colorToLatexOrHTML('red')\n EF.color = colorToLatexOrHTML('green')\n FG.color = colorToLatexOrHTML('red')\n GH.color = colorToLatexOrHTML('green')\n HE.color = colorToLatexOrHTML('red')\n AE.color = colorToLatexOrHTML('blue')\n BF.color = colorToLatexOrHTML('blue')\n CG.color = colorToLatexOrHTML('blue')\n DH.color = colorToLatexOrHTML('blue')\n objetsCorrection.push(AB, DA, BD, EF, HE, AE, BF, DH, FH,\n g,\n carreaux\n )\n }\n\n if (listeTypeDeQuestions[i] === 6) {\n AB.color = colorToLatexOrHTML('green')\n BC.color = colorToLatexOrHTML('red')\n CD.color = colorToLatexOrHTML('green')\n DA.color = colorToLatexOrHTML('red')\n EF.color = colorToLatexOrHTML('green')\n FG.color = colorToLatexOrHTML('red')\n GH.color = colorToLatexOrHTML('green')\n HE.color = colorToLatexOrHTML('red')\n AE.color = colorToLatexOrHTML('blue')\n BF.color = colorToLatexOrHTML('blue')\n CG.color = colorToLatexOrHTML('blue')\n DH.color = colorToLatexOrHTML('blue')\n objetsCorrection.push(AB, EF, AE, BF, IA, IB, IE, IF, tracePoint(I),\n g,\n carreaux\n )\n }\n\n correction += mathalea2d(params, objetsCorrection)\n if (this.listeQuestions.indexOf(texte) === -1) {\n // If the question has never been asked, we create another one\n this.listeQuestions.push(enonce + '<br>')\n this.listeCorrections.push(correction + '<br>')\n // For AMC question AmcOpen\n this.autoCorrection[i] = { enonce, propositions: [{ texte: correction, statut: 3, feedback: '', sanscadre: true }] }\n i++\n }\n cpt++\n }\n listeQuestionsToContenu(this)\n }\n this.besoinFormulaireNumerique = ['Type of solids', 3, ' 1: Cubes\\n 2: Straight blocks\\n 3: Mix']\n\n this.besoinFormulaire2Numerique = [\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":["amcReady","amcType","titre","uuid","ref","RepresenterUnSolide","Exercice","typeDeQuestionsDisponibles","listeTypeDeQuestions","combinaisonListes","Xmin","Xmax","Ymin","Ymax","ppc","sc","A","B","C","D","E","F","G","H","I","AB","BC","CD","DA","EF","FG","GH","HE","AE","BF","CG","DH","IA","IB","IE","IF","BD","FH","coeffpersp","correction","carreaux","g","objetsEnonce","objetsCorrection","listeDeNomsDePolygones","i","texte","enonce","cpt","nom","creerNomDePolygone","anglepersp","choice","context","point","similitude","randint","translation2Points","milieu","matrace","tracePoint","segment","colorToLatexOrHTML","grille","vide2d","seyes","params","labelPoint","mathalea2d","listeQuestionsToContenu"],"mappings":"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"}