DGtal 1.4.0
|
#include <iostream>
#include <string>
#include <DGtal/base/Common.h>
#include <DGtal/helpers/StdDefs.h>
#include <DGtal/helpers/Shortcuts.h>
#include <DGtal/helpers/ShortcutsGeometry.h>
#include <DGtal/shapes/SurfaceMesh.h>
#include <DGtal/dec/PolygonalCalculus.h>
#include <DGtal/dec/GeodesicsInHeat.h>
#include <polyscope/polyscope.h>
#include <polyscope/surface_mesh.h>
#include <polyscope/pick.h>
#include "ConfigExamples.h"
#include <Eigen/Dense>
#include <Eigen/Sparse>
Go to the source code of this file.
Typedefs | |
typedef Shortcuts< Z3i::KSpace > | SH3 |
typedef ShortcutsGeometry< Z3i::KSpace > | SHG3 |
typedef SurfaceMesh< RealPoint, RealVector > | SurfMesh |
typedef SurfMesh::Face | Face |
typedef SurfMesh::Vertex | Vertex |
typedef PolygonalCalculus< SH3::RealPoint, SH3::RealVector > | PolyCalculus |
Functions | |
void | precompute () |
void | picksource (int v_idx) |
void | computeGeodesics () |
void | myCallback () |
int | main () |
Variables | |
polyscope::SurfaceMesh * | psMesh |
SurfMesh | surfmesh |
float | dt = 2.0 |
float | Lambda = 0.05 |
bool | Mixed = false |
GeodesicsInHeat< PolyCalculus > * | heat |
PolyCalculus * | calculus |
int | vertex_idx = -1 |
int | face_idx = -1 |
int | edge_idx = -1 |
bool | isPrecomputed =false |
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
This file is part of the DGtal library.
Definition in file dgtalCalculus-halfsphere.cpp.
typedef SurfMesh::Face Face |
Definition at line 54 of file dgtalCalculus-halfsphere.cpp.
Definition at line 56 of file dgtalCalculus-halfsphere.cpp.
typedef Shortcuts<Z3i::KSpace> SH3 |
Definition at line 50 of file dgtalCalculus-halfsphere.cpp.
typedef ShortcutsGeometry<Z3i::KSpace> SHG3 |
Definition at line 51 of file dgtalCalculus-halfsphere.cpp.
typedef SurfaceMesh< RealPoint, RealVector > SurfMesh |
Definition at line 53 of file dgtalCalculus-halfsphere.cpp.
typedef SurfMesh::Vertex Vertex |
Definition at line 55 of file dgtalCalculus-halfsphere.cpp.
void computeGeodesics | ( | ) |
Definition at line 97 of file dgtalCalculus-halfsphere.cpp.
Referenced by myCallback().
int main | ( | void | ) |
Definition at line 154 of file dgtalCalculus-halfsphere.cpp.
References binary_image, DGtal::SurfaceMesh< TRealPoint, TRealVector >::computeNonManifoldEdges(), DGtal::Shortcuts< TKSpace >::defaultParameters(), DGtal::ShortcutsGeometry< TKSpace >::defaultParameters(), DGtal::Shortcuts< TKSpace >::getKSpace(), DGtal::ShortcutsGeometry< TKSpace >::getNormalVectors(), DGtal::Shortcuts< TKSpace >::getSurfelRange(), K, DGtal::Shortcuts< TKSpace >::makeBinaryImage(), DGtal::Shortcuts< TKSpace >::makeDigitalSurface(), DGtal::Shortcuts< TKSpace >::makeDigitizedImplicitShape3D(), DGtal::Shortcuts< TKSpace >::makeImplicitShape3D(), DGtal::Shortcuts< TKSpace >::makePrimalSurfaceMesh(), myCallback(), DGtal::ShortcutsGeometry< TKSpace >::parametersGeometryEstimation(), psMesh, DGtal::SurfaceMesh< TRealPoint, TRealVector >::setFaceNormals(), surface, and surfmesh.
void myCallback | ( | ) |
Definition at line 105 of file dgtalCalculus-halfsphere.cpp.
References computeGeodesics(), dt, isPrecomputed, Lambda, Mixed, picksource(), precompute(), and vertex_idx.
Referenced by main().
void picksource | ( | int | v_idx | ) |
Definition at line 90 of file dgtalCalculus-halfsphere.cpp.
Referenced by myCallback().
void precompute | ( | ) |
Definition at line 71 of file dgtalCalculus-halfsphere.cpp.
References DGtal::Trace::beginBlock(), calculus, DGtal::PointVector< dim, TEuclideanRing, TContainer >::dot(), dt, DGtal::Trace::endBlock(), DGtal::SurfaceMesh< TRealPoint, TRealVector >::faceCentroid(), DGtal::SurfaceMesh< TRealPoint, TRealVector >::faceNormal(), heat, Lambda, Mixed, DGtal::SurfaceMesh< TRealPoint, TRealVector >::position(), DGtal::PolygonalCalculus< TRealPoint, TRealVector >::setEmbedder(), surfmesh, and DGtal::trace.
Referenced by myCallback().
PolyCalculus* calculus |
Definition at line 64 of file dgtalCalculus-halfsphere.cpp.
Referenced by precompute().
float dt = 2.0 |
Definition at line 60 of file dgtalCalculus-halfsphere.cpp.
Referenced by myCallback(), and precompute().
int edge_idx = -1 |
Definition at line 67 of file dgtalCalculus-halfsphere.cpp.
int face_idx = -1 |
Definition at line 66 of file dgtalCalculus-halfsphere.cpp.
GeodesicsInHeat<PolyCalculus>* heat |
Definition at line 63 of file dgtalCalculus-halfsphere.cpp.
Referenced by computeGeodesics(), picksource(), and precompute().
bool isPrecomputed =false |
Definition at line 104 of file dgtalCalculus-halfsphere.cpp.
Referenced by myCallback().
float Lambda = 0.05 |
Definition at line 61 of file dgtalCalculus-halfsphere.cpp.
Referenced by myCallback(), and precompute().
bool Mixed = false |
Definition at line 62 of file dgtalCalculus-halfsphere.cpp.
Referenced by myCallback(), and precompute().
polyscope::SurfaceMesh* psMesh |
Definition at line 58 of file dgtalCalculus-halfsphere.cpp.
Referenced by computeGeodesics(), main(), and picksource().
SurfMesh surfmesh |
Definition at line 59 of file dgtalCalculus-halfsphere.cpp.
Referenced by main(), and precompute().
int vertex_idx = -1 |
Definition at line 65 of file dgtalCalculus-halfsphere.cpp.
Referenced by myCallback().