Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Poirier <theeth@yahoo.com>2008-09-03 23:24:26 +0400
committerMartin Poirier <theeth@yahoo.com>2008-09-03 23:24:26 +0400
commit17d777c486d947a17344cf88512b3bd7acc3290c (patch)
treeeb1af44ff75ceb66ff56605a1d6e2d92bb18a195 /source/blender/include
parent1924eeb182505b3dbeb6dd0662f77ffb91a34708 (diff)
Prebuild an indexed edge list for faster connectivity loops when applying dijkstra and harmonic function calculations.
Drops the runtime for that part of the algo by a lot (39k edges from 16s to 0.6s)
Diffstat (limited to 'source/blender/include')
-rw-r--r--source/blender/include/reeb.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/source/blender/include/reeb.h b/source/blender/include/reeb.h
index 046034504e6..1f9a7801b06 100644
--- a/source/blender/include/reeb.h
+++ b/source/blender/include/reeb.h
@@ -119,14 +119,15 @@ typedef struct ReebArcIterator {
int index;
int start;
int end;
- int stride;
+ int stride;
int length;
} ReebArcIterator;
struct EditMesh;
+struct EdgeIndex;
-int weightToHarmonic(struct EditMesh *em);
-int weightFromDistance(struct EditMesh *em);
+int weightToHarmonic(struct EditMesh *em, struct EdgeIndex *indexed_edges);
+int weightFromDistance(struct EditMesh *em, struct EdgeIndex *indexed_edges);
int weightFromLoc(struct EditMesh *me, int axis);
void weightToVCol(struct EditMesh *em, int index);
void arcToVCol(struct ReebGraph *rg, struct EditMesh *em, int index);