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:
authorTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>2013-07-11 21:25:18 +0400
committerTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>2013-07-11 21:25:18 +0400
commitf514fae6d80af9339c3d72e23d0e1c7a9bf29fd2 (patch)
tree38342896d361e0e2f4ea789a71f120d9fe09f8bb /source/blender/freestyle/intern/view_map
parenta3a4386991818120db6fa38d5a728b424bd13353 (diff)
Fix for Bug #35695: Freestyle produces extra line across an object with pointed areas.
The cause of inconsistent edge connectivity in the view map (documented in the commit log of revision 58006) was identified and fixed. The problem was that when a ViewEdge was split at a cusp vertex (ViewMapBuilder::computeCusps()), the ViewVertex at one end of a newly created ViewEdge in ViewMap::InsertViewVertex() was not properly updated to take account of edge connectivity changes.
Diffstat (limited to 'source/blender/freestyle/intern/view_map')
-rw-r--r--source/blender/freestyle/intern/view_map/ViewMap.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/freestyle/intern/view_map/ViewMap.cpp b/source/blender/freestyle/intern/view_map/ViewMap.cpp
index 102581bf70f..246c4caef82 100644
--- a/source/blender/freestyle/intern/view_map/ViewMap.cpp
+++ b/source/blender/freestyle/intern/view_map/ViewMap.cpp
@@ -216,6 +216,11 @@ ViewVertex *ViewMap::InsertViewVertex(SVertex *iVertex, vector<ViewEdge*>& newVi
// update new View Vertex:
vva->AddOutgoingViewEdge(newVEdge);
vva->AddIncomingViewEdge(ioEdge);
+
+ NonTVertex *vvb = dynamic_cast<NonTVertex*>(newVEdge->B());
+ if (vvb)
+ vvb->Replace(ioEdge, newVEdge);
+
// update ViewShape
//vshape->AddEdge(newVEdge);
// update SShape