Skip to content

This JS library allows the user to produce a "click to focus" image, with a set of pictures taken at all focal length.

License

Notifications You must be signed in to change notification settings

lionep/multifocus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

MultiFocus JavaScript Library

Description

This library allows the user to produce a "click to focus" image, with a set of pictures taken at all focal length.

Usage

Import multifocus.js in your html

<script type="text/javascript" src="multifocus.js"></script>

Then initialize the library in your JS code

var myzone = document.getElementById('myzone');

var options = {
  container: myzone,       // Container of MultiFocus widget
  width: 1024,             // Width of container in PX (typically width of each image)
  height: 768,             // Height of container in PX (typically height of each image)
  preload: true,           // Define if the set of images should be preloaded
  speed: 100,              // Duration between two frames in ms
  images: [                // All images of the set in the right focal length order
    // ...
    {
      src: 'focus-01.jpg', // Image path
      focus: [             // All focus rectangles for this image
        {
          x1: 0.1,         // x1, y1 : Top left point of the sharp zone
          y1: 0.1,
          x2: 0.5,         // x2, y2 : Bottom right point of the sharp zone
          y2: 0.5
        },
        // ...             // Define other sharp zone for this image
      ]
    }
    // ...
  ]
};

var multifocus = new MultiFocus(options);

multifocus.init();

All coordinates x1, y1, x2, y2 should be set in percentage of the width or height of the full sized image.

Sample

Sample

About

This JS library allows the user to produce a "click to focus" image, with a set of pictures taken at all focal length.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published