#include "LayerVisualisation.hpp" #include "Range.hpp" #include "utils.hpp" const std::vector &fmri::LayerVisualisation::nodePositions() const { return nodePositions_; } fmri::LayerVisualisation::LayerVisualisation(size_t numNodes) : nodePositions_(numNodes * 3) { } template<> void fmri::LayerVisualisation::initNodePositions(size_t n, float spacing) { nodePositions_.clear(); nodePositions_.reserve(3 * n); for (auto i : Range(n)) { nodePositions_.push_back(0); nodePositions_.push_back(0); nodePositions_.push_back(-spacing * i); } } template<> void fmri::LayerVisualisation::initNodePositions(size_t n, float spacing) { nodePositions_.clear(); nodePositions_.reserve(3 * n); const auto columns = numCols(n); for (auto i : Range(n)) { nodePositions_.push_back(0); nodePositions_.push_back(spacing * (i / columns)); nodePositions_.push_back(-spacing * (i % columns)); } }