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/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"}