playcanvas
Version:
Open-source WebGL/WebGPU 3D engine for the web
22 lines (21 loc) • 910 B
TypeScript
/**
* Sampling kernels.
*
* @category Math
*/
export class Kernel {
/**
* Generate a set of points distributed in a series of concentric rings around the origin. The
* spacing between points is determined by the number of points in the first ring, and subsequent
* rings maintain this spacing by adjusting their number of points accordingly.
*
* @param {number} numRings - The number of concentric rings to generate.
* @param {number} numPoints - The number of points in the first ring.
* @returns {number[]} An array where each point is represented by two consecutive numbers (x, y).
* @example
* // Generate a kernel with 3 rings and 8 points in the first ring
* const kernel = pc.Kernel.concentric(3, 8);
* // kernel is a flat array: [x0, y0, x1, y1, x2, y2, ...]
*/
static concentric(numRings: number, numPoints: number): number[];
}