Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
CGoGN
CGoGN
Commits
a4a69f68
Commit
a4a69f68
authored
Nov 16, 2012
by
Basile Sauvage
Browse files
Merge cgogn.u-strasbg.fr:~vanhoey/CGoGN
parents
6299c0fe
717310f1
Changes
4
Hide whitespace changes
Inline
Side-by-side
include/Algo/Decimation/decimation.h
View file @
a4a69f68
...
...
@@ -62,7 +62,7 @@ void decimate(
std
::
vector
<
VertexAttribute
<
typename
PFP
::
VEC3
>
*>&
position
,
unsigned
int
nbWantedVertices
,
const
FunctorSelect
&
selected
=
allDarts
,
Vertex
Attribute
<
typename
PFP
::
VEC3
>
*
edgeErrors
=
NULL
,
Edge
Attribute
<
typename
PFP
::
VEC3
>
*
edgeErrors
=
NULL
,
void
(
*
callback_wrapper
)(
void
*
,
const
void
*
)
=
NULL
,
void
*
callback_object
=
NULL
)
;
...
...
include/Algo/Import/import2tablesSurface.hpp
View file @
a4a69f68
...
...
@@ -1010,12 +1010,21 @@ bool MeshTablesSurface<PFP>::importPlySLFgenericBin(const std::string& filename,
attrNames
.
push_back
(
positions
.
name
())
;
VertexAttribute
<
typename
PFP
::
VEC3
>
*
frame
=
new
VertexAttribute
<
typename
PFP
::
VEC3
>
[
3
]
;
frame
[
0
]
=
m_map
.
template
addAttribute
<
typename
PFP
::
VEC3
,
VERTEX
>(
"frameT"
)
;
// Tangent
frame
[
1
]
=
m_map
.
template
addAttribute
<
typename
PFP
::
VEC3
,
VERTEX
>(
"frameB"
)
;
// Bitangent
frame
[
2
]
=
m_map
.
template
addAttribute
<
typename
PFP
::
VEC3
,
VERTEX
>(
"frameN"
)
;
// Normal
attrNames
.
push_back
(
frame
[
0
].
name
())
;
attrNames
.
push_back
(
frame
[
1
].
name
())
;
attrNames
.
push_back
(
frame
[
2
].
name
())
;
if
(
tangent
)
{
frame
[
0
]
=
m_map
.
template
addAttribute
<
typename
PFP
::
VEC3
,
VERTEX
>(
"frameT"
)
;
// Tangent
attrNames
.
push_back
(
frame
[
0
].
name
())
;
}
if
(
binormal
)
{
frame
[
1
]
=
m_map
.
template
addAttribute
<
typename
PFP
::
VEC3
,
VERTEX
>(
"frameB"
)
;
// Bitangent
attrNames
.
push_back
(
frame
[
0
].
name
())
;
}
if
(
normal
)
{
frame
[
2
]
=
m_map
.
template
addAttribute
<
typename
PFP
::
VEC3
,
VERTEX
>(
"frameN"
)
;
// Normal
attrNames
.
push_back
(
frame
[
0
].
name
())
;
}
VertexAttribute
<
typename
PFP
::
VEC3
>
*
PBcoefs
=
NULL
,
*
SHcoefs
=
NULL
;
if
(
PTM
)
...
...
@@ -1064,14 +1073,15 @@ bool MeshTablesSurface<PFP>::importPlySLFgenericBin(const std::string& filename,
fp
.
read
((
char
*
)
properties
,
nbProps
*
propSize
)
;
positions
[
id
]
=
VEC3
(
properties
[
0
],
properties
[
1
],
properties
[
2
])
;
// position
for
(
unsigned
int
k
=
0
;
k
<
3
;
++
k
)
// frame
for
(
unsigned
int
l
=
0
;
l
<
3
;
++
l
)
frame
[
k
][
id
][
l
]
=
(
typename
PFP
::
REAL
)(
properties
[
3
+
(
3
*
k
+
l
)])
;
/*
for (unsigned int k = 0 ; k < 3 ; ++k) // coefficients
for (unsigned int l = 0 ; l < nbCoefs ; ++l)
*/
// positions
if
(
nbProps
>
2
)
positions
[
id
]
=
VEC3
(
properties
[
0
],
properties
[
1
],
properties
[
2
])
;
// position
if
(
tangent
&&
binormal
&&
normal
)
// == if (nbprops > 11)
for
(
unsigned
int
k
=
0
;
k
<
3
;
++
k
)
// frame
for
(
unsigned
int
l
=
0
;
l
<
3
;
++
l
)
frame
[
k
][
id
][
l
]
=
(
typename
PFP
::
REAL
)(
properties
[
3
+
(
3
*
k
+
l
)])
;
for
(
unsigned
int
l
=
0
;
l
<
nbCoefs
;
++
l
)
// coefficients
for
(
unsigned
int
k
=
0
;
k
<
3
;
++
k
)
{
...
...
@@ -1080,6 +1090,7 @@ bool MeshTablesSurface<PFP>::importPlySLFgenericBin(const std::string& filename,
else
/* if SH */
SHcoefs
[
l
][
id
][
k
]
=
(
typename
PFP
::
REAL
)(
properties
[
12
+
(
3
*
l
+
k
)])
;
}
unsigned
int
cur
=
12
+
3
*
nbCoefs
;
for
(
unsigned
int
k
=
0
;
k
<
nbRemainders
;
++
k
)
// remaining data
remainders
[
k
][
id
]
=
(
typename
PFP
::
REAL
)(
properties
[
cur
+
k
])
;
...
...
include/Algo/ProgressiveMesh/pmesh.h
View file @
a4a69f68
...
...
@@ -65,7 +65,7 @@ private:
std
::
vector
<
VSplit
<
PFP
>*>
m_splits
;
unsigned
int
m_cur
;
Algo
::
Decimation
::
HalfEdge
Approximator
<
PFP
,
VEC3
,
EDGE
>*
m_positionApproximator
;
Algo
::
Decimation
::
Approximator
<
PFP
,
VEC3
,
EDGE
>*
m_positionApproximator
;
bool
m_initOk
;
...
...
include/Algo/ProgressiveMesh/pmesh.hpp
View file @
a4a69f68
...
...
@@ -108,7 +108,7 @@ ProgressiveMesh<PFP>::ProgressiveMesh(
if
(
!
(
*
it
)
->
init
())
m_initOk
=
false
;
if
((
*
it
)
->
getApproximatedAttributeName
()
==
"position"
)
m_positionApproximator
=
reinterpret_cast
<
Algo
::
Decimation
::
HalfEdge
Approximator
<
PFP
,
VEC3
,
EDGE
>*>
(
*
it
)
;
m_positionApproximator
=
reinterpret_cast
<
Algo
::
Decimation
::
Approximator
<
PFP
,
VEC3
,
EDGE
>*>
(
*
it
)
;
}
CGoGNout
<<
"..done"
<<
CGoGNendl
;
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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