Skip to content

mikolalysenko/Arcball

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Arcball

A simple library-agnostic arcball camera in Javascript

Installation

npm install arcball

Example

var ArcballCamera = require('arcball').ArcballCamera;
var camera = new ArcballCamera();

// ... in mouse event handler
camera.update(mouse_x, mouse_y, {
  rotate:   mouse_left_clicked,
  pan:      mouse_right_clicked,
  zoom:     mouse_middle_clicked
});

// ... in rendering loop
var camera_matrix = camera.matrix();

API

ArcballCamera()

The main camera object

ArcballCamera.update(mouse_x, mouse_y, flags)

Updates the camera state using the mouse input. mouse_x and mouse_y are the x/y coordinates of the mouse, flags is an object containing the boolean flags rotate, pan, and zoom which determine how to rotate the camera.

ArcballCamera.matrix()

Returns a 4x4 homogeneous transformation matrix representing the position of the object relative to the arcball camera.

Acknowledgements

(c) 2013 Mikola Lysenko (mikolalysenko@gmail.com). MIT License

About

A simple library-agnostic arcball camera in Javascript

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published