4#include <aims/getopt/getopt2.h>
5#include <aims/mesh/texture.h>
6#include <aims/mesh/curv.h>
7#include <aims/data/data_g.h>
8#include <aims/mesh/surfaceOperation.h>
32 SubjectPaths ( std::string _meshPath, std::string _texPath, std::string _latPath =
"", std::string _lonPath =
"" )
50 std::map<unsigned, std::set< std::pair<unsigned,float> > >
weightLapl;
69 SubjectData ( std::string
id, std::string meshPath, std::string texPath, std::string latPath =
"", std::string lonPath =
"" ) {
71 paths.meshPath = meshPath;
72 paths.texPath = texPath;
73 paths.latPath = latPath;
74 paths.lonPath = lonPath;
85 std::cout <<
" mesh : " << this->mesh->
vertex().size() <<
" vertices" << std::endl;
86 std::cout <<
" tex : " << this->tex->
nItem() <<
" values" << std::endl;
89 this->coordinates =
RAW_3D;
90 if ( computeWeights ) {
93 std::cout <<
" weights : " << this->weightLapl.size() <<
" weights" << std::endl;
96 if ( computeNeighbours ) {
98 mesh[0] = *(this->mesh);
101 std::cout <<
" neighbours : " << this->neighbours.size() <<
" sets" << std::endl;
110 this->weightLapl = weights;
118 std::cout <<
" lat : " << this->lat->
nItem() <<
" values" << std::endl;
121 if ( this->lon != NULL ) {
123 std::cout <<
" lon : " << this->lon->
nItem() <<
" values" << std::endl;
137 this->coordinates =
LAT_1D;
144 public std::map< std::string, SubjectData *> {
148 std::vector < AimsSurfaceTriangle >
meshes;
const std::vector< Point3df > & vertex() const
void readData(bool verbose=true)
std::vector< Graph * > graphs
std::vector< AimsSurfaceTriangle > meshes
std::map< std::string, uint > subjects_id
std::vector< TimeTexture< float > > textures
std::vector< TimeTexture< float > > longitudes
std::vector< TimeTexture< float > > latitudes
SubjectData(SubjectData &subject)
SubjectData(std::string id="UNKNOWN_SUBJECT_ID")
AimsSurface< 3, Void > * mesh
void storeData(AimsSurface< 3, Void > *mesh, Texture< float > *tex, std::map< unsigned, std::set< std::pair< unsigned, float > > > &weights, bool verbose=true)
std::map< unsigned, std::set< std::pair< unsigned, float > > > weightLapl
SubjectData(std::string id, std::string meshPath, std::string texPath, std::string latPath="", std::string lonPath="")
void storeCoordinates(Texture< float > *lat, Texture< float > *lon=NULL, bool verbose=true)
std::vector< std::set< uint > > neighbours
void storeData(AimsSurface< 3, Void > *mesh, Texture< float > *tex, bool computeWeights=true, bool computeNeighbours=true, bool verbose=true)
SubjectPaths(std::string _meshPath, std::string _texPath, std::string _latPath="", std::string _lonPath="")
SubjectPaths(SubjectPaths &s)
static std::vector< std::set< uint > > surfaceNeighbours(const AimsSurface< D, T > &surf)
std::map< unsigned, std::set< std::pair< unsigned, float > > > AimsMeshWeightFiniteElementLaplacian(const AimsSurface< 3, Void > &mesh, const float Wmax)
AIMSDATA_API AimsTimeSurface< 3, Void > AimsSurfaceTriangle