@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
64 lines (63 loc) • 1.58 kB
JavaScript
;
import { _matchArrayLength } from "./_ArrayUtils";
import { NamedFunction3 } from "./_Base";
export class multScalarColor extends NamedFunction3 {
static type() {
return "multScalarColor";
}
func(src, scalar, target) {
return target.copy(src).multiplyScalar(scalar);
}
}
export class multScalarVector2 extends NamedFunction3 {
static type() {
return "multScalarVector2";
}
func(src, scalar, target) {
return target.copy(src).multiplyScalar(scalar);
}
}
export class multScalarVector3 extends NamedFunction3 {
static type() {
return "multScalarVector3";
}
func(src, scalar, target) {
return target.copy(src).multiplyScalar(scalar);
}
}
export class multScalarVector4 extends NamedFunction3 {
static type() {
return "multScalarVector4";
}
func(src, scalar, target) {
return target.copy(src).multiplyScalar(scalar);
}
}
export class multScalarVectorArray extends NamedFunction3 {
static type() {
return "multScalarVectorArray";
}
func(src, scalar, target) {
_matchArrayLength(src, target, () => src[0].clone());
let i = 0;
for (let v of src) {
target[i].copy(v).multiplyScalar(scalar);
i++;
}
return target;
}
}
export class multScalarArrayVectorArray extends NamedFunction3 {
static type() {
return "multScalarArrayVectorArray";
}
func(src, scalar, target) {
_matchArrayLength(src, target, () => src[0].clone());
let i = 0;
for (let v of src) {
target[i].copy(v).multiplyScalar(scalar[i]);
i++;
}
return target;
}
}