21#ifndef ABTRACT_FIELD_H_
22#define ABTRACT_FIELD_H_
39 virtual float at(
float proportion) = 0;
48 void populate(T* array,
size_t size,
bool wrap =
false) {
55 proportion = step * 0.5f;
58 step = 1.0f / min(size-1, 1);
63 for (
size_t i = 0; i < size; i++, proportion += step) {
64 _write(array[i],
at(proportion));
72 inline void _write(T& dst,
float src) { src >> dst; }
75 inline void _write(
float& dst,
float src) { dst = src; }
Definition AbstractField.h:28
void populate(T *array, size_t size, bool wrap=false)
Fills an array with values from this field.
Definition AbstractField.h:48
virtual float at(float proportion)=0
Returns value at given proportion in [0, 1].
A generic class representing a unit in the system.
Definition PqCore.h:335