Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
OpenFlipper-Free
OpenFlipper-Free
Commits
c9b4db16
Commit
c9b4db16
authored
Dec 10, 2015
by
Jan Möbius
Browse files
Documentation and renamed mean to cog
parent
f6a9889b
Pipeline
#288
passed with stage
Changes
3
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Plugin-AlignMeshes/AlignT.cc
View file @
c9b4db16
...
...
@@ -46,7 +46,7 @@ namespace align{
template
<
class
MeshT
>
void
moveTo
Mean
(
MeshT
&
_mesh
)
{
void
moveTo
COG
(
MeshT
&
_mesh
)
{
ACG
::
Vec3d
mean
(
0.0
);
for
(
typename
MeshT
::
VertexIter
v_it
=
_mesh
.
vertices_begin
();
v_it
!=
_mesh
.
vertices_end
();
++
v_it
)
{
...
...
Plugin-AlignMeshes/AlignT.hh
View file @
c9b4db16
namespace
align
{
/** \brief Move Mesh into center of gravity
*
* @param _mesh Mesh to modify
*/
template
<
class
MeshT
>
void
moveTo
Mean
(
MeshT
&
_mesh
);
void
moveTo
COG
(
MeshT
&
_mesh
);
/** \brief Rotate a mesh such that its largest PCA axis is aligned to x and second largest aligned to y
*
* @param _mesh Mesh to modify
*/
template
<
class
MeshT
>
void
rotate
(
MeshT
&
_mesh
);
/** \brief Move mesh such that its bounding box center is in the origin
*
* @param _mesh Mesh to modify
*/
template
<
class
MeshT
>
void
moveCenterOfBBToOrigin
(
MeshT
&
_mesh
);
/** \brief Scale mesh such that it has length 1 on each separate axis
*
* @param _mesh Mesh to modify
*/
template
<
class
MeshT
>
void
scaleToUnitCubeNonUniform
(
MeshT
&
_mesh
);
/** \brief Scale mesh such that it has length 1 on the largest axis (keeps ratios of axis)
*
* @param _mesh Mesh to modify
*/
template
<
class
MeshT
>
void
scaleToUnitCubeUniform
(
MeshT
&
_mesh
);
...
...
Plugin-AlignMeshes/PluginAlignMeshes.cc
View file @
c9b4db16
...
...
@@ -81,17 +81,17 @@ void PluginAlignMeshes::scaleToUnitCubeNonUniform() {
TriMesh
&
mesh
=
*
PluginFunctions
::
triMesh
(
*
o_it
);
align
::
moveTo
Mean
(
mesh
);
align
::
moveTo
COG
(
mesh
);
align
::
scaleToUnitCubeNonUniform
(
mesh
);
align
::
moveTo
Mean
(
mesh
);
align
::
moveTo
COG
(
mesh
);
}
else
if
(
o_it
->
dataType
()
==
DATA_POLY_MESH
)
{
PolyMesh
&
mesh
=
*
PluginFunctions
::
polyMesh
(
*
o_it
);
align
::
moveTo
Mean
(
mesh
);
align
::
moveTo
COG
(
mesh
);
align
::
scaleToUnitCubeNonUniform
(
mesh
);
align
::
moveTo
Mean
(
mesh
);
align
::
moveTo
COG
(
mesh
);
}
...
...
@@ -110,17 +110,17 @@ void PluginAlignMeshes::scaleToUnitCubeUniform() {
TriMesh
&
mesh
=
*
PluginFunctions
::
triMesh
(
*
o_it
);
align
::
moveTo
Mean
(
mesh
);
align
::
moveTo
COG
(
mesh
);
align
::
scaleToUnitCubeUniform
(
mesh
);
align
::
moveTo
Mean
(
mesh
);
align
::
moveTo
COG
(
mesh
);
}
else
if
(
o_it
->
dataType
()
==
DATA_POLY_MESH
)
{
PolyMesh
&
mesh
=
*
PluginFunctions
::
polyMesh
(
*
o_it
);
align
::
moveTo
Mean
(
mesh
);
align
::
moveTo
COG
(
mesh
);
align
::
scaleToUnitCubeUniform
(
mesh
);
align
::
moveTo
Mean
(
mesh
);
align
::
moveTo
COG
(
mesh
);
}
...
...
@@ -139,14 +139,14 @@ void PluginAlignMeshes::alignMeshes() {
TriMesh
&
mesh
=
*
PluginFunctions
::
triMesh
(
*
o_it
);
align
::
moveTo
Mean
(
mesh
);
align
::
moveTo
COG
(
mesh
);
align
::
rotate
(
mesh
);
}
else
if
(
o_it
->
dataType
()
==
DATA_POLY_MESH
)
{
PolyMesh
&
mesh
=
*
PluginFunctions
::
polyMesh
(
*
o_it
);
align
::
moveTo
Mean
(
mesh
);
align
::
moveTo
COG
(
mesh
);
align
::
rotate
(
mesh
);
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment