@shopware-ag/dive
Version:
Shopware Spatial Framework
21 lines (19 loc) • 739 B
text/typescript
import { Vector3 } from 'three';
import signedAngleTo from '../signedAngleTo';
describe('dive/math/signedAngleTo', () => {
it('should signedAngleTo', () => {
const planeNormal = new Vector3(0, 0, 1);
const a = new Vector3(1, 0, 0);
expect(signedAngleTo(a, new Vector3(1, 0, 0), planeNormal)).toBe(0);
expect(signedAngleTo(a, new Vector3(0, 1, 0), planeNormal)).toBe(
Math.PI / 2,
);
expect(signedAngleTo(a, new Vector3(-1, 0, 0), planeNormal)).toBe(
Math.PI,
);
expect(signedAngleTo(a, new Vector3(0, -1, 0), planeNormal)).toBe(
-Math.PI / 2,
);
expect(signedAngleTo(a, planeNormal, planeNormal)).toBe(0);
});
});