├── Projects
├── TeethStudio
│ ├── cmain.txt
│ ├── main.txt
│ ├── color.bmp
│ ├── stripe.bmp
│ ├── stripe2.bmp
│ ├── depth_renderer.frag
│ ├── depth_renderer.vert
│ ├── back_texcoord_render.frag
│ ├── front_texcoord_render.frag
│ ├── curve_render.frag
│ ├── volumeRender.vert
│ ├── curve_render.vert
│ ├── front_texcoord_render.vert
│ ├── back_texcoord_render.vert
│ ├── mat.dmat
│ ├── mesh_render.vert
│ ├── TeethStudio.vcxproj.user
│ └── mesh_render.frag
├── TeethRootRecoAlg
│ ├── TeethRootRecoAlg.aps
│ ├── TeethRootRecoAlg.rc
│ ├── x64
│ │ └── Release
│ │ │ └── TeethRootRecoAlg.res
│ ├── resource.h
│ ├── teethProjection.h
│ └── TeethRootRecoAlg.vcxproj.filters
├── AlgColle
│ └── AlgColle.vcxproj.user
├── DataColle
│ └── DataColle.vcxproj.user
└── HarmonicSegAlg
│ └── HarmonicSegAlg.vcxproj.filters
├── panorama.jpg
├── Data
└── NDT
│ ├── panorama.jpg
│ └── panorama_label.png
├── Src
├── TeethStudio
│ ├── color.bmp
│ ├── imface.qrc
│ ├── stripe.bmp
│ ├── stripe2.bmp
│ ├── panoramic_simulation_test_action.cpp
│ ├── depth_renderer.frag
│ ├── depth_renderer.vert
│ ├── back_texcoord_render.frag
│ ├── front_texcoord_render.frag
│ ├── curve_render.frag
│ ├── panoramic_simulation.cpp
│ ├── volumeRender.vert
│ ├── main.cpp
│ ├── curve_render.vert
│ ├── front_texcoord_render.vert
│ ├── back_texcoord_render.vert
│ ├── hot_key_action.h
│ ├── visual_utils.h
│ ├── panoramic_simulation.h
│ ├── mesh_render.vert
│ ├── camera.h
│ ├── edit_feature_edge_action.h
│ ├── panoramic_simulation.ui
│ ├── camera.cpp
│ ├── manipulation_action.h
│ ├── texture_wrapper.h
│ ├── volume_data_segmentation_action.h
│ ├── visual_utils.cpp
│ ├── scene.h
│ ├── action_manager.h
│ ├── texture_wrapper.cpp
│ ├── teeth_reconstruction_action.h
│ ├── ui_context.h
│ ├── mesh_render.frag
│ ├── cmodelviewer.h
│ ├── scene_curve_object.h
│ ├── action_base.h
│ ├── panoramic_simulation_test_action.h
│ ├── teeth_reconstruction_test_action.h
│ ├── harmonic_field_segmentation_action.h
│ ├── scene_mesh_object.h
│ ├── imface_window.h
│ ├── ui_context.cpp
│ ├── volume_data_segmentation_action.cpp
│ ├── panoramic_image_registration.h
│ ├── scene_volume_object.h
│ ├── cmodelviewer.cpp
│ ├── scene.cpp
│ ├── hot_key_action.cpp
│ └── cvmatandqimage.h
├── AlgColle
│ ├── non_rigid_icp.h
│ ├── image_base_alg.cpp
│ ├── panoramic_alg.cpp
│ ├── shape_deformation.cpp
│ ├── prereq.h
│ ├── panoramic_alg.h
│ ├── linear_algebra_alg.h
│ ├── rigid_icp.h
│ ├── shape_deformation.h
│ ├── linear_algebra_alg.cpp
│ ├── image_base_alg.h
│ ├── cgal_arap_deform.h
│ ├── morphlogic_operation.h
│ ├── correspondence_builder.h
│ ├── arap_deform.h
│ ├── cgal_arap_deform.cpp
│ ├── numerical_base_alg.h
│ ├── rigid_icp.cpp
│ ├── morph_skel_dental_mesh_seg.h
│ ├── curve_base_alg.h
│ └── arap_deform.cpp
├── TeethRootRecoAlg
│ ├── dental_template_fitting.cpp
│ ├── prereq.h
│ ├── dental_template_fitting.h
│ ├── panoramic_fitting.h
│ └── ndt_registration.h
├── AdditionalLibs
│ ├── XWGeodesic
│ │ ├── Parameters.h
│ │ ├── ModelWrapper.cpp
│ │ ├── ModelWrapper.h
│ │ ├── Extremity_Point_Utils.h
│ │ ├── xw_geodesic_wrapper.h
│ │ ├── ComputeGeodesics.cpp
│ │ ├── ICH_WindowFiltering.h
│ │ ├── Xin_Wang.h
│ │ ├── Extremity_Point_Utils.cpp
│ │ ├── FacePoint.h
│ │ ├── ExactDGPMethod.h
│ │ ├── DistanceApproach.h
│ │ ├── EdgePoint.h
│ │ ├── Point3D.cpp
│ │ ├── BaseModel.h
│ │ └── Point3D.h
│ ├── prereq.h
│ ├── libicp
│ │ ├── libicp_wrapper.h
│ │ ├── libicp_wrapper.cpp
│ │ ├── icpPointToPoint.h
│ │ ├── icpPointToPlane.h
│ │ ├── demo.cpp
│ │ ├── icp.cpp
│ │ └── icp.h
│ ├── obb
│ │ ├── cpqp_obb_wrapper.h
│ │ ├── Build.h
│ │ ├── Tri.h
│ │ ├── GetTime.h
│ │ ├── TriDist.h
│ │ ├── BV.h
│ │ └── cpqp_obb_wrapper.cpp
│ └── lbfgs
│ │ ├── Non_Linear_Optimization.h
│ │ ├── Non_Linear_Optimization.cpp
│ │ └── arithmetic_ansi.h
├── DataColle
│ ├── custom_itk_type.h
│ ├── prereq.h
│ ├── geodesic_type.h
│ ├── obb_type.h
│ ├── base_object.h
│ ├── geo_primit.cpp
│ ├── aux_geo_utils.h
│ ├── geo_primit.h
│ ├── data_io.h
│ ├── curve_object.h
│ ├── volume_data_object.h
│ ├── teeth_template_object.h
│ ├── geodesic_type.cpp
│ ├── curve_object.cpp
│ ├── base_object.cpp
│ ├── cgal_igl_converter.h
│ ├── volume_data_object.cpp
│ ├── custom_openmesh_type.h
│ ├── data_pool.h
│ ├── aabb_type.h
│ ├── Polyhedron_type.h
│ ├── teeth_template_object.cpp
│ ├── mesh_object.h
│ ├── Polyhedron_type_fwd.h
│ └── rplyfile.h
└── HarmonicSegAlg
│ ├── prereq.h
│ └── harmonic_field.h
├── shortcut key.txt
├── .gitignore
└── README.md
/Projects/TeethStudio/cmain.txt:
--------------------------------------------------------------------------------
1 | 1
--------------------------------------------------------------------------------
/Projects/TeethStudio/main.txt:
--------------------------------------------------------------------------------
1 | 1
--------------------------------------------------------------------------------
/panorama.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/panorama.jpg
--------------------------------------------------------------------------------
/Data/NDT/panorama.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Data/NDT/panorama.jpg
--------------------------------------------------------------------------------
/Data/NDT/panorama_label.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Data/NDT/panorama_label.png
--------------------------------------------------------------------------------
/Src/TeethStudio/color.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Src/TeethStudio/color.bmp
--------------------------------------------------------------------------------
/Src/TeethStudio/imface.qrc:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Src/TeethStudio/stripe.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Src/TeethStudio/stripe.bmp
--------------------------------------------------------------------------------
/Src/TeethStudio/stripe2.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Src/TeethStudio/stripe2.bmp
--------------------------------------------------------------------------------
/Src/AlgColle/non_rigid_icp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Src/AlgColle/non_rigid_icp.h
--------------------------------------------------------------------------------
/Projects/TeethStudio/color.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Projects/TeethStudio/color.bmp
--------------------------------------------------------------------------------
/Projects/TeethStudio/stripe.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Projects/TeethStudio/stripe.bmp
--------------------------------------------------------------------------------
/Projects/TeethStudio/stripe2.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Projects/TeethStudio/stripe2.bmp
--------------------------------------------------------------------------------
/Src/AlgColle/image_base_alg.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Src/AlgColle/image_base_alg.cpp
--------------------------------------------------------------------------------
/Projects/TeethRootRecoAlg/TeethRootRecoAlg.aps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Projects/TeethRootRecoAlg/TeethRootRecoAlg.aps
--------------------------------------------------------------------------------
/Projects/TeethRootRecoAlg/TeethRootRecoAlg.rc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Projects/TeethRootRecoAlg/TeethRootRecoAlg.rc
--------------------------------------------------------------------------------
/Src/TeethRootRecoAlg/dental_template_fitting.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Src/TeethRootRecoAlg/dental_template_fitting.cpp
--------------------------------------------------------------------------------
/Src/TeethStudio/panoramic_simulation_test_action.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Src/TeethStudio/panoramic_simulation_test_action.cpp
--------------------------------------------------------------------------------
/Src/TeethStudio/depth_renderer.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 | varying vec4 v_pos;
3 | void main()
4 | {
5 |
6 |
7 | gl_FragColor.r=gl_FragCoord.z/gl_FragCoord.w;
8 |
9 | }
--------------------------------------------------------------------------------
/Projects/TeethRootRecoAlg/x64/Release/TeethRootRecoAlg.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chinacui/teethdemo/HEAD/Projects/TeethRootRecoAlg/x64/Release/TeethRootRecoAlg.res
--------------------------------------------------------------------------------
/Projects/TeethStudio/depth_renderer.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 | varying vec4 v_pos;
3 | void main()
4 | {
5 |
6 |
7 | gl_FragColor.r=gl_FragCoord.z/gl_FragCoord.w;
8 |
9 | }
--------------------------------------------------------------------------------
/Src/AdditionalLibs/XWGeodesic/Parameters.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | const double RateOfNormalShift = 2e-3;
3 | const double AngleTolerance = 8e-3;
4 | const double LengthTolerance = 1.2e-6;
--------------------------------------------------------------------------------
/Src/AlgColle/panoramic_alg.cpp:
--------------------------------------------------------------------------------
1 | #include"panoramic_alg.h"
2 | bool CPanoramicAlg::ComputePanoramicImageOfToothMesh(COpenMeshT&tooth_mesh, cv::Mat &res_img)
3 | {
4 | return true;
5 | }
--------------------------------------------------------------------------------
/Src/AlgColle/shape_deformation.cpp:
--------------------------------------------------------------------------------
1 | #include"shape_deformation.h"
2 |
3 | CArapShapeDeformation::CArapShapeDeformation(CMeshObject *meshobj)
4 | {
5 | //igl::arap_precomputation()
6 | }
--------------------------------------------------------------------------------
/Src/TeethStudio/depth_renderer.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 | varying vec4 v_pos;
3 | void main() {
4 | gl_Position = projectionMatrix *modelViewMatrix*vec4(position,1.0);
5 | v_pos=gl_Position;
6 |
7 | }
--------------------------------------------------------------------------------
/Projects/TeethStudio/depth_renderer.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 | varying vec4 v_pos;
3 | void main() {
4 | gl_Position = projectionMatrix *modelViewMatrix*vec4(position,1.0);
5 | v_pos=gl_Position;
6 |
7 | }
--------------------------------------------------------------------------------
/Projects/AlgColle/AlgColle.vcxproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Projects/DataColle/DataColle.vcxproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Src/TeethStudio/back_texcoord_render.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 | varying vec3 v_texCoord;
3 |
4 | void main()
5 | {
6 |
7 | gl_FragColor.rgb=v_texCoord;
8 | gl_FragColor.a=gl_FragCoord.z/gl_FragCoord.w;
9 |
10 | }
--------------------------------------------------------------------------------
/Src/TeethStudio/front_texcoord_render.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 | varying vec3 v_texCoord;
3 |
4 | void main()
5 | {
6 |
7 | gl_FragColor.rgb=v_texCoord;
8 | gl_FragColor.a=gl_FragCoord.z/gl_FragCoord.w;
9 |
10 | }
--------------------------------------------------------------------------------
/Projects/TeethStudio/back_texcoord_render.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 | varying vec3 v_texCoord;
3 |
4 | void main()
5 | {
6 |
7 | gl_FragColor.rgb=v_texCoord;
8 | gl_FragColor.a=gl_FragCoord.z/gl_FragCoord.w;
9 |
10 | }
--------------------------------------------------------------------------------
/Projects/TeethStudio/front_texcoord_render.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 | varying vec3 v_texCoord;
3 |
4 | void main()
5 | {
6 |
7 | gl_FragColor.rgb=v_texCoord;
8 | gl_FragColor.a=gl_FragCoord.z/gl_FragCoord.w;
9 |
10 | }
--------------------------------------------------------------------------------
/Src/AdditionalLibs/XWGeodesic/ModelWrapper.cpp:
--------------------------------------------------------------------------------
1 | #include"ModelWrapper.h"
2 |
3 | void ModelWrapper::setMesh(std::vector& vertexs, std::vector&faces)
4 | {
5 | m_Verts = vertexs;
6 | m_Faces = faces;
7 |
8 | }
--------------------------------------------------------------------------------
/Src/DataColle/custom_itk_type.h:
--------------------------------------------------------------------------------
1 | #ifndef CCUSTOM_ITK_TYPE_H
2 | #define CCUSTOM_ITK_TYPE_H
3 | #include "prereq.h"
4 | #include "itkImage.h"
5 | #include"itkRGBPixel.h"
6 | typedef itk::Image ItkVolumeDataType;
7 |
8 | #endif
9 |
--------------------------------------------------------------------------------
/Src/TeethStudio/curve_render.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | varying vec3 v_color;
4 |
5 |
6 |
7 | void main(void)
8 | {
9 |
10 |
11 | vec4 vcolor=vec4(v_color.x,v_color.y,v_color.z,1.0);;
12 | gl_FragColor = vcolor;
13 |
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Projects/TeethStudio/curve_render.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | varying vec3 v_color;
4 |
5 |
6 |
7 | void main(void)
8 | {
9 |
10 |
11 | vec4 vcolor=vec4(v_color.x,v_color.y,v_color.z,1.0);;
12 | gl_FragColor = vcolor;
13 |
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Src/AdditionalLibs/XWGeodesic/ModelWrapper.h:
--------------------------------------------------------------------------------
1 | #ifndef MODEL_WRAPPER_H
2 | #define MODEL_WRAPPER_H
3 | #include"BaseModel.h"
4 | class ModelWrapper:public CBaseModel
5 | {
6 | public:
7 | void setMesh(std::vector& vertexs, std::vector&faces);
8 | };
9 | #endif
--------------------------------------------------------------------------------
/Src/TeethStudio/panoramic_simulation.cpp:
--------------------------------------------------------------------------------
1 | #include "panoramic_simulation.h"
2 |
3 | PanoramicSimulation::PanoramicSimulation(QWidget *parent)
4 | : QWidget(parent)
5 | {
6 | ui.setupUi(this);
7 | }
8 |
9 | PanoramicSimulation::~PanoramicSimulation()
10 | {
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/Src/TeethStudio/volumeRender.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | attribute highp vec4 a_pos;
4 | varying vec4 v_pos;
5 |
6 | uniform highp mat4 mvp_matrix;
7 | uniform highp mat4 mv_matrix;
8 |
9 |
10 | void main() {
11 |
12 | gl_Position = mvp_matrix*a_pos;
13 | v_pos=gl_Position;
14 |
15 | }
--------------------------------------------------------------------------------
/Projects/TeethStudio/volumeRender.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | attribute highp vec4 a_pos;
4 | varying vec4 v_pos;
5 |
6 | uniform highp mat4 mvp_matrix;
7 | uniform highp mat4 mv_matrix;
8 |
9 |
10 | void main() {
11 |
12 | gl_Position = mvp_matrix*a_pos;
13 | v_pos=gl_Position;
14 |
15 | }
--------------------------------------------------------------------------------
/Src/TeethStudio/main.cpp:
--------------------------------------------------------------------------------
1 | #include "imface_window.h"
2 | #include
3 | #include"ui_context.h"
4 | int main(int argc, char *argv[])
5 | {
6 | QApplication a(argc, argv);
7 | a.setAttribute(Qt::AA_X11InitThreads);
8 |
9 | CUIContext::Init();
10 |
11 | return a.exec();
12 | }
13 |
--------------------------------------------------------------------------------
/Src/TeethStudio/curve_render.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 | attribute highp vec4 a_pos;
3 | attribute highp vec3 a_color;
4 | varying vec3 v_color;
5 |
6 | uniform highp mat4 mvp_matrix;
7 | uniform highp mat4 mv_matrix;
8 |
9 | void main(void)
10 | {
11 |
12 | gl_Position = mvp_matrix * a_pos;
13 | v_color=a_color;
14 | }
--------------------------------------------------------------------------------
/Projects/TeethStudio/curve_render.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 | attribute highp vec4 a_pos;
3 | attribute highp vec3 a_color;
4 | varying vec3 v_color;
5 |
6 | uniform highp mat4 mvp_matrix;
7 | uniform highp mat4 mv_matrix;
8 |
9 | void main(void)
10 | {
11 |
12 | gl_Position = mvp_matrix * a_pos;
13 | v_color=a_color;
14 | }
--------------------------------------------------------------------------------
/Src/DataColle/prereq.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #pragma warning(disable: 4251)
3 | #ifdef DATACOLLE_EXPORTS
4 | #define DATACOLLE_API extern "C" __declspec(dllexport)
5 | #define DATACOLLE_CLASS __declspec(dllexport)
6 | #else
7 | #define DATACOLLE_API extern "C" __declspec(dllimport)
8 | #define DATACOLLE_CLASS __declspec(dllimport)
9 | #endif
--------------------------------------------------------------------------------
/Src/TeethStudio/front_texcoord_render.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 | attribute highp vec4 a_pos;
3 | attribute vec3 a_texcoords;
4 | varying vec3 v_texCoord;
5 |
6 | uniform highp mat4 mvp_matrix;
7 | uniform highp mat4 mv_matrix;
8 | void main() {
9 | gl_Position = mvp_matrix*a_pos;
10 | v_texCoord=a_texcoords;
11 |
12 |
13 | }
--------------------------------------------------------------------------------
/shortcut key.txt:
--------------------------------------------------------------------------------
1 | Key_V:switch to volume segmentation action
2 |
3 | Key_T:switch to volume CPanoramicSimulationTest action
4 |
5 | Key_H:switch to harmonic action
6 |
7 | Key_P:switch to panoramia registration test action
8 |
9 | Key_K:switch to panoramia registration action
10 |
11 | Key_S;panoramic image registration
--------------------------------------------------------------------------------
/Projects/TeethStudio/front_texcoord_render.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 | attribute highp vec4 a_pos;
3 | attribute vec3 a_texcoords;
4 | varying vec3 v_texCoord;
5 |
6 | uniform highp mat4 mvp_matrix;
7 | uniform highp mat4 mv_matrix;
8 | void main() {
9 | gl_Position = mvp_matrix*a_pos;
10 | v_texCoord=a_texcoords;
11 |
12 |
13 | }
--------------------------------------------------------------------------------
/Src/AlgColle/prereq.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #pragma warning(disable: 4251)
3 |
4 | #ifdef ALGCOLLE_EXPORTS
5 | #define ALGCOLLE_API extern "C" __declspec(dllexport)
6 | #define ALGCOLLE_CLASS __declspec(dllexport)
7 | #else
8 | #define ALGCOLLE_API extern "C" __declspec(dllimport)
9 | #define ALGCOLLE_CLASS __declspec(dllimport)
10 | #endif
--------------------------------------------------------------------------------
/Src/TeethStudio/back_texcoord_render.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 | attribute highp vec4 a_pos;
3 | attribute vec3 a_texcoords;
4 | varying vec3 v_texCoord;
5 |
6 | uniform highp mat4 mvp_matrix;
7 | uniform highp mat4 mv_matrix;
8 | void main() {
9 | gl_Position = mvp_matrix*a_pos;
10 | v_texCoord=a_texcoords;
11 |
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Projects/TeethStudio/back_texcoord_render.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 | attribute highp vec4 a_pos;
3 | attribute vec3 a_texcoords;
4 | varying vec3 v_texCoord;
5 |
6 | uniform highp mat4 mvp_matrix;
7 | uniform highp mat4 mv_matrix;
8 | void main() {
9 | gl_Position = mvp_matrix*a_pos;
10 | v_texCoord=a_texcoords;
11 |
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Projects/TeethStudio/mat.dmat:
--------------------------------------------------------------------------------
1 | 4 4
2 | -0.21101855664691951
3 | 0.97664535413207543
4 | -0.040435392948313664
5 | 0
6 | 0.16505351740393778
7 | -0.0051716854533970817
8 | -0.9862710530387474
9 | -0
10 | -0.96344616099875524
11 | -0.21479549790860336
12 | -0.16010742935590574
13 | 0
14 | -4.353768911564126
15 | 2.9674216261449859
16 | 5.4991831978632568
17 | 1
18 |
--------------------------------------------------------------------------------
/Src/AdditionalLibs/prereq.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #pragma warning(disable: 4251)
3 |
4 | #ifdef ADDITIONALLIBS_EXPORTS
5 | #define ADDITIONALLIBS_API extern "C" __declspec(dllexport)
6 | #define ADDITIONALLIBS_CLASS __declspec(dllexport)
7 | #else
8 | #define ADDITIONALLIBS_API extern "C" __declspec(dllimport)
9 | #define ADDITIONALLIBS_CLASS __declspec(dllimport)
10 | #endif
--------------------------------------------------------------------------------
/Src/HarmonicSegAlg/prereq.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #pragma warning(disable: 4251)
3 |
4 | #ifdef HARMONICSEGALG_EXPORTS
5 | #define HARMONICSEGALG_API extern "C" __declspec(dllexport)
6 | #define HARMONICSEGALG_CLASS __declspec(dllexport)
7 | #else
8 | #define HARMONICSEGALG_API extern "C" __declspec(dllimport)
9 | #define HARMONICSEGALG_CLASS __declspec(dllimport)
10 | #endif
--------------------------------------------------------------------------------
/Src/TeethStudio/hot_key_action.h:
--------------------------------------------------------------------------------
1 | #ifndef CHOT_KEY_ACTION_H
2 | #define CHOT_KEY_ACTION_H
3 | #include"action_base.h"
4 | class CModelViewer;
5 | class CHotKeyAction:public CActionBase
6 | {
7 |
8 | protected:
9 |
10 | void KeyPressEvent(QKeyEvent *e);
11 | void KeyReleaseEvent(QKeyEvent *e);
12 | public:
13 | CHotKeyAction() { type_ = Common; }
14 | };
15 | #endif
--------------------------------------------------------------------------------
/Src/TeethRootRecoAlg/prereq.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #pragma warning(disable: 4251)
3 |
4 | #ifdef TEETHROOTRECOALG_EXPORTS
5 | #define TEETHROOTRECOALG_API extern "C" __declspec(dllexport)
6 | #define TEETHROOTRECOALG_CLASS __declspec(dllexport)
7 | #else
8 | #define TEETHROOTRECOALG_API extern "C" __declspec(dllimport)
9 | #define TEETHROOTRECOALG_CLASS __declspec(dllimport)
10 | #endif
--------------------------------------------------------------------------------
/Src/AlgColle/panoramic_alg.h:
--------------------------------------------------------------------------------
1 | #ifndef CPANORAMIC_ALG_H
2 | #define CPANORAMIC_ALG_H
3 | #include"../DataColle/custom_openmesh_type.h"
4 | #include"../DataColle/mesh_object.h"
5 | #include"../DataColle/data_pool.h"
6 | #include
7 | class CPanoramicAlg
8 | {
9 | public:
10 | static bool ComputePanoramicImageOfToothMesh(COpenMeshT&tooth_mesh, cv::Mat &res_img);
11 | };
12 | #endif
--------------------------------------------------------------------------------
/Src/AlgColle/linear_algebra_alg.h:
--------------------------------------------------------------------------------
1 | #ifndef CLINEAR_ALGEBRA_ALG_H
2 | #define CLINEAR_ALGEBRA_ALG_H
3 | #include"prereq.h"
4 | #include
5 | #include
6 | #include
7 | class ClinearAlgebraAlg
8 | {
9 | public:
10 | static Eigen::VectorXd SolveLdlt(const Eigen::SparseMatrix& CoeffMat, const Eigen::VectorXd& right, double pinvtoler);
11 |
12 | };
13 | #endif
--------------------------------------------------------------------------------
/Src/DataColle/geodesic_type.h:
--------------------------------------------------------------------------------
1 | #ifndef CGEODESIC_TYPE_H
2 | #define CGEODESIC_TYPE_H
3 | #include"../AdditionalLibs/XWGeodesic/xw_geodesic_wrapper.h"
4 | #include"custom_openmesh_type.h"
5 | class CGeodesicModel /*:public CRichModel*/
6 | {
7 | protected:
8 | COpenMeshT *mesh_=NULL;
9 | public:
10 | CGeodesicModel(COpenMeshT *mesh);
11 | void Update();
12 | ~CGeodesicModel() {}
13 | };
14 | #endif
--------------------------------------------------------------------------------
/Src/AlgColle/rigid_icp.h:
--------------------------------------------------------------------------------
1 | #ifndef CRIGID_ICP_H
2 | #define CRIGID_ICP_H
3 | #include"prereq.h"
4 | #include
5 | #include
6 | #include"../DataColle/mesh_object.h"
7 | class ALGCOLLE_CLASS CRigidIcp
8 | {
9 | protected:
10 | COpenMeshT* src_mesh_, *tgt_mesh_;
11 | public:
12 | CRigidIcp(COpenMeshT* src_mesh);
13 | void FitTarget(COpenMeshT *target_mesh);
14 | };
15 |
16 | #endif
--------------------------------------------------------------------------------
/Src/TeethStudio/visual_utils.h:
--------------------------------------------------------------------------------
1 | #ifndef CVISUAL_UTILS_H
2 | #define CVISUAL_UTILS_H
3 | #include"../DataColle/mesh_object.h"
4 | #include
5 | #include
6 | #include