Layers.js 505 字节
Newer Older
1 2 3 4
/**
 * @author mrdoob / http://mrdoob.com/
 */

M
Mr.doob 已提交
5
function Layers() {
6 7 8

	this.mask = 1;

M
Mr.doob 已提交
9
}
10

11
Object.assign( Layers.prototype, {
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

	set: function ( channel ) {

		this.mask = 1 << channel;

	},

	enable: function ( channel ) {

		this.mask |= 1 << channel;

	},

	toggle: function ( channel ) {

		this.mask ^= 1 << channel;

	},

	disable: function ( channel ) {

		this.mask &= ~ ( 1 << channel );

35 36 37 38 39 40
	},

	test: function ( layers ) {

		return ( this.mask & layers.mask ) !== 0;

41 42
	}

43
} );
R
Rich Harris 已提交
44 45


46
export { Layers };