File: /home/mmtprep/public_html/mathzen.mmtprep.com/assets/P014-SJNmb6kn.js.map
{"version":3,"file":"P014-SJNmb6kn.js","sources":["../../src/exercices/profs/P014.js"],"sourcesContent":["import { courbeSpline } from '../../lib/2d/courbes.js'\nimport { point, tracePoint } from '../../lib/2d/points.js'\nimport { repere } from '../../lib/2d/reperes.js'\nimport { splineCatmullRom } from '../../lib/mathFonctions/SplineCatmullRom.js'\nimport { mathalea2d } from '../../modules/2dGeneralites.js'\nimport Exercice from '../deprecatedExercice.js'\n\nexport const titre = 'Interpollation de Catmull-Rom'\nexport const ref = 'P014'\nexport const uuid = '295a8'\n\n/**\n * Trace une courbe interpolee par des splines.\n * @author Jean-Claude Lhote\n * Référence P014\n */\nexport default function TraceCourbeInterpolee1 () {\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 // Uniquement pour la sortie LaTeX\n this.nbColsCorr = 1 // Uniquement pour la sortie LaTeX\n this.sup = '3;5;2;1;-2;-1;0' // liste de points\n this.sup2 = '-5;2'\n this.sup3 = 1\n this.tailleDiaporama = 3 // Pour les exercices chronométrés. 50 par défaut pour les exercices avec du texte\n this.video = '' // Id YouTube ou url\n\n this.nouvelleVersion = function () {\n const liste = this.sup.split(';')\n const ordonnees = []\n const objets = []\n const couleurs = [\n { colPoint: 'red', colCourbe: 'black' },\n { colPoint: 'blue', colCourbe: 'red' },\n { colPoint: 'green', colCourbe: 'blue' }]\n for (let i = 0; i < liste.length; i++) {\n ordonnees.push(parseFloat(liste[i]))\n }\n const xMin = parseFloat(this.sup2.split(';')[0])\n const pas = parseFloat(this.sup2.split(';')[1])\n const xMax = xMin + (ordonnees.length - 1) * pas\n let yMin = 100\n let yMax = -100\n\n for (let i = 0; i < liste.length; i++) {\n yMin = Math.min(yMin, ordonnees[i])\n yMax = Math.max(yMax, ordonnees[i])\n }\n const r = repere({ xMin: xMin - 1, xMax: xMax + 1, yMin: yMin - 1, yax: yMax - 1 })\n const f = splineCatmullRom({\n tabY: ordonnees,\n x0: xMin,\n step: pas\n })\n const c = courbeSpline(f, {\n repere: r,\n step: 0.1,\n xMin,\n xMax,\n yMin,\n yMax,\n tracenoeuds: true,\n color: couleurs[parseInt(this.sup3) - 1].colCourbe\n })\n objets.push(r, c)\n\n if (this.sup2) {\n for (let i = 0, p; i < liste.length; i++) {\n p = tracePoint(point(xMin + i * pas, ordonnees[i]))\n p.style = '+'\n p.epaisseur = 2\n p.color = couleurs[parseInt(this.sup3) - 1].colPoint\n objets.push(p)\n }\n }\n this.contenu = mathalea2d({ xmin: xMin - 1, xmax: xMax + 1, ymin: yMin - 1, ymax: yMax + 1 }, objets)\n this.listeQuestions[0] = this.contenu\n }\n this.besoinFormulaireTexte = ['Liste des ordonnées sous la forme: y0;y1;y2;...']\n this.besoinFormulaire2Texte = ['Première abscisse et incrément séparés par ; (séparateur décimal = . ) exemple : -5;0.5']\n this.besoinFormulaire3Numerique = ['Modèles de couleur ', 3, '1 : Points rouges sur courbe noire\\n2 : Points bleus sur courbe rouge\\n3 : Points verts sur courbe bleue']\n}\n"],"names":["titre","ref","uuid","TraceCourbeInterpolee1","Exercice","liste","ordonnees","objets","couleurs","i","xMin","pas","xMax","yMin","yMax","r","repere","f","splineCatmullRom","c","courbeSpline","p","tracePoint","point","mathalea2d"],"mappings":"mUAOY,MAACA,EAAQ,gCACRC,EAAM,OACNC,EAAO,QAOL,SAASC,GAA0B,CAChDC,EAAS,KAAK,IAAI,EAClB,KAAK,MAAQJ,EACb,KAAK,SAAW,GAChB,KAAK,YAAc,EACnB,KAAK,sBAAwB,GAC7B,KAAK,OAAS,EACd,KAAK,WAAa,EAClB,KAAK,IAAM,kBACX,KAAK,KAAO,OACZ,KAAK,KAAO,EACZ,KAAK,gBAAkB,EACvB,KAAK,MAAQ,GAEb,KAAK,gBAAkB,UAAY,CACjC,MAAMK,EAAQ,KAAK,IAAI,MAAM,GAAG,EAC1BC,EAAY,CAAE,EACdC,EAAS,CAAE,EACXC,EAAW,CACf,CAAE,SAAU,MAAO,UAAW,OAAS,EACvC,CAAE,SAAU,OAAQ,UAAW,KAAO,EACtC,CAAE,SAAU,QAAS,UAAW,MAAM,CAAE,EAC1C,QAASC,EAAI,EAAGA,EAAIJ,EAAM,OAAQI,IAChCH,EAAU,KAAK,WAAWD,EAAMI,CAAC,CAAC,CAAC,EAErC,MAAMC,EAAO,WAAW,KAAK,KAAK,MAAM,GAAG,EAAE,CAAC,CAAC,EACzCC,EAAM,WAAW,KAAK,KAAK,MAAM,GAAG,EAAE,CAAC,CAAC,EACxCC,EAAOF,GAAQJ,EAAU,OAAS,GAAKK,EAC7C,IAAIE,EAAO,IACPC,EAAO,KAEX,QAASL,EAAI,EAAGA,EAAIJ,EAAM,OAAQI,IAChCI,EAAO,KAAK,IAAIA,EAAMP,EAAUG,CAAC,CAAC,EAClCK,EAAO,KAAK,IAAIA,EAAMR,EAAUG,CAAC,CAAC,EAEpC,MAAMM,EAAIC,EAAO,CAAE,KAAMN,EAAO,EAAG,KAAME,EAAO,EAAG,KAAMC,EAAO,EAAG,IAAKC,EAAO,EAAG,EAC5EG,EAAIC,EAAiB,CACzB,KAAMZ,EACN,GAAII,EACJ,KAAMC,CACZ,CAAK,EACKQ,EAAIC,EAAaH,EAAG,CACxB,OAAQF,EACR,KAAM,GACN,KAAAL,EACA,KAAAE,EACA,KAAAC,EACA,KAAAC,EACA,YAAa,GACb,MAAON,EAAS,SAAS,KAAK,IAAI,EAAI,CAAC,EAAE,SAC/C,CAAK,EAGD,GAFAD,EAAO,KAAKQ,EAAGI,CAAC,EAEZ,KAAK,KACP,QAASV,EAAI,EAAGY,EAAGZ,EAAIJ,EAAM,OAAQI,IACnCY,EAAIC,EAAWC,EAAMb,EAAOD,EAAIE,EAAKL,EAAUG,CAAC,CAAC,CAAC,EAClDY,EAAE,MAAQ,IACVA,EAAE,UAAY,EACdA,EAAE,MAAQb,EAAS,SAAS,KAAK,IAAI,EAAI,CAAC,EAAE,SAC5CD,EAAO,KAAKc,CAAC,EAGjB,KAAK,QAAUG,EAAW,CAAE,KAAMd,EAAO,EAAG,KAAME,EAAO,EAAG,KAAMC,EAAO,EAAG,KAAMC,EAAO,CAAG,EAAEP,CAAM,EACpG,KAAK,eAAe,CAAC,EAAI,KAAK,OAC/B,EACD,KAAK,sBAAwB,CAAC,iDAAiD,EAC/E,KAAK,uBAAyB,CAAC,yFAAyF,EACxH,KAAK,2BAA6B,CAAC,sBAAuB,EAAG;AAAA;AAAA,kCAA0G,CACzK"}