Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
KennethVanhoey
CGoGN
Commits
954ab76a
Commit
954ab76a
authored
Feb 09, 2012
by
Pierre Kraemer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
newDart with MR duplicate
parent
dfdc8a9f
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
48 additions
and
19 deletions
+48
-19
include/Topology/generic/genericmap.hpp
include/Topology/generic/genericmap.hpp
+14
-2
include/Topology/map/map1.hpp
include/Topology/map/map1.hpp
+13
-1
include/Topology/map/map2.hpp
include/Topology/map/map2.hpp
+10
-0
include/Topology/map/map3.hpp
include/Topology/map/map3.hpp
+11
-2
src/Topology/generic/genericmap.cpp
src/Topology/generic/genericmap.cpp
+0
-14
No files found.
include/Topology/generic/genericmap.hpp
View file @
954ab76a
...
...
@@ -86,10 +86,22 @@ inline Dart GenericMap::newDart()
{
unsigned
int
mrdi
=
m_mrattribs
.
insertLine
()
;
m_mrLevels
->
operator
[](
mrdi
)
=
m_mrCurrentLevel
;
for
(
unsigned
int
i
=
0
;
i
<
m_mrCurrentLevel
;
++
i
)
m_mrDarts
[
i
]
->
operator
[](
mrdi
)
=
MRNULL
;
for
(
unsigned
int
i
=
m_mrCurrentLevel
;
i
<
m_mrDarts
.
size
();
++
i
)
m_mrDarts
[
i
]
->
operator
[](
mrdi
)
=
di
;
m_mrDarts
[
m_mrCurrentLevel
]
->
operator
[](
mrdi
)
=
di
;
for
(
unsigned
int
i
=
m_mrCurrentLevel
+
1
;
i
<
m_mrDarts
.
size
();
++
i
)
{
unsigned
int
dj
=
m_attribs
[
DART
].
insertLine
();
for
(
unsigned
int
o
=
0
;
o
<
NB_ORBITS
;
++
o
)
{
if
(
m_embeddings
[
o
])
(
*
m_embeddings
[
o
])[
dj
]
=
EMBNULL
;
}
m_mrDarts
[
i
]
->
operator
[](
mrdi
)
=
dj
;
}
return
Dart
::
create
(
mrdi
)
;
}
return
Dart
::
create
(
di
)
;
...
...
include/Topology/map/map1.hpp
View file @
954ab76a
...
...
@@ -69,9 +69,21 @@ inline void Map1::update_topo_shortcuts()
inline
Dart
Map1
::
newDart
()
{
Dart
d
=
GenericMap
::
newDart
()
;
unsigned
int
d_index
=
dartIndex
(
d
);
unsigned
int
d_index
=
dartIndex
(
d
)
;
(
*
m_phi1
)[
d_index
]
=
d
;
(
*
m_phi_1
)[
d_index
]
=
d
;
if
(
m_isMultiRes
)
{
pushLevel
()
;
for
(
unsigned
int
i
=
m_mrCurrentLevel
+
1
;
i
<
m_mrDarts
.
size
();
++
i
)
{
setCurrentLevel
(
i
)
;
unsigned
int
d_index
=
dartIndex
(
d
)
;
(
*
m_phi1
)[
d_index
]
=
d
;
(
*
m_phi_1
)[
d_index
]
=
d
;
}
popLevel
()
;
}
return
d
;
}
...
...
include/Topology/map/map2.hpp
View file @
954ab76a
...
...
@@ -68,6 +68,16 @@ inline Dart Map2::newDart()
{
Dart
d
=
Map1
::
newDart
()
;
(
*
m_phi2
)[
dartIndex
(
d
)]
=
d
;
if
(
m_isMultiRes
)
{
pushLevel
()
;
for
(
unsigned
int
i
=
m_mrCurrentLevel
+
1
;
i
<
m_mrDarts
.
size
();
++
i
)
{
setCurrentLevel
(
i
)
;
(
*
m_phi2
)[
dartIndex
(
d
)]
=
d
;
}
popLevel
()
;
}
return
d
;
}
...
...
include/Topology/map/map3.hpp
View file @
954ab76a
...
...
@@ -65,8 +65,17 @@ inline void Map3::update_topo_shortcuts()
inline
Dart
Map3
::
newDart
()
{
Dart
d
=
Map2
::
newDart
()
;
unsigned
int
d_index
=
dartIndex
(
d
);
(
*
m_phi3
)[
d_index
]
=
d
;
(
*
m_phi3
)[
dartIndex
(
d
)]
=
d
;
if
(
m_isMultiRes
)
{
pushLevel
()
;
for
(
unsigned
int
i
=
m_mrCurrentLevel
+
1
;
i
<
m_mrDarts
.
size
();
++
i
)
{
setCurrentLevel
(
i
)
;
(
*
m_phi3
)[
dartIndex
(
d
)]
=
d
;
}
popLevel
()
;
}
return
d
;
}
...
...
src/Topology/generic/genericmap.cpp
View file @
954ab76a
...
...
@@ -177,20 +177,6 @@ void GenericMap::addLevel()
m_mrDarts
.
push_back
(
amvMR
)
;
// copy the darts pointers of the previous level
if
(
m_mrDarts
.
size
()
>
1
)
m_mrattribs
.
copyAttribute
(
amvMR
->
getIndex
(),
m_mrDarts
[
m_mrDarts
.
size
()
-
2
]
->
getIndex
())
;
}
void
GenericMap
::
addLevelDuplicate
()
{
unsigned
int
newLevel
=
m_mrDarts
.
size
()
;
std
::
stringstream
ss
;
ss
<<
"MRdart_"
<<
newLevel
;
AttributeMultiVector
<
unsigned
int
>*
amvMR
=
m_mrattribs
.
addAttribute
<
unsigned
int
>
(
ss
.
str
())
;
m_mrDarts
.
push_back
(
amvMR
)
;
// copy the darts pointers of the previous level
if
(
m_mrDarts
.
size
()
>
1
)
m_mrattribs
.
copyAttribute
(
amvMR
->
getIndex
(),
m_mrDarts
[
newLevel
-
1
]
->
getIndex
())
;
...
...
Write
Preview
Markdown
is supported
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