Repository: mikolalysenko/mikolalysenko.github.com Branch: master Commit: a32772903845 Files: 581 Total size: 6.4 MB Directory structure: gitextract_98ry2z6h/ ├── Arrays/ │ ├── Makefile │ ├── css/ │ │ └── main.css │ ├── data_structures/ │ │ ├── linked_list.js │ │ ├── ordered_array.js │ │ └── unordered_array.js │ ├── particles.html │ ├── require.js │ └── test_cases/ │ ├── particles.js │ ├── test_construct.js │ └── test_particles.js ├── DataStructures/ │ ├── Makefile │ ├── css/ │ │ └── main.css │ ├── index.html │ ├── require.js │ ├── structures/ │ │ ├── list.js │ │ ├── pma.js │ │ ├── unordered_vector.js │ │ └── vector.js │ └── tests/ │ ├── particles.js │ └── test_particles.js ├── Downsample/ │ ├── MIT-LICENSE.txt │ ├── Makefile │ ├── css/ │ │ └── main.css │ ├── experiment.txt │ ├── index.html │ ├── js/ │ │ ├── boxfilter.js │ │ ├── closing.js │ │ ├── marchingcubes.js │ │ ├── marchingtetrahedra.js │ │ ├── maxfilter.js │ │ ├── medianfilter.js │ │ ├── minfilter.js │ │ ├── nearestfilter.js │ │ ├── opening.js │ │ ├── perlinnoise.js │ │ ├── surfacenets.js │ │ └── testdata.js │ └── vendor/ │ ├── dsp.js │ ├── three.js/ │ │ ├── Detector.js │ │ ├── ShaderExtras.js │ │ ├── Stats.js │ │ ├── Three.js │ │ └── postprocessing/ │ │ ├── BloomPass.js │ │ ├── DotScreenPass.js │ │ ├── EffectComposer.js │ │ ├── FilmPass.js │ │ ├── MaskPass.js │ │ ├── RenderPass.js │ │ ├── SavePass.js │ │ ├── ShaderPass.js │ │ └── TexturePass.js │ ├── threex/ │ │ ├── Makefile │ │ ├── README.md │ │ ├── THREEx.CelShader.js │ │ ├── THREEx.DeviceOrientationState.js │ │ ├── THREEx.FullScreen.js │ │ ├── THREEx.GeometryUtils.js │ │ ├── THREEx.GeometryWobble.js │ │ ├── THREEx.KeyboardState.js │ │ ├── THREEx.LogoTurtle.js │ │ ├── THREEx.PlasmaShader.js │ │ ├── THREEx.SkyMap.js │ │ ├── THREEx.WindowResize.js │ │ ├── THREEx.glCapability.js │ │ ├── THREEx.requestAnimationFrame.js │ │ ├── THREEx.screenshot.js │ │ ├── docs/ │ │ │ ├── THREEx.CelShader.html │ │ │ ├── THREEx.CubeMap.html │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.FullScreen.html │ │ │ ├── THREEx.GeometryUtils.html │ │ │ ├── THREEx.GeometryWobble.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── THREEx.LogoTurtle.html │ │ │ ├── THREEx.PlasmaShader.html │ │ │ ├── THREEx.SkyMap.html │ │ │ ├── THREEx.WindowResize.html │ │ │ ├── THREEx.glCapability.html │ │ │ ├── THREEx.requestAnimationFrame.html │ │ │ ├── THREEx.screenshot.html │ │ │ └── docco.css │ │ ├── examples/ │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── threex.embedded/ │ │ │ │ ├── noshield-host.html │ │ │ │ ├── noshield-iframe.html │ │ │ │ ├── withshield-host.html │ │ │ │ └── withshield-iframe.html │ │ │ └── threex.fullscreen.html │ │ ├── threex.chromeWebStoreInstall.js │ │ ├── threex.embedded.js │ │ ├── threex.sparks.js │ │ └── threex.texturePoolBall.js │ └── threex.dragpancontrols.js ├── Isosurface/ │ ├── MIT-LICENSE.txt │ ├── Makefile │ ├── css/ │ │ └── main.css │ ├── experiment.txt │ ├── index.html │ ├── js/ │ │ ├── benchmark.js │ │ ├── marchingcubes.js │ │ ├── marchingtetrahedra.js │ │ ├── perlinnoise.js │ │ ├── surfacenets.js │ │ └── testdata.js │ └── vendor/ │ ├── three.js/ │ │ ├── Detector.js │ │ ├── ShaderExtras.js │ │ ├── Stats.js │ │ ├── Three.js │ │ └── postprocessing/ │ │ ├── BloomPass.js │ │ ├── DotScreenPass.js │ │ ├── EffectComposer.js │ │ ├── FilmPass.js │ │ ├── MaskPass.js │ │ ├── RenderPass.js │ │ ├── SavePass.js │ │ ├── ShaderPass.js │ │ └── TexturePass.js │ ├── threex/ │ │ ├── Makefile │ │ ├── README.md │ │ ├── THREEx.CelShader.js │ │ ├── THREEx.DeviceOrientationState.js │ │ ├── THREEx.FullScreen.js │ │ ├── THREEx.GeometryUtils.js │ │ ├── THREEx.GeometryWobble.js │ │ ├── THREEx.KeyboardState.js │ │ ├── THREEx.LogoTurtle.js │ │ ├── THREEx.PlasmaShader.js │ │ ├── THREEx.SkyMap.js │ │ ├── THREEx.WindowResize.js │ │ ├── THREEx.glCapability.js │ │ ├── THREEx.requestAnimationFrame.js │ │ ├── THREEx.screenshot.js │ │ ├── docs/ │ │ │ ├── THREEx.CelShader.html │ │ │ ├── THREEx.CubeMap.html │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.FullScreen.html │ │ │ ├── THREEx.GeometryUtils.html │ │ │ ├── THREEx.GeometryWobble.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── THREEx.LogoTurtle.html │ │ │ ├── THREEx.PlasmaShader.html │ │ │ ├── THREEx.SkyMap.html │ │ │ ├── THREEx.WindowResize.html │ │ │ ├── THREEx.glCapability.html │ │ │ ├── THREEx.requestAnimationFrame.html │ │ │ ├── THREEx.screenshot.html │ │ │ └── docco.css │ │ ├── examples/ │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── threex.embedded/ │ │ │ │ ├── noshield-host.html │ │ │ │ ├── noshield-iframe.html │ │ │ │ ├── withshield-host.html │ │ │ │ └── withshield-iframe.html │ │ │ └── threex.fullscreen.html │ │ ├── threex.chromeWebStoreInstall.js │ │ ├── threex.embedded.js │ │ ├── threex.sparks.js │ │ └── threex.texturePoolBall.js │ └── threex.dragpancontrols.js ├── LevelOfDetail/ │ ├── MIT-LICENSE.txt │ ├── Makefile │ ├── css/ │ │ └── main.css │ ├── js/ │ │ ├── boxfilter.js │ │ ├── closing.js │ │ ├── marchingcubes.js │ │ ├── marchingtetrahedra.js │ │ ├── maxfilter.js │ │ ├── medianfilter.js │ │ ├── minfilter.js │ │ ├── nearestfilter.js │ │ ├── opening.js │ │ ├── perlinnoise.js │ │ ├── surfacenets.js │ │ └── testdata.js │ └── vendor/ │ ├── dsp.js │ ├── three.js/ │ │ ├── Detector.js │ │ ├── ShaderExtras.js │ │ ├── Stats.js │ │ ├── Three.js │ │ └── postprocessing/ │ │ ├── BloomPass.js │ │ ├── DotScreenPass.js │ │ ├── EffectComposer.js │ │ ├── FilmPass.js │ │ ├── MaskPass.js │ │ ├── RenderPass.js │ │ ├── SavePass.js │ │ ├── ShaderPass.js │ │ └── TexturePass.js │ ├── threex/ │ │ ├── Makefile │ │ ├── README.md │ │ ├── THREEx.CelShader.js │ │ ├── THREEx.DeviceOrientationState.js │ │ ├── THREEx.FullScreen.js │ │ ├── THREEx.GeometryUtils.js │ │ ├── THREEx.GeometryWobble.js │ │ ├── THREEx.KeyboardState.js │ │ ├── THREEx.LogoTurtle.js │ │ ├── THREEx.PlasmaShader.js │ │ ├── THREEx.SkyMap.js │ │ ├── THREEx.WindowResize.js │ │ ├── THREEx.glCapability.js │ │ ├── THREEx.requestAnimationFrame.js │ │ ├── THREEx.screenshot.js │ │ ├── docs/ │ │ │ ├── THREEx.CelShader.html │ │ │ ├── THREEx.CubeMap.html │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.FullScreen.html │ │ │ ├── THREEx.GeometryUtils.html │ │ │ ├── THREEx.GeometryWobble.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── THREEx.LogoTurtle.html │ │ │ ├── THREEx.PlasmaShader.html │ │ │ ├── THREEx.SkyMap.html │ │ │ ├── THREEx.WindowResize.html │ │ │ ├── THREEx.glCapability.html │ │ │ ├── THREEx.requestAnimationFrame.html │ │ │ ├── THREEx.screenshot.html │ │ │ └── docco.css │ │ ├── examples/ │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── threex.embedded/ │ │ │ │ ├── noshield-host.html │ │ │ │ ├── noshield-iframe.html │ │ │ │ ├── withshield-host.html │ │ │ │ └── withshield-iframe.html │ │ │ └── threex.fullscreen.html │ │ ├── threex.chromeWebStoreInstall.js │ │ ├── threex.embedded.js │ │ ├── threex.sparks.js │ │ └── threex.texturePoolBall.js │ └── threex.dragpancontrols.js ├── MeshLife/ │ ├── bundle.js │ ├── index.html │ └── main.css ├── MeshSimplify/ │ ├── MIT-LICENSE.txt │ ├── Makefile │ ├── css/ │ │ └── main.css │ ├── experiment.txt │ ├── index.html │ ├── js/ │ │ ├── marchingcubes.js │ │ ├── marchingtetrahedra.js │ │ ├── montecarlo.js │ │ ├── surfacenets.js │ │ ├── testdata.js │ │ └── triangle_index.js │ └── vendor/ │ ├── dsp.js │ ├── three.js/ │ │ ├── Detector.js │ │ ├── ShaderExtras.js │ │ ├── Stats.js │ │ ├── Three.js │ │ └── postprocessing/ │ │ ├── BloomPass.js │ │ ├── DotScreenPass.js │ │ ├── EffectComposer.js │ │ ├── FilmPass.js │ │ ├── MaskPass.js │ │ ├── RenderPass.js │ │ ├── SavePass.js │ │ ├── ShaderPass.js │ │ └── TexturePass.js │ ├── threex/ │ │ ├── Makefile │ │ ├── README.md │ │ ├── THREEx.CelShader.js │ │ ├── THREEx.DeviceOrientationState.js │ │ ├── THREEx.FullScreen.js │ │ ├── THREEx.GeometryUtils.js │ │ ├── THREEx.GeometryWobble.js │ │ ├── THREEx.KeyboardState.js │ │ ├── THREEx.LogoTurtle.js │ │ ├── THREEx.PlasmaShader.js │ │ ├── THREEx.SkyMap.js │ │ ├── THREEx.WindowResize.js │ │ ├── THREEx.glCapability.js │ │ ├── THREEx.requestAnimationFrame.js │ │ ├── THREEx.screenshot.js │ │ ├── docs/ │ │ │ ├── THREEx.CelShader.html │ │ │ ├── THREEx.CubeMap.html │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.FullScreen.html │ │ │ ├── THREEx.GeometryUtils.html │ │ │ ├── THREEx.GeometryWobble.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── THREEx.LogoTurtle.html │ │ │ ├── THREEx.PlasmaShader.html │ │ │ ├── THREEx.SkyMap.html │ │ │ ├── THREEx.WindowResize.html │ │ │ ├── THREEx.glCapability.html │ │ │ ├── THREEx.requestAnimationFrame.html │ │ │ ├── THREEx.screenshot.html │ │ │ └── docco.css │ │ ├── examples/ │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── threex.embedded/ │ │ │ │ ├── noshield-host.html │ │ │ │ ├── noshield-iframe.html │ │ │ │ ├── withshield-host.html │ │ │ │ └── withshield-iframe.html │ │ │ └── threex.fullscreen.html │ │ ├── threex.chromeWebStoreInstall.js │ │ ├── threex.embedded.js │ │ ├── threex.sparks.js │ │ └── threex.texturePoolBall.js │ └── threex.dragpancontrols.js ├── MinecraftMeshes/ │ ├── MIT-LICENSE.txt │ ├── Makefile │ ├── css/ │ │ └── main.css │ ├── index.html │ ├── js/ │ │ ├── culled.js │ │ ├── greedy.js │ │ ├── stupid.js │ │ └── testdata.js │ └── vendor/ │ ├── three.js/ │ │ ├── Detector.js │ │ ├── ShaderExtras.js │ │ ├── Stats.js │ │ ├── Three.js │ │ └── postprocessing/ │ │ ├── BloomPass.js │ │ ├── DotScreenPass.js │ │ ├── EffectComposer.js │ │ ├── FilmPass.js │ │ ├── MaskPass.js │ │ ├── RenderPass.js │ │ ├── SavePass.js │ │ ├── ShaderPass.js │ │ └── TexturePass.js │ ├── threex/ │ │ ├── Makefile │ │ ├── README.md │ │ ├── THREEx.CelShader.js │ │ ├── THREEx.DeviceOrientationState.js │ │ ├── THREEx.FullScreen.js │ │ ├── THREEx.GeometryUtils.js │ │ ├── THREEx.GeometryWobble.js │ │ ├── THREEx.KeyboardState.js │ │ ├── THREEx.LogoTurtle.js │ │ ├── THREEx.PlasmaShader.js │ │ ├── THREEx.SkyMap.js │ │ ├── THREEx.WindowResize.js │ │ ├── THREEx.glCapability.js │ │ ├── THREEx.requestAnimationFrame.js │ │ ├── THREEx.screenshot.js │ │ ├── docs/ │ │ │ ├── THREEx.CelShader.html │ │ │ ├── THREEx.CubeMap.html │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.FullScreen.html │ │ │ ├── THREEx.GeometryUtils.html │ │ │ ├── THREEx.GeometryWobble.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── THREEx.LogoTurtle.html │ │ │ ├── THREEx.PlasmaShader.html │ │ │ ├── THREEx.SkyMap.html │ │ │ ├── THREEx.WindowResize.html │ │ │ ├── THREEx.glCapability.html │ │ │ ├── THREEx.requestAnimationFrame.html │ │ │ ├── THREEx.screenshot.html │ │ │ └── docco.css │ │ ├── examples/ │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── threex.embedded/ │ │ │ │ ├── noshield-host.html │ │ │ │ ├── noshield-iframe.html │ │ │ │ ├── withshield-host.html │ │ │ │ └── withshield-iframe.html │ │ │ └── threex.fullscreen.html │ │ ├── threex.chromeWebStoreInstall.js │ │ ├── threex.embedded.js │ │ ├── threex.sparks.js │ │ └── threex.texturePoolBall.js │ └── threex.dragpancontrols.js ├── MinecraftMeshes2/ │ ├── MIT-LICENSE.txt │ ├── Makefile │ ├── css/ │ │ └── main.css │ ├── experiments.txt │ ├── index.html │ ├── js/ │ │ ├── benchmark.js │ │ ├── culled.js │ │ ├── greedy.js │ │ ├── greedy_tri.js │ │ ├── monotone.js │ │ ├── stupid.js │ │ └── testdata.js │ └── vendor/ │ ├── three.js/ │ │ ├── Detector.js │ │ ├── ShaderExtras.js │ │ ├── Stats.js │ │ ├── Three.js │ │ └── postprocessing/ │ │ ├── BloomPass.js │ │ ├── DotScreenPass.js │ │ ├── EffectComposer.js │ │ ├── FilmPass.js │ │ ├── MaskPass.js │ │ ├── RenderPass.js │ │ ├── SavePass.js │ │ ├── ShaderPass.js │ │ └── TexturePass.js │ ├── threex/ │ │ ├── Makefile │ │ ├── README.md │ │ ├── THREEx.CelShader.js │ │ ├── THREEx.DeviceOrientationState.js │ │ ├── THREEx.FullScreen.js │ │ ├── THREEx.GeometryUtils.js │ │ ├── THREEx.GeometryWobble.js │ │ ├── THREEx.KeyboardState.js │ │ ├── THREEx.LogoTurtle.js │ │ ├── THREEx.PlasmaShader.js │ │ ├── THREEx.SkyMap.js │ │ ├── THREEx.WindowResize.js │ │ ├── THREEx.glCapability.js │ │ ├── THREEx.requestAnimationFrame.js │ │ ├── THREEx.screenshot.js │ │ ├── docs/ │ │ │ ├── THREEx.CelShader.html │ │ │ ├── THREEx.CubeMap.html │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.FullScreen.html │ │ │ ├── THREEx.GeometryUtils.html │ │ │ ├── THREEx.GeometryWobble.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── THREEx.LogoTurtle.html │ │ │ ├── THREEx.PlasmaShader.html │ │ │ ├── THREEx.SkyMap.html │ │ │ ├── THREEx.WindowResize.html │ │ │ ├── THREEx.glCapability.html │ │ │ ├── THREEx.requestAnimationFrame.html │ │ │ ├── THREEx.screenshot.html │ │ │ └── docco.css │ │ ├── examples/ │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── threex.embedded/ │ │ │ │ ├── noshield-host.html │ │ │ │ ├── noshield-iframe.html │ │ │ │ ├── withshield-host.html │ │ │ │ └── withshield-iframe.html │ │ │ └── threex.fullscreen.html │ │ ├── threex.chromeWebStoreInstall.js │ │ ├── threex.embedded.js │ │ ├── threex.sparks.js │ │ └── threex.texturePoolBall.js │ └── threex.dragpancontrols.js ├── Pictures/ │ └── test_smooth.py ├── Resources/ │ ├── brep.js │ ├── glow_shell.js │ ├── lib/ │ │ └── GLOW.js │ ├── models/ │ │ ├── bunny.js │ │ ├── bunny.obj │ │ ├── convert_three.js │ │ └── teapot.js │ ├── surfacenets.js │ └── tools/ │ └── convert_obj.js ├── ShapeCarving/ │ ├── MIT-LICENSE.txt │ ├── Makefile │ ├── css/ │ │ └── main.css │ ├── experiments.txt │ ├── index.html │ ├── js/ │ │ ├── benchmark.js │ │ ├── culled.js │ │ ├── greedy.js │ │ ├── greedy_tri.js │ │ ├── monotone.js │ │ ├── shapecarve.js │ │ ├── stupid.js │ │ └── testdata.js │ ├── jscolor/ │ │ ├── demo.html │ │ └── jscolor.js │ └── vendor/ │ ├── three.js/ │ │ ├── Detector.js │ │ ├── ShaderExtras.js │ │ ├── Stats.js │ │ ├── Three.js │ │ └── postprocessing/ │ │ ├── BloomPass.js │ │ ├── DotScreenPass.js │ │ ├── EffectComposer.js │ │ ├── FilmPass.js │ │ ├── MaskPass.js │ │ ├── RenderPass.js │ │ ├── SavePass.js │ │ ├── ShaderPass.js │ │ └── TexturePass.js │ ├── threex/ │ │ ├── Makefile │ │ ├── README.md │ │ ├── THREEx.CelShader.js │ │ ├── THREEx.DeviceOrientationState.js │ │ ├── THREEx.FullScreen.js │ │ ├── THREEx.GeometryUtils.js │ │ ├── THREEx.GeometryWobble.js │ │ ├── THREEx.KeyboardState.js │ │ ├── THREEx.LogoTurtle.js │ │ ├── THREEx.PlasmaShader.js │ │ ├── THREEx.SkyMap.js │ │ ├── THREEx.WindowResize.js │ │ ├── THREEx.glCapability.js │ │ ├── THREEx.requestAnimationFrame.js │ │ ├── THREEx.screenshot.js │ │ ├── docs/ │ │ │ ├── THREEx.CelShader.html │ │ │ ├── THREEx.CubeMap.html │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.FullScreen.html │ │ │ ├── THREEx.GeometryUtils.html │ │ │ ├── THREEx.GeometryWobble.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── THREEx.LogoTurtle.html │ │ │ ├── THREEx.PlasmaShader.html │ │ │ ├── THREEx.SkyMap.html │ │ │ ├── THREEx.WindowResize.html │ │ │ ├── THREEx.glCapability.html │ │ │ ├── THREEx.requestAnimationFrame.html │ │ │ ├── THREEx.screenshot.html │ │ │ └── docco.css │ │ ├── examples/ │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── threex.embedded/ │ │ │ │ ├── noshield-host.html │ │ │ │ ├── noshield-iframe.html │ │ │ │ ├── withshield-host.html │ │ │ │ └── withshield-iframe.html │ │ │ └── threex.fullscreen.html │ │ ├── threex.chromeWebStoreInstall.js │ │ ├── threex.embedded.js │ │ ├── threex.sparks.js │ │ └── threex.texturePoolBall.js │ └── threex.dragpancontrols.js ├── TJunctions/ │ ├── MIT-LICENSE.txt │ ├── Makefile │ ├── css/ │ │ └── main.css │ ├── index.html │ └── vendor/ │ ├── three.js/ │ │ ├── Detector.js │ │ ├── ShaderExtras.js │ │ ├── Stats.js │ │ ├── Three.js │ │ └── postprocessing/ │ │ ├── BloomPass.js │ │ ├── DotScreenPass.js │ │ ├── EffectComposer.js │ │ ├── FilmPass.js │ │ ├── MaskPass.js │ │ ├── RenderPass.js │ │ ├── SavePass.js │ │ ├── ShaderPass.js │ │ └── TexturePass.js │ ├── threex/ │ │ ├── Makefile │ │ ├── README.md │ │ ├── THREEx.CelShader.js │ │ ├── THREEx.DeviceOrientationState.js │ │ ├── THREEx.FullScreen.js │ │ ├── THREEx.GeometryUtils.js │ │ ├── THREEx.GeometryWobble.js │ │ ├── THREEx.KeyboardState.js │ │ ├── THREEx.LogoTurtle.js │ │ ├── THREEx.PlasmaShader.js │ │ ├── THREEx.SkyMap.js │ │ ├── THREEx.WindowResize.js │ │ ├── THREEx.glCapability.js │ │ ├── THREEx.requestAnimationFrame.js │ │ ├── THREEx.screenshot.js │ │ ├── docs/ │ │ │ ├── THREEx.CelShader.html │ │ │ ├── THREEx.CubeMap.html │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.FullScreen.html │ │ │ ├── THREEx.GeometryUtils.html │ │ │ ├── THREEx.GeometryWobble.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── THREEx.LogoTurtle.html │ │ │ ├── THREEx.PlasmaShader.html │ │ │ ├── THREEx.SkyMap.html │ │ │ ├── THREEx.WindowResize.html │ │ │ ├── THREEx.glCapability.html │ │ │ ├── THREEx.requestAnimationFrame.html │ │ │ ├── THREEx.screenshot.html │ │ │ └── docco.css │ │ ├── examples/ │ │ │ ├── THREEx.DeviceOrientationState.html │ │ │ ├── THREEx.KeyboardState.html │ │ │ ├── threex.embedded/ │ │ │ │ ├── noshield-host.html │ │ │ │ ├── noshield-iframe.html │ │ │ │ ├── withshield-host.html │ │ │ │ └── withshield-iframe.html │ │ │ └── threex.fullscreen.html │ │ ├── threex.chromeWebStoreInstall.js │ │ ├── threex.embedded.js │ │ ├── threex.sparks.js │ │ └── threex.texturePoolBall.js │ └── threex.dragpancontrols.js ├── Terrain/ │ ├── MIT-LICENSE.txt │ ├── Makefile │ ├── css/ │ │ └── main.css │ ├── index.html │ ├── index.html~ │ ├── js/ │ │ ├── dualcontour.js │ │ ├── events.js │ │ ├── perlinnoise.js │ │ ├── testdata.js │ │ └── webgl.js │ └── require.js └── resume.html ================================================ FILE CONTENTS ================================================ ================================================ FILE: Arrays/Makefile ================================================ # makefile to automatize simple operations server: python -m SimpleHTTPServer deploy: # assume there is something to commit # use "git diff --exit-code HEAD" to know if there is something to commit # so two lines: one if no commit, one if something to commit git commit -a -m "New deploy" && git push -f origin HEAD:gh-pages && git reset HEAD~ ================================================ FILE: Arrays/css/main.css ================================================ body { overflow : hidden; padding : 0; margin : 0; color : #222; background-color: #BBB; font-family : arial; font-size : 100%; } #info a { color : #66F; text-decoration : none; } #info a:hover { text-decoration : underline; } #info { position : absolute; top : 10px; left : 10px; padding : 5px; z-index: 10; } #particleCanvas { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; } ================================================ FILE: Arrays/data_structures/linked_list.js ================================================ function Cell(prev, next, value) { this.prev = prev; this.next = next; this.value = value; } function List(head, tail) { this.head = head; this.tail = tail; } exports.create = function() { return new List(null, null); } exports.append = function(list, value) { var ncell = new Cell(list.tail, null, value); if(!list.head) { list.head = ncell; list.tail = ncell; } else { list.tail.next = ncell; list.tail = ncell; } } exports.insert = function(list, iter, value) { if(iter === null) { exports.append(list, value); return; } var ncell = new Cell(iter.prev, iter, value); iter.prev = ncell; if(iter.prev) { iter.prev.next = ncell; } else { list.head = ncell; } } exports.remove = function(list, iter) { if(iter.prev) { iter.prev.next = iter.next; } else { list.head = iter.next; } if(iter.next) { iter.next.prev = iter.prev; } else { list.tail = iter.prev; } } exports.read = function(list, iter) { return iter.value; } exports.begin = function(list) { return list.head; } exports.next = function(list, iter) { return iter.next; } exports.prev = function(list, iter) { return iter.prev; } exports.end = function(list) { return null; } ================================================ FILE: Arrays/data_structures/ordered_array.js ================================================ exports.create = function() { return []; } exports.insert = function(array, iter, value) { array.splice(iter, 0, value); } exports.remove = function(array, iter) { array.splice(iter, 1); } exports.append = function(array, value) { array.push(value); } exports.read = function(array, iter) { return array[iter]; } exports.begin = function(array) { return array.length-1; } exports.prev = function(array, iter) { return iter + 1; } exports.next = function(array, iter) { return iter - 1; } exports.end = function(array) { return -1; } ================================================ FILE: Arrays/data_structures/unordered_array.js ================================================ exports.create = function() { return []; } exports.insert = function(array, iter, value) { //Not supported throw new Error("Unsupported operation"); } exports.remove = function(array, iter) { array[iter] = array[array.length - 1]; array.pop(); } exports.append = function(array, value) { array.push(value); } exports.read = function(array, iter) { return array[iter]; } exports.begin = function(array) { return array.length - 1; } exports.prev = function(array, iter) { //Not supported throw new Error("Unsupported operation"); } exports.next = function(array, iter) { return iter - 1; } exports.end = function(array) { return -1; } ================================================ FILE: Arrays/particles.html ================================================