@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
23 lines (22 loc) • 962 B
TypeScript
import { Vector3 } from 'three';
import { Mesh } from 'three';
type RandomFuncWithoutSeed = () => number;
type RandomFuncWithSeed = (index: number) => number;
type RandomFunc = RandomFuncWithoutSeed | RandomFuncWithSeed;
export declare class MeshSurfaceSampler {
private additionalAttributeNames;
private geometry;
private randomFunction;
private positionAttribute;
private additionalAttributes;
private weightAttribute;
private distribution;
constructor(mesh: Mesh, additionalAttributeNames: string[]);
setWeightAttribute(name: string): this;
build(): this;
setRandomGenerator(randomFunction: RandomFunc): this;
sample(index: number, targetPosition: Vector3, targetNormal: Vector3, targetAdditionalVectors?: Vector3[]): this;
binarySearch(x: number): number;
sampleFace(i: number, faceIndex: number, targetPosition: Vector3, targetNormal: Vector3, targetAdditionalVectors?: Vector3[]): this;
}
export {};