Newer
Older
samuel.hayden
committed
#pragma once
#include <vector>
#include "gp_Pnt.hxx"
/* Supported lattice types */
enum LatticeType
{
SimpleUniform = 0,
SimpleNonuniform,
GenericUniform,
GenericNonuniform,
ProjectedCartesian,
};
/* Data structs for each type of supported lattice */
struct SimpleLatticeData
{
size_t nx = 0, ny = 0, nz = 0;
double dx = 0.0, dy = 0.0, dz = 0.0;
std::vector<double> radii;
};
struct GenericLatticeData
{
double dx = 0.0, dy = 0.0, dz = 0.0;
std::vector<double> radii;
std::vector<gp_Pnt> positions;
};
struct ProjectedLatticeData
{
size_t nx = 0, ny = 0, nz = 0;
double dx = 0.0, dy = 0.0, dz = 0.0;
std::vector<double> radii;
std::vector<gp_Pnt> positions;
};