Libs/Analyze/Shape.h
Namespaces
| Name |
|---|
| shapeworks User usage reporting (telemetry) |
Classes
| Name | |
|---|---|
| class | shapeworks::Shape Representation of a single shape/patient/subject. |
| class | shapeworks::Shape::Point TODO: replace this wherever it is used. |
Source code
```cpp
pragma once
include
include
include
include
// studio
include "MeshGroup.h"
include "MeshManager.h"
include "StudioEnums.h"
include "StudioMesh.h"
// shapeworks
include
include
include
namespace shapeworks {
class Shape;
using ShapeHandle = std::shared_ptr
class Shape { public: class Point { public: Point(){}; Point(double _x, double _y, double _z) : x(_x), y(_y), z(_z){}; double x = 0, y = 0, z = 0; };
Shape();
~Shape();
std::string get_display_name();
MeshGroup get_meshes(DisplayMode display_mode, bool wait = false);
void set_annotations(std::vector
void set_mesh_manager(std::shared_ptr
void set_subject(std::shared_ptr
bool is_subject();
std::shared_ptr
bool is_fixed();
bool is_excluded();
void import_original_file(const std::string& filename);
MeshGroup get_original_meshes(bool wait = false);
MeshGroup get_groomed_meshes(bool wait = false);
MeshGroup get_reconstructed_meshes(bool wait = false);
void set_reconstructed_meshes(MeshGroup meshes);
void reset_groomed_mesh();
bool import_global_point_files(std::vector
bool import_local_point_files(std::vector
bool import_landmarks_files(std::vector
bool store_landmarks();
bool import_constraints(std::vector
bool store_constraints();
void set_particles(Particles particles);
Particles get_particles();
void set_particle_transform(vtkSmartPointer
void set_groomed_centroids(const std::vector
void set_alignment_type(int alignment);
Eigen::VectorXd get_global_correspondence_points();
std::vector
Eigen::VectorXd get_local_correspondence_points();
void clear_reconstructed_mesh();
int get_id();
void set_id(int id);
void update_annotations();
std::vector
std::string get_original_filename(); std::string get_original_filename_with_path();
std::string get_groomed_filename(); std::string get_groomed_filename_with_path(int domain);
std::string get_global_point_filename(); std::string get_global_point_filename_with_path();
std::string get_local_point_filename(); std::string get_local_point_filename_with_path();
void set_transform(vtkSmartPointer
bool has_alignment();
vtkSmartPointer
void set_reconstruction_transforms(std::vector
vtkSmartPointer
std::vector
vtkSmartPointer
vtkSmartPointer
void load_feature(DisplayMode display_mode, std::string feature);
std::shared_ptr
std::shared_ptr
Eigen::VectorXd get_point_features(std::string feature);
void set_point_features(std::string feature, Eigen::VectorXd values);
void load_feature_from_scalar_file(std::string filename, std::string feature_name);
void set_override_feature(std::string feature); std::string get_override_feature();
Eigen::MatrixXd& landmarks();
std::vector
Constraints& get_constraints(int domain_id);
bool has_constraints();
bool has_planes();
std::vector
void recompute_original_surface();
void ensure_segmentation();
private:
void generate_meshes(std::vector
static bool import_point_file(std::string filename, Eigen::VectorXd& points);
void apply_feature_to_points(std::string feature, ImageType::Pointer image); void load_feature_from_mesh(std::string feature, MeshHandle mesh);
int id_;
MeshGroup original_meshes_;
MeshGroup groomed_meshes_;
MeshGroup reconstructed_meshes_;
std::vector
std::string override_feature_;
std::vector
std::map
std::shared_ptr
vtkSmartPointer
std::vector
std::vector
std::shared_ptr
Eigen::MatrixXd landmarks_;
std::shared_ptr
std::shared_ptr
std::vector
Updated on 2026-03-31 at 16:02:11 +0000