GenMM / GenMM_demo /js /app.da9e3976.js.map
wyysf's picture
Duplicate from radames/GenMM-demo
27763e5
{"version":3,"file":"js/app.da9e3976.js","mappings":"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","sources":["webpack://patch-based_motion_synthesis/./src/App.vue","webpack://patch-based_motion_synthesis/./src/components/MotionSynthesis_random_synthesis.vue","webpack://patch-based_motion_synthesis/./src/components/MySkeletonHelper.vue","webpack://patch-based_motion_synthesis/./src/components/MySkeletonHelper.vue?a625","webpack://patch-based_motion_synthesis/./src/components/MotionSynthesis_random_synthesis.vue?6b1a","webpack://patch-based_motion_synthesis/./src/App.vue?7ccd","webpack://patch-based_motion_synthesis/./src/main.js","webpack://patch-based_motion_synthesis/webpack/bootstrap","webpack://patch-based_motion_synthesis/webpack/runtime/chunk loaded","webpack://patch-based_motion_synthesis/webpack/runtime/compat get default export","webpack://patch-based_motion_synthesis/webpack/runtime/create fake namespace object","webpack://patch-based_motion_synthesis/webpack/runtime/define property getters","webpack://patch-based_motion_synthesis/webpack/runtime/ensure chunk","webpack://patch-based_motion_synthesis/webpack/runtime/get javascript chunk filename","webpack://patch-based_motion_synthesis/webpack/runtime/get mini-css chunk filename","webpack://patch-based_motion_synthesis/webpack/runtime/global","webpack://patch-based_motion_synthesis/webpack/runtime/hasOwnProperty shorthand","webpack://patch-based_motion_synthesis/webpack/runtime/load script","webpack://patch-based_motion_synthesis/webpack/runtime/make namespace object","webpack://patch-based_motion_synthesis/webpack/runtime/node module decorator","webpack://patch-based_motion_synthesis/webpack/runtime/publicPath","webpack://patch-based_motion_synthesis/webpack/runtime/jsonp chunk loading","webpack://patch-based_motion_synthesis/webpack/startup"],"sourcesContent":["<template>\n <MotionSynthesis/>\n</template>\n\n<script>\nimport MotionSynthesis from './components/MotionSynthesis_random_synthesis.vue'\n// import MotionSynthesis from './components/MotionSynthesis_bvh.vue'\n\nexport default {\n name: 'App',\n components: {\n MotionSynthesis\n }\n}\n</script>\n\n<style>\n#app {\n font-family: 'Helvetica Neue', Helvetica, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', '微软雅黑', Arial, sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n text-align: center;\n}\n</style>\n","<template>\n <div id=\"Canvas\"></div>\n\n <section id=\"loading-screen\">\n <div id=\"loader\"></div>\n <div id=\"loader-text\">0%</div>\n </section>\n\n <div id=\"ProgressBar\">\n <el-row>\n <el-slider\n v-model=\"cur_frame\"\n :max=\"num_frames\"\n size=\"small\"\n @input=\"setFrame\"\n />\n <div class=\"frame-text\">{{ cur_frame + 1 }} / {{ num_frames }}</div>\n </el-row>\n </div>\n\n <div id=\"Buttons\">\n <el-row style=\"justify-content: center\">\n <el-button type=\"primary\" color=\"##262727\" size=\"large\" @click=\"next()\">\n Next<el-icon class=\"el-icon--right\" :size=\"17\">\n <ArrowRight />\n </el-icon>\n </el-button>\n <el-button\n v-show=\"isPause\"\n type=\"primary\"\n color=\"##262727\"\n size=\"large\"\n style=\"margin-left: 10px\"\n @click=\"play()\"\n >\n Play<el-icon class=\"el-icon--right\" :size=\"17\">\n <VideoPlay />\n </el-icon>\n </el-button>\n <el-button\n v-show=\"!isPause\"\n type=\"primary\"\n color=\"##262727\"\n size=\"large\"\n style=\"margin-left: 10px\"\n @click=\"pause()\"\n >\n Pause<el-icon class=\"el-icon--right\" :size=\"17\">\n <VideoPause />\n </el-icon>\n </el-button>\n\n <el-button\n type=\"primary\"\n color=\"##262727\"\n size=\"large\"\n style=\"margin-left: 10px\"\n @click=\"restart\"\n >\n Restart<el-icon class=\"el-icon--right\" :size=\"17\">\n <RefreshLeft />\n </el-icon>\n </el-button>\n\n <el-button\n v-show=\"!isSynthesising\"\n id=\"SynthesisBtn\"\n type=\"primary\"\n color=\"##262727\"\n size=\"large\"\n style=\"margin-left: 10px\"\n @click=\"synthesis\"\n >\n Generate<el-icon class=\"el-icon--right\" :size=\"17\">\n <MagicStick />\n </el-icon>\n </el-button>\n <el-button\n v-show=\"isSynthesising\"\n id=\"SynthesisBtn\"\n type=\"primary\"\n color=\"##262727\"\n size=\"large\"\n style=\"margin-left: 10px\"\n loading\n >\n Running...\n </el-button>\n </el-row>\n </div>\n</template>\n\n<script type=\"module\">\nimport { ElMessage } from \"element-plus\";\nimport {\n ArrowRight,\n RefreshLeft,\n VideoPlay,\n VideoPause,\n MagicStick,\n} from \"@element-plus/icons-vue\";\n\nimport { h } from \"vue\";\nimport { client } from \"@gradio/client\";\nimport * as THREE from \"three\";\nimport MySkeletonHelper from \"./MySkeletonHelper\"; // rewrite SkeletonHelper to support Chrome on MacOS\nimport Stats from \"three/examples/jsm/libs/stats.module.js\";\nimport { GUI } from \"three/examples/jsm/libs/lil-gui.module.min.js\";\nimport { OrbitControls } from \"three/examples/jsm/controls/OrbitControls.js\";\nimport { FBXLoader } from \"three/examples/jsm/loaders/FBXLoader.js\";\nimport * as SkeletonUtils from \"three/examples/jsm/utils/SkeletonUtils.js\";\n\n// base scene and model\nconst fbx_models = [\n \"/GenMM_demo/assets/Wave_Hip_Hop_Dance.fbx\",\n \"/GenMM_demo/assets/Hip_Hop_Dancing.fbx\",\n \"/GenMM_demo/assets/Gangnam_Style.fbx\",\n \"/GenMM_demo/assets/Samba_Dancing.fbx\",\n \"/GenMM_demo/assets/Swing_Dancing.fbx\",\n];\nlet cur_fbx_model = 0;\nlet camera, scene, renderer, stats, panel;\nlet hemiLight, dirLight, spotLight, ground;\nlet mixers = [],\n meshes = [],\n skeletons = [],\n durations = [],\n duration_delta;\nconst clock = new THREE.Clock();\nconst near = 0.1,\n far = 50; // camera setting\nconst ground_size = 50; // ground size\nconst scene_setting = {\n fog: 0.08,\n hemi_light: true,\n dir_light: true,\n spot_light: false,\n ground: true,\n};\nconst visibility_setting = {\n show_mesh: true,\n show_skeleton: false,\n skeleton_width: 5,\n};\nconst api_urls = [\n \"https://wyysf-genmm.hf.space/\",\n \"https://wyysf-genmm-test.hf.space/\"\n];\nlet _url_id = Math.floor(Math.random() * api_urls.length);;\n// for synthesis\nconst synthesis_setting = {\n api_url: api_urls[_url_id],\n frames: 500,\n noise_sigma: 25.0,\n loop: false,\n completeness: false,\n alpha: 0.1,\n patch_size: 15,\n coarse_ratio: 0.2,\n pyr_factor: 0.75,\n num_steps: 3,\n};\n\nexport default {\n name: \"MainScene\",\n props: {\n init_file: {\n type: String,\n default: fbx_models[0],\n },\n scale: {\n type: Number,\n default: 0.01,\n },\n },\n data: function () {\n return {\n cur_frame: -1,\n num_frames: 0,\n isPause: false,\n isSynthesising: false,\n uploadFilename: null,\n uploadFiles: [],\n };\n },\n mounted() {\n this.initScene();\n this.loadFBXModel(this.init_file);\n this.animate();\n },\n methods: {\n initScene() {\n function create_scene() {\n const container = document.getElementById(\"Canvas\");\n\n camera = new THREE.PerspectiveCamera(\n 45,\n window.innerWidth / window.innerHeight,\n near,\n far\n );\n // camera.position.set(-2, 2, 4.2);\n camera.position.set(0, 2.5, 5);\n\n scene = new THREE.Scene();\n scene.background = new THREE.Color(0x424242);\n scene.fog = new THREE.FogExp2(0x424242, scene_setting.fog);\n\n hemiLight = new THREE.HemisphereLight(0xffffff, 0x444444);\n hemiLight.position.set(0, 2, 0);\n scene.add(hemiLight);\n\n dirLight = new THREE.DirectionalLight(0xffffff, 0.8);\n dirLight.position.set(0, 5, 4);\n dirLight.castShadow = true;\n dirLight.shadow.mapSize.width = 2048;\n dirLight.shadow.mapSize.height = 2048;\n scene.add(dirLight);\n\n spotLight = new THREE.SpotLight();\n spotLight.angle = Math.PI / 8;\n spotLight.penumbra = 0.5;\n spotLight.castShadow = true;\n spotLight.position.set(-0, 5, 3);\n\n // Ground\n let loader = new THREE.TextureLoader();\n let texture = loader.load(\"./assets/checker.png\");\n texture.wrapS = THREE.RepeatWrapping;\n texture.wrapT = THREE.RepeatWrapping;\n texture.magFilter = THREE.NearestFilter;\n texture.repeat.set(ground_size, ground_size);\n ground = new THREE.Mesh(\n new THREE.PlaneGeometry(ground_size, ground_size),\n new THREE.MeshStandardMaterial({\n map: texture,\n side: THREE.DoubleSide,\n emissiveIntensity: 1,\n })\n );\n ground.rotation.x = Math.PI * -0.5;\n ground.receiveShadow = true;\n scene.add(ground);\n\n // renderer\n renderer = new THREE.WebGLRenderer({ antialias: true });\n renderer.setPixelRatio(window.devicePixelRatio);\n renderer.setSize(window.innerWidth, window.innerHeight);\n renderer.shadowMap.enabled = true;\n container.appendChild(renderer.domElement);\n\n // controls\n const controls = new OrbitControls(camera, renderer.domElement);\n controls.target.set(0, 1, 0);\n controls.mouseButtons = {\n LEFT: THREE.MOUSE.ROTATE,\n MIDDLE: THREE.MOUSE.PAN,\n };\n controls.update();\n\n window.addEventListener(\"resize\", onWindowResize);\n\n // Stats\n stats = new Stats();\n container.appendChild(stats.dom);\n }\n\n function create_panel() {\n panel = new GUI({ width: 220 });\n panel.add(synthesis_setting, \"api_url\");\n\n const scene_folder = panel.addFolder(\"Scene\");\n scene_folder\n .add(scene_setting, \"hemi_light\")\n .onChange(function (value) {\n if (value) {\n scene.add(hemiLight);\n } else {\n scene.remove(hemiLight);\n }\n });\n scene_folder.add(scene_setting, \"dir_light\").onChange(function (value) {\n if (value) {\n scene.add(dirLight);\n } else {\n scene.remove(dirLight);\n }\n });\n scene_folder\n .add(scene_setting, \"spot_light\")\n .onChange(function (value) {\n if (value) {\n scene.add(spotLight);\n } else {\n scene.remove(spotLight);\n }\n });\n scene_folder.add(scene_setting, \"ground\").onChange(function (value) {\n if (value) {\n scene.add(ground);\n } else {\n scene.remove(ground);\n }\n });\n scene_folder\n .add(scene_setting, \"fog\", 0.0, 0.25, 0.01)\n .onChange(function (value) {\n scene.fog = new THREE.FogExp2(0x424242, value);\n });\n scene_folder.close();\n\n const visibility_folder = panel.addFolder(\"Visibility\");\n visibility_folder\n .add(visibility_setting, \"show_mesh\")\n .onChange(function (value) {\n for (let i = 0; i < meshes.length; i++) {\n meshes[i].visible = value;\n }\n });\n visibility_folder\n .add(visibility_setting, \"show_skeleton\")\n .onChange(function (value) {\n for (let i = 0; i < skeletons.length; i++) {\n skeletons[i].visible = value;\n }\n })\n .listen();\n visibility_folder\n .add(visibility_setting, \"skeleton_width\", 1, 10, 0.5)\n .onChange(function (value) {\n for (let i = 0; i < skeletons.length; i++) {\n skeletons[i].material.linewidth = value / 1000;\n }\n });\n visibility_folder.close();\n\n const synthesis_folder = panel.addFolder(\"Synthesis\");\n synthesis_folder.add(synthesis_setting, \"frames\", 1, 2000, 1).listen();\n synthesis_folder.add(synthesis_setting, \"noise_sigma\", 0.0, 50.0, 1);\n synthesis_folder.add(synthesis_setting, \"loop\");\n synthesis_folder\n .add(synthesis_setting, \"completeness\")\n .onChange(function () {\n if (synthesis_setting.completeness) {\n alpha_setting.show();\n } else {\n alpha_setting.hide();\n }\n });\n let alpha_setting = synthesis_folder\n .add(synthesis_setting, \"alpha\", 0.001, 1, 0.001)\n .hide();\n synthesis_folder.add(synthesis_setting, \"patch_size\", 1, 30, 1);\n synthesis_folder.add(synthesis_setting, \"coarse_ratio\", 0.1, 1.0, 0.01);\n synthesis_folder.add(synthesis_setting, \"pyr_factor\", 0.25, 1.0, 0.01);\n synthesis_folder.add(synthesis_setting, \"num_steps\", 1, 50, 1);\n synthesis_folder.close();\n\n panel.close();\n }\n\n function onWindowResize() {\n camera.aspect = window.innerWidth / window.innerHeight;\n camera.updateProjectionMatrix();\n renderer.setSize(window.innerWidth, window.innerHeight);\n }\n\n create_scene();\n create_panel();\n },\n\n reset() {\n for (let i = 0; i < meshes.length; i++) {\n scene.remove(meshes[i]);\n }\n for (let i = 0; i < skeletons.length; i++) {\n scene.remove(skeletons[i]);\n }\n mixers = [];\n (durations = []), (meshes = []);\n (skeletons = []), (durations = []);\n },\n\n animate() {\n let _this = this;\n\n requestAnimationFrame(_this.animate);\n\n const delta = clock.getDelta();\n const max_duration = Math.max(...durations),\n max_duration_index = durations.indexOf(max_duration);\n for (let i = 0; i < mixers.length; i++) {\n if (max_duration === -Infinity || mixers[i].time <= durations[i]) {\n mixers[i].update(delta);\n }\n if (i === max_duration_index) {\n _this.cur_frame = Math.round(\n (mixers[i].time * _this.num_frames) / durations[i]\n );\n _this.cur_frame %= _this.num_frames;\n }\n if (mixers[i].time > max_duration) {\n for (const mixer of mixers) mixer.setTime(0);\n }\n }\n\n renderer.render(scene, camera);\n stats.update();\n },\n\n loadFBXobject(object) {\n let _this = this;\n\n let mixer = new THREE.AnimationMixer(object);\n // console.log(object.animations);\n for (let i = 0; i < object.animations.length; i++) {\n if (object.animations[i].tracks.length == 0) {\n continue;\n }\n object.animations[0] = object.animations[i];\n }\n // console.log(object.animations[0]);\n let action = mixer.clipAction(object.animations[0]);\n action.play();\n\n object.traverse(function (child) {\n if (child.isMesh) {\n child.castShadow = true;\n child.receiveShadow = true;\n }\n });\n object.scale.multiplyScalar(_this.scale);\n scene.add(object);\n\n let skeleton = new MySkeletonHelper(object);\n skeleton.material.linewidth = visibility_setting.skeleton_width / 1000;\n skeleton.visible = visibility_setting.show_skeleton;\n scene.add(skeleton);\n\n // update frames\n // synthesis_setting.frames = object.animations[0].tracks[0].times.length;\n durations.push(object.animations[0].duration);\n duration_delta =\n object.animations[0].duration /\n (object.animations[0].tracks[0].times.length - 1);\n _this.num_frames =\n Math.round(Math.max(...durations) / duration_delta) + 1;\n\n mixers.push(mixer);\n meshes.push(object);\n skeletons.push(skeleton);\n },\n\n loadFBXModel(fbx_model) {\n let _this = this;\n function updateProgress(loaded, total) {\n const percentComplete = Math.round((loaded / total) * 100);\n document.getElementById(\n \"loader-text\"\n ).textContent = `${percentComplete}%`;\n }\n\n const loadingManager = new THREE.LoadingManager();\n loadingManager.onStart = (url, loaded, total) => {\n const loadingScreen = document.getElementById(\"loading-screen\");\n loadingScreen.style.display = \"block\";\n loadingScreen.classList.remove(\"fade-out\");\n updateProgress(loaded, total);\n };\n\n loadingManager.onProgress = (url, loaded, total) => {\n updateProgress(loaded, total);\n };\n\n loadingManager.onLoad = () => {\n const loadingScreen = document.getElementById(\"loading-screen\");\n loadingScreen.classList.add(\"fade-out\");\n loadingScreen.addEventListener(\"transitionend\", (event) => {\n event.target.style.display = \"none\";\n event.target.classList.remove(\"fade-out\");\n });\n };\n\n const loader = new FBXLoader(loadingManager);\n loader.load(fbx_model, _this.loadFBXobject, undefined, (error) => {\n console.error(\"Error loading FBX model:\", error);\n });\n },\n\n // Buttons\n restart() {\n for (const mixer of mixers) {\n mixer.setTime(0);\n }\n\n this.cur_frame = 0;\n },\n\n play() {\n for (const mixer of mixers) mixer.timeScale = 1;\n this.isPause = false;\n },\n\n next() {\n cur_fbx_model += 1;\n this.reset();\n console.log(fbx_models[cur_fbx_model]);\n this.loadFBXModel(fbx_models[cur_fbx_model]);\n if (cur_fbx_model >= fbx_models.length - 1) cur_fbx_model = -1;\n },\n\n pause() {\n for (const mixer of mixers) mixer.timeScale = 0;\n this.isPause = true;\n },\n\n setFrame(cur_frame) {\n const max_duration = Math.max(...durations);\n for (const mixer of mixers) {\n let timeScale = mixer.timeScale;\n mixer.timeScale = 1;\n mixer.setTime((max_duration * cur_frame) / this.num_frames);\n mixer.timeScale = timeScale;\n }\n },\n\n // Main function\n synthesis() {\n let _this = this;\n _this.isSynthesising = true;\n\n async function query(data) {\n const app = await client(synthesis_setting.api_url);\n const result = await app.predict(\"/predict\", [JSON.stringify(data)]);\n return result;\n }\n\n query({\n setting: synthesis_setting,\n tracks: meshes[0].animations[0].toJSON()[\"tracks\"],\n scale: _this.scale,\n }).then((res) => {\n // console.log(res.data[0].time.toFixed(4));\n ElMessage({\n message: h(\"p\", null, [\n h(\"span\", null, \"Generated in \"),\n h(\n \"i\",\n { style: \"color: red\" },\n res.data[0].time.toFixed(4).toString()\n ),\n h(\"span\", null, \" s on CPU without any training.\"),\n ]),\n duration: 3000,\n });\n\n let syn_mesh = SkeletonUtils.clone(meshes[0]);\n let syn_mixer = new THREE.AnimationMixer(syn_mesh);\n let animation = THREE.AnimationClip.parse(res.data[0]);\n let action = syn_mixer.clipAction(animation);\n\n action.play();\n\n syn_mesh.traverse(function (child) {\n if (child.isMesh) {\n child.castShadow = true;\n child.receiveShadow = true;\n }\n });\n scene.add(syn_mesh);\n\n let skeleton = new MySkeletonHelper(\n syn_mesh,\n new THREE.Color(0xb9394e),\n new THREE.Color(0xdc9042)\n );\n skeleton.material.linewidth = visibility_setting.skeleton_width / 1000;\n skeleton.visible = false;\n scene.add(skeleton);\n\n for (const mixer of mixers) mixer.setTime(0);\n durations.push(animation.duration);\n _this.num_frames =\n Math.round(Math.max(...durations) / duration_delta) + 1;\n\n meshes.push(syn_mesh);\n mixers.push(syn_mixer);\n skeletons.push(skeleton);\n\n // change position\n let pos = [\n [0, 0],\n [-2, -1],\n [-1, -1],\n [0, -1],\n [1, -1],\n [2, -1],\n [-2, -2],\n [-1, -2],\n [0, -2],\n [1, -2],\n [2, -2],\n [-2, -3],\n [-1, -3],\n [0, -3],\n [1, -3],\n [2, -3],\n [-2, -4],\n [-1, -4],\n [0, -4],\n [1, -4],\n [2, -4],\n [-2, -5],\n [-1, -5],\n [0, -5],\n [1, -5],\n [2, -5],\n ];\n for (let i = 0; i < meshes.length; i++) {\n meshes[i].position.x = pos[i][0];\n meshes[i].position.z = pos[i][1];\n }\n\n _this.isSynthesising = false;\n });\n },\n },\n components: {\n ArrowRight,\n VideoPlay,\n VideoPause,\n RefreshLeft,\n MagicStick,\n },\n};\n</script>\n\n<style scoped>\n#Canvas {\n width: 100%;\n height: 100%;\n position: fixed;\n left: 0px;\n right: 0px;\n top: 0px;\n bottom: 0px;\n}\n#loading-screen {\n display: block;\n position: absolute;\n z-index: 2;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: #ffffff;\n opacity: 1;\n transition: 1s opacity;\n}\n#loading-screen.fade-out {\n opacity: 0;\n}\n#loader {\n display: block;\n position: relative;\n left: 50%;\n top: 50%;\n width: 150px;\n height: 150px;\n margin: -75px 0 0 -75px;\n border-radius: 50%;\n border: 3px solid transparent;\n border-top-color: #cf3e5b;\n -webkit-animation: spin 2s linear infinite;\n animation: spin 2s linear infinite;\n}\n#loader:before {\n content: \"\";\n position: absolute;\n top: 5px;\n left: 5px;\n right: 5px;\n bottom: 5px;\n border-radius: 50%;\n border: 3px solid transparent;\n border-top-color: #f2c94a;\n -webkit-animation: spin 3s linear infinite;\n animation: spin 3s linear infinite;\n}\n#loader:after {\n content: \"\";\n position: absolute;\n top: 15px;\n left: 15px;\n right: 15px;\n bottom: 15px;\n border-radius: 50%;\n border: 3px solid transparent;\n border-top-color: #52a7db;\n -webkit-animation: spin 1.5s linear infinite;\n animation: spin 1.5s linear infinite;\n}\n@-webkit-keyframes spin {\n 0% {\n -webkit-transform: rotate(0deg);\n -ms-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n -ms-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n@keyframes spin {\n 0% {\n -webkit-transform: rotate(0deg);\n -ms-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n -ms-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n#loader-text {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n font-size: 24px;\n font-weight: bold;\n color: #000000;\n}\n#ProgressBar {\n width: 80%;\n position: fixed;\n bottom: 5%;\n margin: 0 auto;\n left: 0;\n right: 0;\n}\n\n#ProgressBar .frame-text {\n width: 100%;\n font-size: 15px;\n font-weight: 500;\n color: #343232;\n height: 22px;\n line-height: 22px;\n margin-left: 5px;\n}\n\n:deep(.el-slider__bar) {\n background-color: #63c6fa;\n}\n\n:deep(.el-slider__runway) {\n background-color: #ffffff;\n}\n\n:deep(.el-slider__button) {\n border-color: #63c6fa;\n}\n</style>\n","<script type=\"module\">\nimport * as THREE from 'three';\nimport { LineMaterial } from 'three/examples/jsm/lines/LineMaterial.js';\nimport { LineSegments2 } from 'three/examples/jsm/lines/LineSegments2.js';\nimport { LineSegmentsGeometry } from 'three/examples/jsm/lines/LineSegmentsGeometry.js';\n\nexport default class MySkeletonHelper extends LineSegments2 {\n\t// constructor(object, color1=null, color2=null, filter=null) {\n\tconstructor(object, color1=null, color2=null) {\n\t\t// var bones = getBoneList(object, filter);\n\t\tvar bones = getBoneList(object);\n\t\tvar geometry = new LineSegmentsGeometry();\n\t\tif (color1 === null) {\n\t\t\tcolor1 = new THREE.Color(0x46BBA7);\n\t\t}\n\t\tif (color2 === null) {\n\t\t\tcolor2 = new THREE.Color(0x705CD3);\n\t\t}\n\n\t\tvar vertices = [];\n\t\tvar colors = [];\n\t\tvar matrix_world_inverse = new THREE.Matrix4();\n\n\t\tmatrix_world_inverse.copy(object.matrixWorld).invert();\n\n\t\tfor (var i = 0; i < bones.length; i++) {\n\t\t\tvar bone = bones[i];\n\n\t\t\t// First bone is the root and doesn't need a line.\n\t\t\t// Each bone has a start point (its parent) and an end point.\n\t\t\tif (bone.parent && bone.parent.isBone) {\n\t\t\t\tvertices.push(0, 0, 0);\n\t\t\t\tvertices.push(0, 0, 0);\n\t\t\t\tcolors.push(color1.r, color1.g, color1.b);\n\t\t\t\tcolors.push(color2.r, color2.g, color2.b);\n\t\t\t}\n\t\t}\n\n\t\tgeometry.setPositions(vertices);\n\t\tgeometry.setColors(colors);\n\n\t\tlet material = new LineMaterial({\n\t\t\tcolor: 0xffffff,\n\t\t\tlinewidth: 0.0075, // in pixels\n\t\t\tvertexColors: true,\n\t\t\tdashed: true,\n\t\t\tdepthTest: false,\n\t\t\tdepthWrite: false,\n\t\t});\n\n\t\tsuper(geometry, material);\n\t\tthis.type = 'MySkeletonHelper';\n\t\tthis.MySkeletonHelper = true;\n\n\t\tthis.root = object;\n\t\tthis.bones = bones;\n\n\t\tthis.matrix = object.matrixWorld;\n\t\tthis.matrixAutoUpdate = false;\n\t}\n\n\tupdateMatrixWorld(force) {\n\t\tvar position = this.geometry.getAttribute('position');\n\n\t\tvar vertices = [];\n\t\tvar vector = new THREE.Vector3();\n\t\tvar bone_matrix = new THREE.Matrix4();\n\t\tvar matrix_world_inverse = new THREE.Matrix4();\n\n\t\tmatrix_world_inverse.copy(this.root.matrixWorld).invert();\n\n\t\tfor (let i = 0; i < this.bones.length; i++) {\n\t\t\tvar bone = this.bones[i];\n\n\t\t\tif (bone.parent && bone.parent.isBone) {\n\t\t\t\tbone_matrix.multiplyMatrices(matrix_world_inverse, bone.matrixWorld);\n\t\t\t\tvector.setFromMatrixPosition(bone_matrix);\n\t\t\t\tvertices.push(vector.x, vector.y, vector.z);\n\n\t\t\t\tbone_matrix.multiplyMatrices(matrix_world_inverse, bone.parent.matrixWorld);\n\t\t\t\tvector.setFromMatrixPosition(bone_matrix);\n\t\t\t\tvertices.push(vector.x, vector.y, vector.z);\n\t\t\t}\n\t\t}\n\n\t\tthis.geometry.setPositions(vertices);\n\n\t\tposition.needsUpdate = true;\n\t\tsuper.updateMatrixWorld(force);\n\t}\n}\n\n\nfunction getBoneList(object) {\n\tconst boneList = [];\n\t// console.log(filter)\n\tif (object.isBone === true) {\n\t\t// console.log(object)\n\t\tboneList.push(object);\n\t}\n\n\tfor (let i = 0; i < object.children.length; i++) {\n\t\tboneList.push.apply(boneList, getBoneList(object.children[i]));\n\t}\n\n\treturn boneList;\n\n}\n\n\n</script>\n","import script from \"./MySkeletonHelper.vue?vue&type=script&lang=js\"\nexport * from \"./MySkeletonHelper.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { render } from \"./MotionSynthesis_random_synthesis.vue?vue&type=template&id=553d8d48&scoped=true\"\nimport script from \"./MotionSynthesis_random_synthesis.vue?vue&type=script&lang=js\"\nexport * from \"./MotionSynthesis_random_synthesis.vue?vue&type=script&lang=js\"\n\nimport \"./MotionSynthesis_random_synthesis.vue?vue&type=style&index=0&id=553d8d48&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-553d8d48\"]])\n\nexport default __exports__","import { render } from \"./App.vue?vue&type=template&id=49d4c533\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\nimport \"./App.vue?vue&type=style&index=0&id=49d4c533&lang=css\"\n\nimport exportComponent from \"../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createApp } from 'vue'\nimport ElementPlus from \"element-plus\"\nimport 'element-plus/theme-chalk/index.css'\nimport App from './App.vue'\n\nconst app = createApp(App)\n\napp.use(ElementPlus)\napp.mount('#app')","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? function(obj) { return Object.getPrototypeOf(obj); } : function(obj) { return obj.__proto__; };\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach(function(key) { def[key] = function() { return value[key]; }; });\n\t}\n\tdef['default'] = function() { return value; };\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + \"3863b0a5\" + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"patch-based_motion_synthesis:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkpatch_based_motion_synthesis\"] = self[\"webpackChunkpatch_based_motion_synthesis\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(3644); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["_createBlock","_component_MotionSynthesis","_createElementVNode","id","class","_hoisted_1","_hoisted_2","_hoisted_3","_createVNode","_component_el_row","_component_el_slider","_ctx","cur_frame","$event","max","num_frames","size","onInput","$options","setFrame","_hoisted_4","_toDisplayString","_hoisted_5","style","_component_el_button","type","color","onClick","_cache","next","_component_el_icon","_component_ArrowRight","play","_component_VideoPlay","isPause","pause","_component_VideoPause","restart","_component_RefreshLeft","synthesis","_component_MagicStick","isSynthesising","loading","MySkeletonHelper","LineSegments2","constructor","object","color1","color2","bones","getBoneList","geometry","LineSegmentsGeometry","THREE","vertices","colors","matrix_world_inverse","copy","matrixWorld","invert","i","length","bone","parent","isBone","push","r","g","b","setPositions","setColors","material","LineMaterial","linewidth","vertexColors","dashed","depthTest","depthWrite","super","this","root","matrix","matrixAutoUpdate","updateMatrixWorld","force","position","getAttribute","vector","bone_matrix","multiplyMatrices","setFromMatrixPosition","x","y","z","needsUpdate","boneList","children","apply","__exports__","fbx_models","camera","scene","renderer","stats","panel","hemiLight","dirLight","spotLight","ground","duration_delta","cur_fbx_model","mixers","meshes","skeletons","durations","clock","near","far","ground_size","scene_setting","fog","hemi_light","dir_light","spot_light","visibility_setting","show_mesh","show_skeleton","skeleton_width","api_urls","_url_id","Math","floor","random","synthesis_setting","api_url","frames","noise_sigma","loop","completeness","alpha","patch_size","coarse_ratio","pyr_factor","num_steps","name","props","init_file","String","default","scale","Number","data","uploadFilename","uploadFiles","mounted","initScene","loadFBXModel","animate","methods","create_scene","container","document","getElementById","window","innerWidth","innerHeight","set","background","add","castShadow","shadow","mapSize","width","height","angle","PI","penumbra","loader","texture","load","wrapS","wrapT","magFilter","repeat","map","side","emissiveIntensity","rotation","receiveShadow","antialias","setPixelRatio","devicePixelRatio","setSize","shadowMap","enabled","appendChild","domElement","controls","OrbitControls","target","mouseButtons","LEFT","ROTATE","MIDDLE","PAN","update","addEventListener","onWindowResize","Stats","dom","create_panel","GUI","scene_folder","addFolder","onChange","value","remove","close","visibility_folder","visible","listen","synthesis_folder","alpha_setting","show","hide","aspect","updateProjectionMatrix","reset","_this","requestAnimationFrame","delta","getDelta","max_duration","max_duration_index","indexOf","Infinity","time","round","mixer","setTime","render","loadFBXobject","animations","tracks","action","clipAction","traverse","child","isMesh","multiplyScalar","skeleton","duration","times","fbx_model","updateProgress","loaded","total","percentComplete","textContent","loadingManager","onStart","url","loadingScreen","display","classList","onProgress","onLoad","event","FBXLoader","undefined","error","console","timeScale","log","async","query","app","client","result","predict","JSON","stringify","setting","toJSON","then","res","ElMessage","message","h","toFixed","toString","syn_mesh","SkeletonUtils","syn_mixer","animation","parse","pos","components","ArrowRight","VideoPlay","VideoPause","RefreshLeft","MagicStick","MotionSynthesis","createApp","App","use","ElementPlus","mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","__webpack_modules__","call","m","deferred","O","chunkIds","fn","priority","notFulfilled","fulfilled","j","Object","keys","every","key","splice","n","getter","__esModule","d","a","leafPrototypes","getProto","getPrototypeOf","obj","__proto__","t","mode","ns","create","def","current","getOwnPropertyNames","forEach","definition","o","defineProperty","enumerable","get","f","e","chunkId","Promise","all","reduce","promises","u","miniCssF","globalThis","Function","prop","prototype","hasOwnProperty","inProgress","dataWebpackPrefix","l","done","script","needAttach","scripts","getElementsByTagName","s","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","setTimeout","bind","head","Symbol","toStringTag","nmd","paths","p","installedChunks","installedChunkData","promise","resolve","reject","Error","loadingEnded","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}