File: /home/mmtprep/public_html/mathzen.mmtprep.com/assets/2G22-1-ZdIpy6uC.js.map
{"version":3,"file":"2G22-1-ZdIpy6uC.js","sources":["../../src/exercices/2e/2G22-1.js"],"sourcesContent":["import { point } from '../../lib/2d/points.js'\nimport { repere } from '../../lib/2d/reperes.js'\nimport { longueur, nomVecteurParPosition, segment, vecteur } from '../../lib/2d/segmentsVecteurs.js'\nimport { labelPoint, latexParPoint, texteParPosition } from '../../lib/2d/textes.js'\nimport { homothetie } from '../../lib/2d/transformations.js'\nimport { choice } from '../../lib/outils/arrayOutils'\nimport Exercice from '../deprecatedExercice.js'\nimport { mathalea2d, colorToLatexOrHTML } from '../../modules/2dGeneralites.js'\nimport { listeQuestionsToContenu, randint } from '../../modules/outils.js'\n\nexport const titre = 'Représenter un vecteur dans un repère, à partir de ses coordonnées'\n\n/**\n * Tracer un vecteur dont on connais les coordonnées dans un repère.\n * @author Stéphane Guyon légèrement modifié par Jean-Claude Lhote\n */\nexport const uuid = '3a3ec'\nexport const ref = '2G22-1'\nexport default function RepresenterUnVecteur () {\n Exercice.call(this) // Héritage de la classe Exercice()\n this.nbQuestions = 2\n this.nbCols = 2\n this.nbColsCorr = 2\n this.sup = 1 //\n this.nouvelleVersion = function () {\n this.listeQuestions = [] // Liste de questions\n this.listeCorrections = [] // Liste de questions corrigées\n\n for (let i = 0, r, posLabelA, posLabelB, labelA, labelB, A, B, H, h1, h2, O, I, J, j, k, l, s, o, ux, uy, xA, yA, xB, yB, AB, nomi, nomj, nomAB, texte, texteCorr, cpt = 0; i < this.nbQuestions && cpt < 50;) {\n // let t\n xA = randint(2, 8) * choice([-1, 1])\n yA = randint(2, 8) * choice([-1, 1])\n ux = randint(3, 8) * choice([-1, 1])\n uy = randint(3, 8) * choice([-1, 1])\n xB = xA + ux\n yB = yA + uy\n while (Math.abs(xB) < 2 || Math.abs(xB) > 8) { // On s'assure de choisir des points bien placés dans le repère.\n xA = randint(3, 8) * choice([-1, 1])\n ux = randint(3, 8) * choice([-1, 1])\n xB = xA + ux\n }\n while (Math.abs(yB) < 2 || Math.abs(yB) > 8) { // Idem pour les ordonnées\n yA = randint(3, 8) * choice([-1, 1])\n uy = randint(3, 8) * choice([-1, 1])\n yB = yA + uy\n }\n A = point(xA, yA)\n B = point(xB, yB)\n AB = vecteur(A, B)\n r = repere()// On définit le repère\n posLabelA = homothetie(B, A, -0.7 / longueur(A, B), '', 'center') // pour positionner les noms des points aux extrémités proprement\n posLabelB = homothetie(A, B, -0.7 / longueur(A, B), '', 'center')\n labelA = latexParPoint('A', posLabelA, 'red', 10, 12, '')\n labelB = latexParPoint('B', posLabelB, 'red', 10, 12, '')\n\n H = point(xA + ux, yA)\n s = AB.representant(A) // On trace en rouge [AB]\n h1 = segment(A, H, 'blue')\n h2 = segment(B, H, 'green')\n O = point(0, 0)// On définit et on trace le point O\n o = texteParPosition('O', -0.3, -0.3, 'milieu', 'blue', 1)\n I = point(1, 0)// On définit sans tracer le point I\n J = point(0, 1)// On définit sans tracer le point J\n k = vecteur(O, I).representant(O, 'blue') // Variable qui trace [OI] en bleu\n j = vecteur(O, J).representant(O, 'blue')// Variable qui trace [OJ] en bleu\n s.epaisseur = 2// Variable qui grossit le tracé du vecteur AB\n s.color = colorToLatexOrHTML('red')\n k.epaisseur = 2// Variable qui grossit le tracé du vecteur OI\n j.epaisseur = 2// Variable qui grossit le tracé du vecteur OJ\n h1.epaisseur = 2// Variable qui grossit le tracé bleu\n h2.epaisseur = 2// Variable qui grossit le tracé bleu\n nomi = nomVecteurParPosition('i', 0.5, -0.7, 1.5, 0, 'blue')\n nomj = nomVecteurParPosition('j', -0.7, 0.5, 1.5, 0, 'blue')\n nomAB = AB.representantNomme(A, 'u', 2, 'red')\n if (this.sup === 1) {\n l = labelPoint(A, 'red')// Variable qui trace les nom s A et B\n // t = tracePoint(A, 'red') // Variable qui trace les points avec une croix\n\n texte = ` Dans un repère orthonormé $(O,\\\\vec i,\\\\vec j)$, représenter le vecteur $\\\\vec{u}\\\\begin{pmatrix}${ux} \\\\\\\\${uy}\\\\end{pmatrix}$, `\n texte += `ayant pour origine le point $A\\\\left(${xA};${yA}\\\\right)$.`\n\n texteCorr = 'On sait qu\\'un vecteur mesure un déplacement.'\n texteCorr += `<br> À partir du point $A$, on trace donc le déplacement correspondant à $${ux}$ unités horizontalement (en bleu) puis $${uy}$ unités verticalement (en vert) pour arriver au point $B$, extrémité du vecteur $\\\\vec{u}$.`\n texteCorr += '<br> Voir les déplacements dans le repère et le tracé en rouge du vecteur $\\\\vec{u}$.'\n } else {\n texte = ` Dans un repère orthonormé $(O,\\\\vec i,\\\\vec j)$, représenter le vecteur $\\\\vec{u}\\\\begin{pmatrix}${ux} \\\\\\\\${uy}\\\\end{pmatrix}$, `\n texte += `ayant pour extrémité le point $B\\\\left(${xB};${yB}\\\\right)$.`\n\n texteCorr = 'On sait qu\\'un vecteur mesure un déplacement.'\n texteCorr += `<br> On cherche donc un point $A$, à partir duquel en traçant le déplacement correspondant à $${ux}$ unités horizontalement (en bleu) puis $${uy}$ unités verticalement (en vert), on arrive au point $B$.`\n texteCorr += '<br> Voir le déplacement en bleu dans le repère et le tracé en rouge du vecteur $\\\\vec{u}$.'\n // t = tracePoint(A, 'red') // Variable qui trace les points avec une croix\n l = labelPoint(A, B, 'red')// Variable qui trace les nom s A et B\n }\n texteCorr += mathalea2d({\n xmin: -9,\n ymin: -9,\n xmax: 9,\n ymax: 9\n }, r, l, k, j, s, o, nomi, nomj, nomAB, h1, h2, labelA, labelB\n //, t\n )// On trace le graphique\n\n if (this.questionJamaisPosee(i, xA, yA, xB, yB)) { // Si la question n'a jamais été posée, on en créé une autre\n this.listeQuestions.push(texte)\n this.listeCorrections.push(texteCorr)\n i++\n }\n cpt++\n }\n listeQuestionsToContenu(this)\n }\n this.besoinFormulaireNumerique = ['Situations différentes ', 2, '1 :Avec un point origine\\n 2 : Avec un point extrémité']\n}\n"],"names":["titre","uuid","ref","RepresenterUnVecteur","Exercice","i","r","posLabelA","posLabelB","labelA","labelB","A","B","H","h1","h2","O","I","J","j","k","l","s","o","ux","uy","xA","yA","xB","yB","AB","nomi","nomj","nomAB","texte","texteCorr","cpt","randint","choice","point","vecteur","repere","homothetie","longueur","latexParPoint","segment","texteParPosition","colorToLatexOrHTML","nomVecteurParPosition","labelPoint","mathalea2d","listeQuestionsToContenu"],"mappings":"kOAUY,MAACA,EAAQ,qEAMRC,EAAO,QACPC,EAAM,SACJ,SAASC,IAAwB,CAC9CC,EAAS,KAAK,IAAI,EAClB,KAAK,YAAc,EACnB,KAAK,OAAS,EACd,KAAK,WAAa,EAClB,KAAK,IAAM,EACX,KAAK,gBAAkB,UAAY,CACjC,KAAK,eAAiB,CAAE,EACxB,KAAK,iBAAmB,CAAE,EAE1B,QAASC,EAAI,EAAGC,EAAGC,EAAWC,EAAWC,EAAQC,EAAQC,EAAGC,EAAGC,EAAGC,EAAIC,EAAIC,EAAGC,EAAGC,EAAGC,EAAGC,EAAGC,EAAGC,EAAGC,EAAGC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAMC,EAAMC,EAAOC,EAAOC,EAAWC,EAAM,EAAG/B,EAAI,KAAK,aAAe+B,EAAM,IAAK,CAQ7M,IANAV,EAAKW,EAAQ,EAAG,CAAC,EAAIC,EAAO,CAAC,GAAI,CAAC,CAAC,EACnCX,EAAKU,EAAQ,EAAG,CAAC,EAAIC,EAAO,CAAC,GAAI,CAAC,CAAC,EACnCd,EAAKa,EAAQ,EAAG,CAAC,EAAIC,EAAO,CAAC,GAAI,CAAC,CAAC,EACnCb,EAAKY,EAAQ,EAAG,CAAC,EAAIC,EAAO,CAAC,GAAI,CAAC,CAAC,EACnCV,EAAKF,EAAKF,EACVK,EAAKF,EAAKF,EACH,KAAK,IAAIG,CAAE,EAAI,GAAK,KAAK,IAAIA,CAAE,EAAI,GACxCF,EAAKW,EAAQ,EAAG,CAAC,EAAIC,EAAO,CAAC,GAAI,CAAC,CAAC,EACnCd,EAAKa,EAAQ,EAAG,CAAC,EAAIC,EAAO,CAAC,GAAI,CAAC,CAAC,EACnCV,EAAKF,EAAKF,EAEZ,KAAO,KAAK,IAAIK,CAAE,EAAI,GAAK,KAAK,IAAIA,CAAE,EAAI,GACxCF,EAAKU,EAAQ,EAAG,CAAC,EAAIC,EAAO,CAAC,GAAI,CAAC,CAAC,EACnCb,EAAKY,EAAQ,EAAG,CAAC,EAAIC,EAAO,CAAC,GAAI,CAAC,CAAC,EACnCT,EAAKF,EAAKF,EAEZd,EAAI4B,EAAMb,EAAIC,CAAE,EAChBf,EAAI2B,EAAMX,EAAIC,CAAE,EAChBC,EAAKU,EAAQ7B,EAAGC,CAAC,EACjBN,EAAImC,EAAQ,EACZlC,EAAYmC,EAAW9B,EAAGD,EAAG,IAAOgC,EAAShC,EAAGC,CAAC,EAAG,GAAI,QAAQ,EAChEJ,EAAYkC,EAAW/B,EAAGC,EAAG,IAAO+B,EAAShC,EAAGC,CAAC,EAAG,GAAI,QAAQ,EAChEH,EAASmC,EAAc,IAAKrC,EAAW,MAAO,GAAI,GAAI,EAAE,EACxDG,EAASkC,EAAc,IAAKpC,EAAW,MAAO,GAAI,GAAI,EAAE,EAExDK,EAAI0B,EAAMb,EAAKF,EAAIG,CAAE,EACrBL,EAAIQ,EAAG,aAAanB,CAAC,EACrBG,EAAK+B,EAAQlC,EAAGE,EAAG,MAAM,EACzBE,EAAK8B,EAAQjC,EAAGC,EAAG,OAAO,EAC1BG,EAAIuB,EAAM,EAAG,CAAC,EACdhB,EAAIuB,EAAiB,IAAK,IAAM,IAAM,SAAU,OAAQ,CAAC,EACzD7B,EAAIsB,EAAM,EAAG,CAAC,EACdrB,EAAIqB,EAAM,EAAG,CAAC,EACdnB,EAAIoB,EAAQxB,EAAGC,CAAC,EAAE,aAAaD,EAAG,MAAM,EACxCG,EAAIqB,EAAQxB,EAAGE,CAAC,EAAE,aAAaF,EAAG,MAAM,EACxCM,EAAE,UAAY,EACdA,EAAE,MAAQyB,EAAmB,KAAK,EAClC3B,EAAE,UAAY,EACdD,EAAE,UAAY,EACdL,EAAG,UAAY,EACfC,EAAG,UAAY,EACfgB,EAAOiB,EAAsB,IAAK,GAAK,IAAM,IAAK,EAAG,MAAM,EAC3DhB,EAAOgB,EAAsB,IAAK,IAAM,GAAK,IAAK,EAAG,MAAM,EAC3Df,EAAQH,EAAG,kBAAkBnB,EAAG,IAAK,EAAG,KAAK,EACzC,KAAK,MAAQ,GACfU,EAAI4B,EAAWtC,EAAG,KAAK,EAGvBuB,EAAQ,qGAAqGV,CAAE,QAAQC,CAAE,oBACzHS,GAAS,wCAAwCR,CAAE,IAAIC,CAAE,aAEzDQ,EAAY,+CACZA,GAAa,8EAA8EX,CAAE,4CAA4CC,CAAE,+FAC3IU,GAAa,0FAEbD,EAAQ,qGAAqGV,CAAE,QAAQC,CAAE,oBACzHS,GAAS,0CAA0CN,CAAE,IAAIC,CAAE,aAE3DM,EAAY,+CACZA,GAAa,iGAAiGX,CAAE,6CAA6CC,CAAE,4DAC/JU,GAAa,8FAEbd,EAAI4B,EAAWtC,EAAGC,EAAG,KAAK,GAE5BuB,GAAae,EAAW,CACtB,KAAM,GACN,KAAM,GACN,KAAM,EACN,KAAM,CACP,EAAE5C,EAAGe,EAAGD,EAAGD,EAAGG,EAAGC,EAAGQ,EAAMC,EAAMC,EAAOnB,EAAIC,EAAIN,EAAQC,CAEvD,EAEG,KAAK,oBAAoBL,EAAGqB,EAAIC,EAAIC,EAAIC,CAAE,IAC5C,KAAK,eAAe,KAAKK,CAAK,EAC9B,KAAK,iBAAiB,KAAKC,CAAS,EACpC9B,KAEF+B,GACD,CACDe,EAAwB,IAAI,CAC7B,EACD,KAAK,0BAA4B,CAAC,0BAA2B,EAAG;AAAA,6BAAwD,CAC1H"}