Skip to content

A demo project for perspective transformations on a given image at full resolution

License

Notifications You must be signed in to change notification settings

jywarren/webgl-distort

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

webgl-distort

A prototype, demonstration project to test full-resolution perspective transforms done in-browser on the client side using WebGL. This would be useful for MapKnitter (https://github.com/publiclab/mapknitter) or its interface core library, Leaflet.DistortableImage, where users could individually download their distorted images at full resolution for print or other uses.

Try this out in the demo at https://jywarren.github.io/webgl-distort

Or try the full featured lens distortion tool at https://github.com/jywarren/fisheyegl, based on this code.

Eventually, it could be packaged as a bower-installable library which simply accepts an image URL and a begin and end matrix, and initiates a download (so as not to cause the browser to render the large dataURL).

This makes use of the glfx.js library.

Current usage is:

  <img id="img" src="examples/example-1024.jpg" />

  <script>
    (function() {
 
      warpWebGl(
        'img',
        [0, 0,   1023, 0,    1023, 767, 0,   767], // matrix 1 (before) corner coordinates, NW, NE, SE, SW
        [0, 100, 1023, -50,  1223, 867, 100, 767]  // matrix 2 (after) corner coordinates
      );
 
    })();
  </script>

About

A demo project for perspective transformations on a given image at full resolution

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages