MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ sample_parametric_curve()

std::vector< glm::vec3 > MayaFlux::Kinesis::sample_parametric_curve ( const std::function< glm::vec3(float)> &  curve,
size_t  samples 
)

Sample parametric curve uniformly in parameter space.

Parameters
curveParametric function: [0,1] → ℝ³
samplesNumber of samples
Returns
Vertices sampled at t_k = k/(N-1) for k ∈ [0, N-1]

Definition at line 370 of file GeometryPrimitives.cpp.

373{
374 if (samples < 2) {
375 samples = 2;
376 }
377
378 std::vector<glm::vec3> vertices;
379 vertices.reserve(samples);
380
381 for (size_t i = 0; i < samples; ++i) {
382 float t = static_cast<float>(i) / static_cast<float>(samples - 1);
383 glm::vec3 position = curve(t);
384
385 vertices.push_back(position);
386 }
387
388 return vertices;
389}
glm::vec3 position

References position.