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:
authorCampbell Barton <ideasman42@gmail.com>2019-05-31 15:51:19 +0300
committerCampbell Barton <ideasman42@gmail.com>2019-05-31 15:55:15 +0300
commitd8dbd49a2f23b7637f05fc058f39bdf6ab706624 (patch)
tree0805b9372c82ae6505d87e879824efe1d3e32f8e /source/blender/freestyle/intern/view_map
parent8987f7987d8160e1f6e79e8c85d6ce65b885ab25 (diff)
Cleanup: style, use braces in source/
Automated using clang-tidy.
Diffstat (limited to 'source/blender/freestyle/intern/view_map')
-rw-r--r--source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp78
-rw-r--r--source/blender/freestyle/intern/view_map/FEdgeXDetector.h6
-rw-r--r--source/blender/freestyle/intern/view_map/Functions0D.cpp75
-rw-r--r--source/blender/freestyle/intern/view_map/Functions1D.cpp18
-rw-r--r--source/blender/freestyle/intern/view_map/Interface0D.h12
-rw-r--r--source/blender/freestyle/intern/view_map/Interface1D.h6
-rw-r--r--source/blender/freestyle/intern/view_map/Silhouette.cpp45
-rw-r--r--source/blender/freestyle/intern/view_map/Silhouette.h63
-rw-r--r--source/blender/freestyle/intern/view_map/SilhouetteGeomEngine.cpp39
-rw-r--r--source/blender/freestyle/intern/view_map/SteerableViewMap.cpp30
-rw-r--r--source/blender/freestyle/intern/view_map/ViewEdgeXBuilder.cpp174
-rw-r--r--source/blender/freestyle/intern/view_map/ViewMap.cpp78
-rw-r--r--source/blender/freestyle/intern/view_map/ViewMap.h51
-rw-r--r--source/blender/freestyle/intern/view_map/ViewMapAdvancedIterators.h29
-rw-r--r--source/blender/freestyle/intern/view_map/ViewMapBuilder.cpp163
-rw-r--r--source/blender/freestyle/intern/view_map/ViewMapIO.cpp114
-rw-r--r--source/blender/freestyle/intern/view_map/ViewMapIterators.h30
-rw-r--r--source/blender/freestyle/intern/view_map/ViewMapTesselator.cpp3
-rw-r--r--source/blender/freestyle/intern/view_map/ViewMapTesselator.h3
19 files changed, 678 insertions, 339 deletions
diff --git a/source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp b/source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp
index 6c144807e35..faa219beb9c 100644
--- a/source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp
+++ b/source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp
@@ -48,8 +48,9 @@ void FEdgeXDetector::processShapes(WingedEdge &we)
}
for (vector<WShape *>::const_iterator it = wshapes.begin(); it != wshapes.end(); it++) {
- if (_pRenderMonitor && _pRenderMonitor->testBreak())
+ if (_pRenderMonitor && _pRenderMonitor->testBreak()) {
break;
+ }
wxs = dynamic_cast<WXShape *>(*it);
#if 0
wxs->bbox(Min, Max);
@@ -72,29 +73,36 @@ void FEdgeXDetector::processShapes(WingedEdge &we)
_computeViewIndependent = true;
}
preProcessShape(wxs);
- if (progressBarDisplay)
+ if (progressBarDisplay) {
_pProgressBar->setProgress(_pProgressBar->getProgress() + 1);
+ }
processBorderShape(wxs);
- if (_computeMaterialBoundaries)
+ if (_computeMaterialBoundaries) {
processMaterialBoundaryShape(wxs);
+ }
processCreaseShape(wxs);
- if (_computeRidgesAndValleys)
+ if (_computeRidgesAndValleys) {
processRidgesAndValleysShape(wxs);
- if (_computeSuggestiveContours)
+ }
+ if (_computeSuggestiveContours) {
processSuggestiveContourShape(wxs);
+ }
processSilhouetteShape(wxs);
processEdgeMarksShape(wxs);
- if (progressBarDisplay)
+ if (progressBarDisplay) {
_pProgressBar->setProgress(_pProgressBar->getProgress() + 1);
+ }
// build smooth edges:
buildSmoothEdges(wxs);
// Post processing for suggestive contours
- if (_computeSuggestiveContours)
+ if (_computeSuggestiveContours) {
postProcessSuggestiveContourShape(wxs);
- if (progressBarDisplay)
+ }
+ if (progressBarDisplay) {
_pProgressBar->setProgress(_pProgressBar->getProgress() + 1);
+ }
wxs->setComputeViewIndependentFlag(false);
_computeViewIndependent = false;
@@ -211,15 +219,18 @@ void FEdgeXDetector::computeCurvatures(WXVertex *vertex)
real absK1 = fabs(C->K1);
_meanK1 += absK1;
- if (absK1 > _maxK1)
+ if (absK1 > _maxK1) {
_maxK1 = absK1;
- if (absK1 < _minK1)
+ }
+ if (absK1 < _minK1) {
_minK1 = absK1;
+ }
}
// view dependant
C = vertex->curvatures();
- if (C == 0)
+ if (C == 0) {
return;
+ }
// compute radial curvature :
n = C->e1 ^ C->e2;
@@ -239,10 +250,12 @@ void FEdgeXDetector::computeCurvatures(WXVertex *vertex)
C->Kr = C->K1 * cos2theta + C->K2 * sin2theta;
real absKr = fabs(C->Kr);
_meanKr += absKr;
- if (absKr > _maxKr)
+ if (absKr > _maxKr) {
_maxKr = absKr;
- if (absKr < _minKr)
+ }
+ if (absKr < _minKr) {
_minKr = absKr;
+ }
++_nPoints;
}
@@ -311,8 +324,9 @@ void FEdgeXDetector::ProcessSilhouetteFace(WXFace *iFace)
void FEdgeXDetector::ProcessSilhouetteEdge(WXEdge *iEdge)
{
- if (iEdge->nature() & Nature::BORDER)
+ if (iEdge->nature() & Nature::BORDER) {
return;
+ }
// SILHOUETTE ?
//-------------
WXFace *fA = (WXFace *)iEdge->GetaOEdge()->GetaFace();
@@ -324,13 +338,16 @@ void FEdgeXDetector::ProcessSilhouetteEdge(WXEdge *iEdge)
// normals for 1 vertex for these two faces
//--------------------
// In reality we only test the normals for 1 of the 2 vertices.
- if (fA->GetVertexNormal(iEdge->GetaVertex()) == fB->GetVertexNormal(iEdge->GetaVertex()))
+ if (fA->GetVertexNormal(iEdge->GetaVertex()) == fB->GetVertexNormal(iEdge->GetaVertex())) {
return;
+ }
iEdge->AddNature(Nature::SILHOUETTE);
- if (fB->front())
+ if (fB->front()) {
iEdge->setOrder(1);
- else
+ }
+ else {
iEdge->setOrder(-1);
+ }
}
}
@@ -338,8 +355,9 @@ void FEdgeXDetector::ProcessSilhouetteEdge(WXEdge *iEdge)
/////////
void FEdgeXDetector::processBorderShape(WXShape *iWShape)
{
- if (!_computeViewIndependent)
+ if (!_computeViewIndependent) {
return;
+ }
// Make a pass on the edges to detect the BORDER
vector<WEdge *>::iterator we, weend;
vector<WEdge *> &wedges = iWShape->getEdgeList();
@@ -362,8 +380,9 @@ void FEdgeXDetector::ProcessBorderEdge(WXEdge *iEdge)
/////////
void FEdgeXDetector::processCreaseShape(WXShape *iWShape)
{
- if (!_computeViewIndependent)
+ if (!_computeViewIndependent) {
return;
+ }
// Make a pass on the edges to detect the CREASE
vector<WEdge *>::iterator we, weend;
@@ -377,14 +396,16 @@ void FEdgeXDetector::ProcessCreaseEdge(WXEdge *iEdge)
{
// CREASE ?
//---------
- if (iEdge->nature() & Nature::BORDER)
+ if (iEdge->nature() & Nature::BORDER) {
return;
+ }
WXFace *fA = (WXFace *)iEdge->GetaOEdge()->GetaFace();
WXFace *fB = (WXFace *)iEdge->GetaOEdge()->GetbFace();
WVertex *aVertex = iEdge->GetaVertex();
- if ((fA->GetVertexNormal(aVertex) * fB->GetVertexNormal(aVertex)) <= _creaseAngle)
+ if ((fA->GetVertexNormal(aVertex) * fB->GetVertexNormal(aVertex)) <= _creaseAngle) {
iEdge->AddNature(Nature::CREASE);
+ }
}
// RIDGES AND VALLEYS
@@ -394,8 +415,9 @@ void FEdgeXDetector::processRidgesAndValleysShape(WXShape *iWShape)
// Don't forget to add the built layer to the face at the end of the ProcessFace:
// iFace->AddSmoothLayer(faceLayer);
- if (!_computeViewIndependent)
+ if (!_computeViewIndependent) {
return;
+ }
// Here the curvatures must already have been computed
vector<WFace *> &wfaces = iWShape->GetFaceList();
@@ -595,8 +617,9 @@ void FEdgeXDetector::postProcessSuggestiveContourFace(WXFace *iFace)
// Find the suggestive contour layer of the face (zero or one edge).
vector<WXFaceLayer *> sc_layers;
iFace->retrieveSmoothEdgesLayers(Nature::SUGGESTIVE_CONTOUR, sc_layers);
- if (sc_layers.empty())
+ if (sc_layers.empty()) {
return;
+ }
WXFaceLayer *sc_layer;
sc_layer = sc_layers[0];
@@ -628,8 +651,9 @@ void FEdgeXDetector::postProcessSuggestiveContourFace(WXFace *iFace)
for (WVertex::face_iterator fit = v->faces_begin(), fitend = v->faces_end(); fit != fitend;
++fit) {
wxf = dynamic_cast<WXFace *>(*fit);
- if (!wxf->getOppositeEdge(v, opposite_edge))
+ if (!wxf->getOppositeEdge(v, opposite_edge)) {
continue;
+ }
opposite_vertex_a = (WXVertex *)opposite_edge->GetaVertex();
opposite_vertex_b = (WXVertex *)opposite_edge->GetbVertex();
@@ -695,8 +719,9 @@ void FEdgeXDetector::postProcessSuggestiveContourFace(WXFace *iFace)
////////////////////
void FEdgeXDetector::processMaterialBoundaryShape(WXShape *iWShape)
{
- if (!_computeViewIndependent)
+ if (!_computeViewIndependent) {
return;
+ }
// Make a pass on the edges to detect material boundaries
vector<WEdge *>::iterator we, weend;
vector<WEdge *> &wedges = iWShape->getEdgeList();
@@ -748,8 +773,9 @@ void FEdgeXDetector::buildSmoothEdges(WXShape *iShape)
for (vector<WXFaceLayer *>::iterator wxfl = faceLayers.begin(), wxflend = faceLayers.end();
wxfl != wxflend;
++wxfl) {
- if ((*wxfl)->BuildSmoothEdge())
+ if ((*wxfl)->BuildSmoothEdge()) {
hasSmoothEdges = true;
+ }
}
}
diff --git a/source/blender/freestyle/intern/view_map/FEdgeXDetector.h b/source/blender/freestyle/intern/view_map/FEdgeXDetector.h
index 9df0b4bb4bd..2bcf2d3bee8 100644
--- a/source/blender/freestyle/intern/view_map/FEdgeXDetector.h
+++ b/source/blender/freestyle/intern/view_map/FEdgeXDetector.h
@@ -96,10 +96,12 @@ class FEdgeXDetector {
// XXX angle should be in radian...
inline void setCreaseAngle(float angle)
{
- if (angle < 0.0)
+ if (angle < 0.0) {
angle = 0.0;
- else if (angle > 180.0)
+ }
+ else if (angle > 180.0) {
angle = 180.0;
+ }
angle = cos(M_PI * (180.0 - angle) / 180.0);
if (angle != _creaseAngle) {
_creaseAngle = angle;
diff --git a/source/blender/freestyle/intern/view_map/Functions0D.cpp b/source/blender/freestyle/intern/view_map/Functions0D.cpp
index 2a9a654981a..892b9b33b4b 100644
--- a/source/blender/freestyle/intern/view_map/Functions0D.cpp
+++ b/source/blender/freestyle/intern/view_map/Functions0D.cpp
@@ -64,14 +64,17 @@ void getFEdges(Interface0DIterator &it, FEdge *&fe1, FEdge *&fe2)
// we have more than 2 vertices
bool begin = false, last = false;
Interface0DIterator previous = it;
- if (!previous.isBegin())
+ if (!previous.isBegin()) {
--previous;
- else
+ }
+ else {
begin = true;
+ }
Interface0DIterator next = it;
++next;
- if (next.isEnd())
+ if (next.isEnd()) {
last = true;
+ }
if (begin) {
fe1 = it->getFEdge(*next);
fe2 = NULL;
@@ -94,8 +97,9 @@ void getViewEdges(Interface0DIterator &it, ViewEdge *&ve1, ViewEdge *&ve2)
ve1 = fe1->viewedge();
if (fe2 != NULL) {
ve2 = fe2->viewedge();
- if (ve2 == ve1)
+ if (ve2 == ve1) {
ve2 = NULL;
+ }
}
else {
ve2 = NULL;
@@ -116,14 +120,16 @@ void getOccludersF0D(Interface0DIterator &it, set<ViewShape *> &oOccluders)
occluder_container::const_iterator oit = ve1->occluders_begin();
occluder_container::const_iterator oitend = ve1->occluders_end();
- for (; oit != oitend; ++oit)
+ for (; oit != oitend; ++oit) {
oOccluders.insert((*oit));
+ }
if (ve2 != NULL) {
oit = ve2->occluders_begin();
oitend = ve2->occluders_end();
- for (; oit != oitend; ++oit)
+ for (; oit != oitend; ++oit) {
oOccluders.insert((*oit));
+ }
}
}
@@ -150,20 +156,25 @@ int VertexOrientation2DF0D::operator()(Interface0DIterator &iter)
}
Interface0DIterator next = iter;
++next;
- if (next.isEnd())
+ if (next.isEnd()) {
C = Vec2f(iter->getProjectedX(), iter->getProjectedY());
- else
+ }
+ else {
C = Vec2f(next->getProjectedX(), next->getProjectedY());
+ }
Vec2f AB(B - A);
- if (AB.norm() != 0)
+ if (AB.norm() != 0) {
AB.normalize();
+ }
Vec2f BC(C - B);
- if (BC.norm() != 0)
+ if (BC.norm() != 0) {
BC.normalize();
+ }
result = AB + BC;
- if (result.norm() != 0)
+ if (result.norm() != 0) {
result.normalize();
+ }
return 0;
}
@@ -181,20 +192,25 @@ int VertexOrientation3DF0D::operator()(Interface0DIterator &iter)
}
Interface0DIterator next = iter;
++next;
- if (next.isEnd())
+ if (next.isEnd()) {
C = Vec3r(iter->getX(), iter->getY(), iter->getZ());
- else
+ }
+ else {
C = Vec3r(next->getX(), next->getY(), next->getZ());
+ }
Vec3r AB(B - A);
- if (AB.norm() != 0)
+ if (AB.norm() != 0) {
AB.normalize();
+ }
Vec3r BC(C - B);
- if (BC.norm() != 0)
+ if (BC.norm() != 0) {
BC.normalize();
+ }
result = AB + BC;
- if (result.norm() != 0)
+ if (result.norm() != 0) {
result.normalize();
+ }
return 0;
}
@@ -218,8 +234,9 @@ int Curvature2DAngleF0D::operator()(Interface0DIterator &iter)
}
Interface0DIterator v = iter;
- if (iter.isBegin())
+ if (iter.isBegin()) {
++v;
+ }
Interface0DIterator next = v;
++next;
if (next.isEnd()) {
@@ -235,21 +252,25 @@ int Curvature2DAngleF0D::operator()(Interface0DIterator &iter)
Vec2r AB(B - A);
Vec2r BC(C - B);
Vec2r N1(-AB[1], AB[0]);
- if (N1.norm() != 0)
+ if (N1.norm() != 0) {
N1.normalize();
+ }
Vec2r N2(-BC[1], BC[0]);
- if (N2.norm() != 0)
+ if (N2.norm() != 0) {
N2.normalize();
+ }
if ((N1.norm() == 0) && (N2.norm() == 0)) {
Exception::raiseException();
result = 0;
return -1;
}
double cosin = N1 * N2;
- if (cosin > 1)
+ if (cosin > 1) {
cosin = 1;
- if (cosin < -1)
+ }
+ if (cosin < -1) {
cosin = -1;
+ }
result = acos(cosin);
return 0;
}
@@ -287,12 +308,15 @@ int MaterialF0D::operator()(Interface0DIterator &iter)
{
FEdge *fe1, *fe2;
getFEdges(iter, fe1, fe2);
- if (fe1 == NULL)
+ if (fe1 == NULL) {
return -1;
- if (fe1->isSmooth())
+ }
+ if (fe1->isSmooth()) {
result = ((FEdgeSmooth *)fe1)->frs_material();
- else
+ }
+ else {
result = ((FEdgeSharp *)fe1)->bFrsMaterial();
+ }
#if 0
const SShape *sshape = getShapeF0D(iter);
return sshape->material();
@@ -332,8 +356,9 @@ int CurveNatureF0D::operator()(Interface0DIterator &iter)
ViewEdge *ve1, *ve2;
getViewEdges(iter, ve1, ve2);
nat |= ve1->getNature();
- if (ve2 != NULL)
+ if (ve2 != NULL) {
nat |= ve2->getNature();
+ }
result = nat;
return 0;
}
diff --git a/source/blender/freestyle/intern/view_map/Functions1D.cpp b/source/blender/freestyle/intern/view_map/Functions1D.cpp
index 0c0ab9fd631..a0a320a6e6d 100644
--- a/source/blender/freestyle/intern/view_map/Functions1D.cpp
+++ b/source/blender/freestyle/intern/view_map/Functions1D.cpp
@@ -134,16 +134,18 @@ int ChainingTimeStampF1D::operator()(Interface1D &inter)
{
TimeStamp *timestamp = TimeStamp::instance();
ViewEdge *ve = dynamic_cast<ViewEdge *>(&inter);
- if (ve)
+ if (ve) {
ve->setChainingTimeStamp(timestamp->getTimeStamp());
+ }
return 0;
}
int IncrementChainingTimeStampF1D::operator()(Interface1D &inter)
{
ViewEdge *ve = dynamic_cast<ViewEdge *>(&inter);
- if (ve)
+ if (ve) {
ve->setChainingTimeStamp(ve->getChainingTimeStamp() + 1);
+ }
return 0;
}
@@ -157,8 +159,9 @@ int GetShapeF1D::operator()(Interface1D &inter)
}
else {
Interface0DIterator it = inter.verticesBegin(), itend = inter.verticesEnd();
- for (; it != itend; ++it)
+ for (; it != itend; ++it) {
shapesSet.insert(Functions0D::getShapeF0D(it));
+ }
shapesVector.insert<set<ViewShape *>::iterator>(
shapesVector.begin(), shapesSet.begin(), shapesSet.end());
}
@@ -224,8 +227,9 @@ void getOccludeeF1D(Interface1D &inter, set<ViewShape *> &oShapes)
}
else {
Interface0DIterator it = inter.verticesBegin(), itend = inter.verticesEnd();
- for (; it != itend; ++it)
+ for (; it != itend; ++it) {
oShapes.insert(Functions0D::getOccludeeF0D(it));
+ }
}
}
@@ -241,8 +245,9 @@ void getOccludersF1D(Interface1D &inter, set<ViewShape *> &oShapes)
for (; it != itend; ++it) {
set<ViewShape *> shapes;
Functions0D::getOccludersF0D(it, shapes);
- for (set<ViewShape *>::iterator s = shapes.begin(), send = shapes.end(); s != send; ++s)
+ for (set<ViewShape *>::iterator s = shapes.begin(), send = shapes.end(); s != send; ++s) {
oShapes.insert(*s);
+ }
}
}
}
@@ -255,8 +260,9 @@ void getShapeF1D(Interface1D &inter, set<ViewShape *> &oShapes)
}
else {
Interface0DIterator it = inter.verticesBegin(), itend = inter.verticesEnd();
- for (; it != itend; ++it)
+ for (; it != itend; ++it) {
oShapes.insert(Functions0D::getShapeF0D(it));
+ }
}
}
diff --git a/source/blender/freestyle/intern/view_map/Interface0D.h b/source/blender/freestyle/intern/view_map/Interface0D.h
index 3d50e978147..724a98f047f 100644
--- a/source/blender/freestyle/intern/view_map/Interface0D.h
+++ b/source/blender/freestyle/intern/view_map/Interface0D.h
@@ -196,8 +196,9 @@ class Interface0DIterator : public Iterator {
/*! Destructor */
virtual ~Interface0DIterator()
{
- if (_iterator)
+ if (_iterator) {
delete _iterator;
+ }
}
/*! Operator =
@@ -207,8 +208,9 @@ class Interface0DIterator : public Iterator {
*/
Interface0DIterator &operator=(const Interface0DIterator &it)
{
- if (_iterator)
+ if (_iterator) {
delete _iterator;
+ }
_iterator = it._iterator->copy();
return *this;
}
@@ -216,8 +218,9 @@ class Interface0DIterator : public Iterator {
/*! Returns the string "Interface0DIterator". */
virtual string getExactTypeName() const
{
- if (!_iterator)
+ if (!_iterator) {
return "Interface0DIterator";
+ }
return _iterator->getExactTypeName() + "Proxy";
}
@@ -299,8 +302,9 @@ class Interface0DIterator : public Iterator {
/*! Returns true when the iterator is pointing to the final valid element. */
virtual bool atLast() const
{
- if (_iterator->isEnd())
+ if (_iterator->isEnd()) {
return false;
+ }
_iterator->increment();
bool result = _iterator->isEnd();
diff --git a/source/blender/freestyle/intern/view_map/Interface1D.h b/source/blender/freestyle/intern/view_map/Interface1D.h
index e47a5ad8f31..7a72a176902 100644
--- a/source/blender/freestyle/intern/view_map/Interface1D.h
+++ b/source/blender/freestyle/intern/view_map/Interface1D.h
@@ -84,8 +84,9 @@ T integrate(UnaryFunction0D<T> &fun,
++it;
for (; !it.isEnd(); ++it) {
fun(it);
- if (fun.result < res)
+ if (fun.result < res) {
res = fun.result;
+ }
}
break;
case MAX:
@@ -94,8 +95,9 @@ T integrate(UnaryFunction0D<T> &fun,
++it;
for (; !it.isEnd(); ++it) {
fun(it);
- if (fun.result > res)
+ if (fun.result > res) {
res = fun.result;
+ }
}
break;
case FIRST:
diff --git a/source/blender/freestyle/intern/view_map/Silhouette.cpp b/source/blender/freestyle/intern/view_map/Silhouette.cpp
index 15fe55874ca..49da675b932 100644
--- a/source/blender/freestyle/intern/view_map/Silhouette.cpp
+++ b/source/blender/freestyle/intern/view_map/Silhouette.cpp
@@ -35,8 +35,9 @@ namespace Freestyle {
Nature::VertexNature SVertex::getNature() const
{
Nature::VertexNature nature = Nature::S_VERTEX;
- if (_pViewVertex)
+ if (_pViewVertex) {
nature |= _pViewVertex->getNature();
+ }
return nature;
}
@@ -84,71 +85,81 @@ const SShape *SVertex::shape() const
const int SVertex::qi() const
{
- if (getNature() & Nature::T_VERTEX)
+ if (getNature() & Nature::T_VERTEX) {
Exception::raiseException();
+ }
return (_FEdges[0])->qi();
}
occluder_container::const_iterator SVertex::occluders_begin() const
{
- if (getNature() & Nature::T_VERTEX)
+ if (getNature() & Nature::T_VERTEX) {
Exception::raiseException();
+ }
return (_FEdges[0])->occluders_begin();
}
occluder_container::const_iterator SVertex::occluders_end() const
{
- if (getNature() & Nature::T_VERTEX)
+ if (getNature() & Nature::T_VERTEX) {
Exception::raiseException();
+ }
return (_FEdges[0])->occluders_end();
}
bool SVertex::occluders_empty() const
{
- if (getNature() & Nature::T_VERTEX)
+ if (getNature() & Nature::T_VERTEX) {
Exception::raiseException();
+ }
return (_FEdges[0])->occluders_empty();
}
int SVertex::occluders_size() const
{
- if (getNature() & Nature::T_VERTEX)
+ if (getNature() & Nature::T_VERTEX) {
Exception::raiseException();
+ }
return (_FEdges[0])->occluders_size();
}
const Polygon3r &SVertex::occludee() const
{
- if (getNature() & Nature::T_VERTEX)
+ if (getNature() & Nature::T_VERTEX) {
Exception::raiseException();
+ }
return (_FEdges[0])->occludee();
}
const SShape *SVertex::occluded_shape() const
{
- if (getNature() & Nature::T_VERTEX)
+ if (getNature() & Nature::T_VERTEX) {
Exception::raiseException();
+ }
return (_FEdges[0])->occluded_shape();
}
const bool SVertex::occludee_empty() const
{
- if (getNature() & Nature::T_VERTEX)
+ if (getNature() & Nature::T_VERTEX) {
Exception::raiseException();
+ }
return (_FEdges[0])->occludee_empty();
}
real SVertex::z_discontinuity() const
{
- if (getNature() & Nature::T_VERTEX)
+ if (getNature() & Nature::T_VERTEX) {
Exception::raiseException();
+ }
return (_FEdges[0])->z_discontinuity();
}
FEdge *SVertex::fedge()
{
- if (getNature() & Nature::T_VERTEX)
+ if (getNature() & Nature::T_VERTEX) {
return NULL;
+ }
return _FEdges[0];
}
@@ -156,8 +167,9 @@ FEdge *SVertex::getFEdge(Interface0D &inter)
{
FEdge *result = NULL;
SVertex *iVertexB = dynamic_cast<SVertex *>(&inter);
- if (!iVertexB)
+ if (!iVertexB) {
return result;
+ }
vector<FEdge *>::const_iterator fe = _FEdges.begin(), feend = _FEdges.end();
for (; fe != feend; ++fe) {
if ((((*fe)->vertexA() == this) && ((*fe)->vertexB() == iVertexB)) ||
@@ -171,8 +183,9 @@ FEdge *SVertex::getFEdge(Interface0D &inter)
TVertex *tvertex = dynamic_cast<TVertex *>(vvertex);
if (tvertex) {
brother = tvertex->frontSVertex();
- if (this == brother)
+ if (this == brother) {
brother = tvertex->backSVertex();
+ }
const vector<FEdge *> &fedges = brother->fedges();
for (fe = fedges.begin(), feend = fedges.end(); fe != feend; ++fe) {
if ((((*fe)->vertexA() == brother) && ((*fe)->vertexB() == iVertexB)) ||
@@ -188,8 +201,9 @@ FEdge *SVertex::getFEdge(Interface0D &inter)
TVertex *tvertex = dynamic_cast<TVertex *>(vvertex);
if (tvertex) {
brother = tvertex->frontSVertex();
- if (iVertexB == brother)
+ if (iVertexB == brother) {
brother = tvertex->backSVertex();
+ }
for (fe = _FEdges.begin(), feend = _FEdges.end(); fe != feend; ++fe) {
if ((((*fe)->vertexA() == this) && ((*fe)->vertexB() == brother)) ||
(((*fe)->vertexB() == this) && ((*fe)->vertexA() == brother))) {
@@ -225,8 +239,9 @@ float FEdge::viewedge_length() const
const SShape *FEdge::occluded_shape() const
{
ViewShape *aShape = _ViewEdge->aShape();
- if (aShape == 0)
+ if (aShape == 0) {
return 0;
+ }
return aShape->sshape();
}
diff --git a/source/blender/freestyle/intern/view_map/Silhouette.h b/source/blender/freestyle/intern/view_map/Silhouette.h
index b5bbe66e51e..e25048c0300 100644
--- a/source/blender/freestyle/intern/view_map/Silhouette.h
+++ b/source/blender/freestyle/intern/view_map/Silhouette.h
@@ -203,10 +203,12 @@ class SVertex : public Interface0D {
_FEdges = iBrother.fedges();
_Shape = iBrother.shape();
_pViewVertex = iBrother._pViewVertex;
- if (!(iBrother._curvature_info))
+ if (!(iBrother._curvature_info)) {
_curvature_info = 0;
- else
+ }
+ else {
_curvature_info = new CurvatureInfo(*(iBrother._curvature_info));
+ }
iBrother.userdata = this;
userdata = 0;
}
@@ -214,8 +216,9 @@ class SVertex : public Interface0D {
/*! Destructor. */
virtual ~SVertex()
{
- if (_curvature_info)
+ if (_curvature_info) {
delete _curvature_info;
+ }
}
/*! Cloning method. */
@@ -312,8 +315,9 @@ class SVertex : public Interface0D {
void setCurvatureInfo(CurvatureInfo *ci)
{
- if (_curvature_info) // Q. is this an error condition? (T.K. 02-May-2011)
+ if (_curvature_info) { // Q. is this an error condition? (T.K. 02-May-2011)
delete _curvature_info;
+ }
_curvature_info = ci;
}
@@ -415,8 +419,9 @@ class SVertex : public Interface0D {
inline Vec3r normal() const
{
- if (_Normals.size() == 1)
+ if (_Normals.size() == 1) {
return (*(_Normals.begin()));
+ }
Exception::raiseException();
return *(_Normals.begin());
}
@@ -483,8 +488,9 @@ class FEdge : public Interface1D {
/*! Returns the 2D length of the FEdge. */
virtual real getLength2D() const
{
- if (!_VertexA || !_VertexB)
+ if (!_VertexA || !_VertexB) {
return 0;
+ }
return (_VertexB->getPoint2D() - _VertexA->getPoint2D()).norm();
}
@@ -832,8 +838,9 @@ class FEdge : public Interface1D {
*/
static inline SVertex *CommonVertex(FEdge *iEdge1, FEdge *iEdge2)
{
- if ((NULL == iEdge1) || (NULL == iEdge2))
+ if ((NULL == iEdge1) || (NULL == iEdge2)) {
return NULL;
+ }
SVertex *sv1 = iEdge1->vertexA();
SVertex *sv2 = iEdge1->vertexB();
@@ -852,18 +859,22 @@ class FEdge : public Interface1D {
inline const SVertex *min2d() const
{
- if (_VertexA->point2D() < _VertexB->point2D())
+ if (_VertexA->point2D() < _VertexB->point2D()) {
return _VertexA;
- else
+ }
+ else {
return _VertexB;
+ }
}
inline const SVertex *max2d() const
{
- if (_VertexA->point2D() < _VertexB->point2D())
+ if (_VertexA->point2D() < _VertexB->point2D()) {
return _VertexB;
- else
+ }
+ else {
return _VertexA;
+ }
}
/* Information access interface */
@@ -1071,8 +1082,9 @@ class SVertexIterator : public Interface0DIteratorNested {
virtual bool operator==(const Interface0DIteratorNested &it) const
{
const SVertexIterator *it_exact = dynamic_cast<const SVertexIterator *>(&it);
- if (!it_exact)
+ if (!it_exact) {
return false;
+ }
return ((_vertex == it_exact->_vertex) && (_edge == it_exact->_edge));
}
@@ -1614,9 +1626,10 @@ class SShape {
T = (*p)[0];
t = (*p)[1];
- if ((t < 0) || (t > 1))
+ if ((t < 0) || (t > 1)) {
cerr << "Warning: Intersection out of range for edge " << ioA->getId() << " - "
<< ioB->getId() << endl;
+ }
// compute the 3D and 2D coordinates for the intersections points:
newpoint3d = Vec3r(A + T * (B - A));
@@ -1725,8 +1738,9 @@ class SShape {
}
newEdge->setNature(ioEdge->getNature());
- if (ioEdge->nextEdge() != 0)
+ if (ioEdge->nextEdge() != 0) {
ioEdge->nextEdge()->setPreviousEdge(newEdge);
+ }
// update edge A'B for the next pointing edge
newEdge->setNextEdge(ioEdge->nextEdge());
@@ -1769,8 +1783,9 @@ class SShape {
/*! Compute the bbox of the sshape */
inline void ComputeBBox()
{
- if (0 == _verticesList.size())
+ if (0 == _verticesList.size()) {
return;
+ }
Vec3r firstVertex = _verticesList[0]->point3D();
real XMax = firstVertex[0];
@@ -1787,24 +1802,30 @@ class SShape {
Vec3r vertex = (*v)->point3D();
// X
real x = vertex[0];
- if (x > XMax)
+ if (x > XMax) {
XMax = x;
- else if (x < XMin)
+ }
+ else if (x < XMin) {
XMin = x;
+ }
// Y
real y = vertex[1];
- if (y > YMax)
+ if (y > YMax) {
YMax = y;
- else if (y < YMin)
+ }
+ else if (y < YMin) {
YMin = y;
+ }
// Z
real z = vertex[2];
- if (z > ZMax)
+ if (z > ZMax) {
ZMax = z;
- else if (z < ZMin)
+ }
+ else if (z < ZMin) {
ZMin = z;
+ }
}
setBBox(BBox<Vec3r>(Vec3r(XMin, YMin, ZMin), Vec3r(XMax, YMax, ZMax)));
diff --git a/source/blender/freestyle/intern/view_map/SilhouetteGeomEngine.cpp b/source/blender/freestyle/intern/view_map/SilhouetteGeomEngine.cpp
index 1d0ac8634dd..66af24507d7 100644
--- a/source/blender/freestyle/intern/view_map/SilhouetteGeomEngine.cpp
+++ b/source/blender/freestyle/intern/view_map/SilhouetteGeomEngine.cpp
@@ -102,8 +102,9 @@ void SilhouetteGeomEngine::setTransform(const real iModelViewMatrix[4][4],
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
_transform[i][j] = 0;
- for (unsigned int k = 0; k < 4; k++)
+ for (unsigned int k = 0; k < 4; k++) {
_transform[i][j] += _projectionMatrix[i][k] * _modelViewMatrix[k][j];
+ }
}
}
@@ -147,8 +148,9 @@ void SilhouetteGeomEngine::ProjectSilhouette(SVertex *ioVertex)
real SilhouetteGeomEngine::ImageToWorldParameter(FEdge *fe, real t)
{
- if (_isOrthographicProjection)
+ if (_isOrthographicProjection) {
return t;
+ }
// we need to compute for each parameter t the corresponding parameter T which gives the
// intersection in 3D.
@@ -184,8 +186,9 @@ real SilhouetteGeomEngine::ImageToWorldParameter(FEdge *fe, real t)
alpha = ABc[2] / ABc[0];
beta = Ac[2] - alpha * Ac[0];
denom = alpha * (Ir[0] + m13) + m11;
- if (fabs(denom) < 1.0e-6)
+ if (fabs(denom) < 1.0e-6) {
goto iter;
+ }
Ic[0] = -beta * (Ir[0] + m13) / denom;
#if 0
Ic[1] = -(Ir[1] + m23) * (alpha * Ic[0] + beta) / m22;
@@ -197,8 +200,9 @@ real SilhouetteGeomEngine::ImageToWorldParameter(FEdge *fe, real t)
alpha = ABc[2] / ABc[1];
beta = Ac[2] - alpha * Ac[1];
denom = alpha * (Ir[1] + m23) + m22;
- if (fabs(denom) < 1.0e-6)
+ if (fabs(denom) < 1.0e-6) {
goto iter;
+ }
Ic[1] = -beta * (Ir[1] + m23) / denom;
#if 0
Ic[0] = -(Ir[0] + m13) * (alpha * Ic[1] + beta) / m11;
@@ -230,34 +234,43 @@ real SilhouetteGeomEngine::ImageToWorldParameter(FEdge *fe, real t)
delta_x = Ii[0] - Pi[0];
delta_y = Ii[1] - Pi[1];
dist = sqrt(delta_x * delta_x + delta_y * delta_y);
- if (dist < dist_threshold)
+ if (dist < dist_threshold) {
break;
+ }
if (x_coords) {
if (less_than) {
- if (Pi[0] < Ii[0])
+ if (Pi[0] < Ii[0]) {
T_sta = T;
- else
+ }
+ else {
T_end = T;
+ }
}
else {
- if (Pi[0] > Ii[0])
+ if (Pi[0] > Ii[0]) {
T_sta = T;
- else
+ }
+ else {
T_end = T;
+ }
}
}
else {
if (less_than) {
- if (Pi[1] < Ii[1])
+ if (Pi[1] < Ii[1]) {
T_sta = T;
- else
+ }
+ else {
T_end = T;
+ }
}
else {
- if (Pi[1] > Ii[1])
+ if (Pi[1] > Ii[1]) {
T_sta = T;
- else
+ }
+ else {
T_end = T;
+ }
}
}
}
diff --git a/source/blender/freestyle/intern/view_map/SteerableViewMap.cpp b/source/blender/freestyle/intern/view_map/SteerableViewMap.cpp
index d1f9a5b41bd..862b4e479fa 100644
--- a/source/blender/freestyle/intern/view_map/SteerableViewMap.cpp
+++ b/source/blender/freestyle/intern/view_map/SteerableViewMap.cpp
@@ -69,9 +69,10 @@ SteerableViewMap::SteerableViewMap(const SteerableViewMap &iBrother)
_mapping = iBrother._mapping;
_imagesPyramids =
new ImagePyramid *[_nbOrientations + 1]; // one more map to store the complete visible VM
- for (i = 0; i <= _nbOrientations; ++i)
+ for (i = 0; i <= _nbOrientations; ++i) {
_imagesPyramids[i] = new GaussianPyramid(
*(dynamic_cast<GaussianPyramid *>(iBrother._imagesPyramids[i])));
+ }
}
SteerableViewMap::~SteerableViewMap()
@@ -84,8 +85,9 @@ void SteerableViewMap::Clear()
unsigned int i;
if (_imagesPyramids) {
for (i = 0; i <= _nbOrientations; ++i) {
- if (_imagesPyramids[i])
+ if (_imagesPyramids[i]) {
delete (_imagesPyramids)[i];
+ }
}
delete[] _imagesPyramids;
_imagesPyramids = 0;
@@ -109,10 +111,12 @@ void SteerableViewMap::Reset()
double SteerableViewMap::ComputeWeight(const Vec2d &dir, unsigned i)
{
double dotp = fabs(dir * _directions[i]);
- if (dotp < _bound)
+ if (dotp < _bound) {
return 0.0;
- if (dotp > 1.0)
+ }
+ if (dotp > 1.0) {
dotp = 1.0;
+ }
return cos((float)_nbOrientations / 2.0 * acos(dotp));
}
@@ -191,12 +195,15 @@ void SteerableViewMap::buildImagesPyramids(GrayImage **steerableBases,
{
for (unsigned int i = 0; i <= _nbOrientations; ++i) {
ImagePyramid *svm = (_imagesPyramids)[i];
- if (svm)
+ if (svm) {
delete svm;
- if (copy)
+ }
+ if (copy) {
svm = new GaussianPyramid(*(steerableBases[i]), iNbLevels, iSigma);
- else
+ }
+ else {
svm = new GaussianPyramid(steerableBases[i], iNbLevels, iSigma);
+ }
_imagesPyramids[i] = svm;
}
}
@@ -210,8 +217,9 @@ float SteerableViewMap::readSteerableViewMapPixel(unsigned iOrientation, int iLe
}
return 0.0f;
}
- if ((x < 0) || (x >= pyramid->width()) || (y < 0) || (y >= pyramid->height()))
+ if ((x < 0) || (x >= pyramid->width()) || (y < 0) || (y >= pyramid->height())) {
return 0;
+ }
// float v = pyramid->pixel(x, pyramid->height() - 1 - y, iLevel) * 255.0f;
// We encode both the directionality and the lines counting on 8 bits (because of frame buffer).
// Thus, we allow until 8 lines to pass through the same pixel, so that we can discretize the
@@ -228,8 +236,9 @@ float SteerableViewMap::readCompleteViewMapPixel(int iLevel, int x, int y)
unsigned int SteerableViewMap::getNumberOfPyramidLevels() const
{
- if (_imagesPyramids[0])
+ if (_imagesPyramids[0]) {
return _imagesPyramids[0]->getNumberOfLevels();
+ }
return 0;
}
@@ -258,8 +267,9 @@ void SteerableViewMap::saveSteerableViewMap() const
for (int y = 0; y < oh; ++y) { // soc
for (int x = 0; x < ow; ++x) { // soc
int c = (int)(coeff * _imagesPyramids[i]->pixel(x, y, j));
- if (c > 255)
+ if (c > 255) {
c = 255;
+ }
// int c = (int)(_imagesPyramids[i]->pixel(x, y, j));
// soc qtmp.setPixel(x, y, qRgb(c, c, c));
diff --git a/source/blender/freestyle/intern/view_map/ViewEdgeXBuilder.cpp b/source/blender/freestyle/intern/view_map/ViewEdgeXBuilder.cpp
index 8715f4f52d9..fde4ee7e476 100644
--- a/source/blender/freestyle/intern/view_map/ViewEdgeXBuilder.cpp
+++ b/source/blender/freestyle/intern/view_map/ViewEdgeXBuilder.cpp
@@ -33,20 +33,23 @@ namespace Freestyle {
void ViewEdgeXBuilder::Init(ViewShape *oVShape)
{
- if (NULL == oVShape)
+ if (NULL == oVShape) {
return;
+ }
// for design conveniance, we store the current SShape.
_pCurrentSShape = oVShape->sshape();
- if (0 == _pCurrentSShape)
+ if (0 == _pCurrentSShape) {
return;
+ }
_pCurrentVShape = oVShape;
// Reset previous data
//--------------------
- if (!_SVertexMap.empty())
+ if (!_SVertexMap.empty()) {
_SVertexMap.clear();
+ }
}
void ViewEdgeXBuilder::BuildViewEdges(WXShape *iWShape,
@@ -68,17 +71,20 @@ void ViewEdgeXBuilder::BuildViewEdges(WXShape *iWShape,
WXFace *wxf;
for (wf = wfaces.begin(), wfend = wfaces.end(); wf != wfend; wf++) {
wxf = dynamic_cast<WXFace *>(*wf);
- if (false == ((wxf))->hasSmoothEdges()) // does it contain at least one smooth edge ?
+ if (false == ((wxf))->hasSmoothEdges()) { // does it contain at least one smooth edge ?
continue;
+ }
// parse all smooth layers:
vector<WXFaceLayer *> &smoothLayers = wxf->getSmoothLayers();
for (vector<WXFaceLayer *>::iterator sl = smoothLayers.begin(), slend = smoothLayers.end();
sl != slend;
++sl) {
- if (!(*sl)->hasSmoothEdge())
+ if (!(*sl)->hasSmoothEdge()) {
continue;
- if (stopSmoothViewEdge((*sl))) // has it been parsed already ?
+ }
+ if (stopSmoothViewEdge((*sl))) { // has it been parsed already ?
continue;
+ }
// here we know that we're dealing with a face layer that has not been processed yet and that
// contains a smooth edge.
/* vedge =*//* UNUSED */ BuildSmoothViewEdge(OWXFaceLayer(*sl, true));
@@ -96,13 +102,15 @@ void ViewEdgeXBuilder::BuildViewEdges(WXShape *iWShape,
//------------------------------
for (vector<WEdge *>::iterator we = wedges.begin(), weend = wedges.end(); we != weend; we++) {
wxe = dynamic_cast<WXEdge *>(*we);
- if (Nature::NO_FEATURE == wxe->nature())
+ if (Nature::NO_FEATURE == wxe->nature()) {
continue;
+ }
if (!stopSharpViewEdge(wxe)) {
bool b = true;
- if (wxe->order() == -1)
+ if (wxe->order() == -1) {
b = false;
+ }
BuildSharpViewEdge(OWXEdge(wxe, b));
}
}
@@ -174,11 +182,13 @@ ViewEdge *ViewEdgeXBuilder::BuildSmoothViewEdge(const OWXFaceLayer &iFaceLayer)
for (list<OWXFaceLayer>::iterator fl = facesChain.begin(), flend = facesChain.end(); fl != flend;
++fl) {
fe = BuildSmoothFEdge(feprevious, (*fl));
- if (feprevious && fe == feprevious)
+ if (feprevious && fe == feprevious) {
continue;
+ }
fe->setViewEdge(newVEdge);
- if (!fefirst)
+ if (!fefirst) {
fefirst = fe;
+ }
feprevious = fe;
}
// Store the chain starting edge:
@@ -259,8 +269,9 @@ ViewEdge *ViewEdgeXBuilder::BuildSharpViewEdge(const OWXEdge &iWEdge)
++we) {
fe = BuildSharpFEdge(feprevious, (*we));
fe->setViewEdge(newVEdge);
- if (!fefirst)
+ if (!fefirst) {
fefirst = fe;
+ }
feprevious = fe;
}
// Store the chain starting edge:
@@ -306,12 +317,15 @@ OWXFaceLayer ViewEdgeXBuilder::FindNextFaceLayer(const OWXFaceLayer &iFaceLayer)
// special case of EDGE_VERTEX config:
if ((tend == 0.0) || (tend == 1.0)) {
WVertex *nextVertex;
- if (tend == 0.0)
+ if (tend == 0.0) {
nextVertex = woeend->GetaVertex();
- else
+ }
+ else {
nextVertex = woeend->GetbVertex();
- if (nextVertex->isBoundary()) // if it's a non-manifold vertex -> ignore
+ }
+ if (nextVertex->isBoundary()) { // if it's a non-manifold vertex -> ignore
return OWXFaceLayer(0, true);
+ }
bool found = false;
WVertex::face_iterator f = nextVertex->faces_begin();
WVertex::face_iterator fend = nextVertex->faces_end();
@@ -324,12 +338,15 @@ OWXFaceLayer ViewEdgeXBuilder::FindNextFaceLayer(const OWXFaceLayer &iFaceLayer)
if (sameNatureLayers.size() == 1) {
WXFaceLayer *winner = sameNatureLayers[0];
// check face mark continuity
- if (winner->getFace()->GetMark() != iFaceLayer.fl->getFace()->GetMark())
+ if (winner->getFace()->GetMark() != iFaceLayer.fl->getFace()->GetMark()) {
return OWXFaceLayer(NULL, true);
- if (woeend == winner->getSmoothEdge()->woea()->twin())
+ }
+ if (woeend == winner->getSmoothEdge()->woea()->twin()) {
return OWXFaceLayer(winner, true);
- else
+ }
+ else {
return OWXFaceLayer(winner, false);
+ }
}
}
++f;
@@ -337,12 +354,14 @@ OWXFaceLayer ViewEdgeXBuilder::FindNextFaceLayer(const OWXFaceLayer &iFaceLayer)
}
else {
nextFace = dynamic_cast<WXFace *>(iFaceLayer.fl->getFace()->GetBordingFace(woeend));
- if (!nextFace)
+ if (!nextFace) {
return OWXFaceLayer(NULL, true);
+ }
// if the next face layer has either no smooth edge or no smooth edge of same nature, no next
// face
- if (!nextFace->hasSmoothEdges())
+ if (!nextFace->hasSmoothEdges()) {
return OWXFaceLayer(NULL, true);
+ }
vector<WXFaceLayer *> sameNatureLayers;
nextFace->retrieveSmoothEdgesLayers(iFaceLayer.fl->nature(), sameNatureLayers);
// don't know how to deal with several edges of same nature on a single face
@@ -352,12 +371,15 @@ OWXFaceLayer ViewEdgeXBuilder::FindNextFaceLayer(const OWXFaceLayer &iFaceLayer)
else {
WXFaceLayer *winner = sameNatureLayers[0];
// check face mark continuity
- if (winner->getFace()->GetMark() != iFaceLayer.fl->getFace()->GetMark())
+ if (winner->getFace()->GetMark() != iFaceLayer.fl->getFace()->GetMark()) {
return OWXFaceLayer(NULL, true);
- if (woeend == winner->getSmoothEdge()->woea()->twin())
+ }
+ if (woeend == winner->getSmoothEdge()->woea()->twin()) {
return OWXFaceLayer(winner, true);
- else
+ }
+ else {
return OWXFaceLayer(winner, false);
+ }
}
}
return OWXFaceLayer(NULL, true);
@@ -380,12 +402,15 @@ OWXFaceLayer ViewEdgeXBuilder::FindPreviousFaceLayer(const OWXFaceLayer &iFaceLa
// special case of EDGE_VERTEX config:
if ((tend == 0.0) || (tend == 1.0)) {
WVertex *previousVertex;
- if (tend == 0.0)
+ if (tend == 0.0) {
previousVertex = woebegin->GetaVertex();
- else
+ }
+ else {
previousVertex = woebegin->GetbVertex();
- if (previousVertex->isBoundary()) // if it's a non-manifold vertex -> ignore
+ }
+ if (previousVertex->isBoundary()) { // if it's a non-manifold vertex -> ignore
return OWXFaceLayer(NULL, true);
+ }
bool found = false;
WVertex::face_iterator f = previousVertex->faces_begin();
WVertex::face_iterator fend = previousVertex->faces_end();
@@ -398,24 +423,29 @@ OWXFaceLayer ViewEdgeXBuilder::FindPreviousFaceLayer(const OWXFaceLayer &iFaceLa
if (sameNatureLayers.size() == 1) {
WXFaceLayer *winner = sameNatureLayers[0];
// check face mark continuity
- if (winner->getFace()->GetMark() != iFaceLayer.fl->getFace()->GetMark())
+ if (winner->getFace()->GetMark() != iFaceLayer.fl->getFace()->GetMark()) {
return OWXFaceLayer(NULL, true);
- if (woebegin == winner->getSmoothEdge()->woeb()->twin())
+ }
+ if (woebegin == winner->getSmoothEdge()->woeb()->twin()) {
return OWXFaceLayer(winner, true);
- else
+ }
+ else {
return OWXFaceLayer(winner, false);
+ }
}
}
}
}
else {
previousFace = dynamic_cast<WXFace *>(iFaceLayer.fl->getFace()->GetBordingFace(woebegin));
- if (0 == previousFace)
+ if (0 == previousFace) {
return OWXFaceLayer(NULL, true);
+ }
// if the next face layer has either no smooth edge or no smooth edge of same nature, no next
// face
- if (!previousFace->hasSmoothEdges())
+ if (!previousFace->hasSmoothEdges()) {
return OWXFaceLayer(NULL, true);
+ }
vector<WXFaceLayer *> sameNatureLayers;
previousFace->retrieveSmoothEdgesLayers(iFaceLayer.fl->nature(), sameNatureLayers);
// don't know how to deal with several edges of same nature on a single face
@@ -425,12 +455,15 @@ OWXFaceLayer ViewEdgeXBuilder::FindPreviousFaceLayer(const OWXFaceLayer &iFaceLa
else {
WXFaceLayer *winner = sameNatureLayers[0];
// check face mark continuity
- if (winner->getFace()->GetMark() != iFaceLayer.fl->getFace()->GetMark())
+ if (winner->getFace()->GetMark() != iFaceLayer.fl->getFace()->GetMark()) {
return OWXFaceLayer(NULL, true);
- if (woebegin == winner->getSmoothEdge()->woeb()->twin())
+ }
+ if (woebegin == winner->getSmoothEdge()->woeb()->twin()) {
return OWXFaceLayer(winner, true);
- else
+ }
+ else {
return OWXFaceLayer(winner, false);
+ }
}
}
return OWXFaceLayer(NULL, true);
@@ -489,8 +522,9 @@ FEdge *ViewEdgeXBuilder::BuildSmoothFEdge(FEdge *feprevious, const OWXFaceLayer
Vec3r B2(woeb->GetbVertex()->GetVertex());
Vec3r B(B1 + tb * (B2 - B1));
- if (feprevious && (B - va->point3D()).norm() < 1.0e-6)
+ if (feprevious && (B - va->point3D()).norm() < 1.0e-6) {
return feprevious;
+ }
vb = MakeSVertex(B, false);
// Set normal:
@@ -515,12 +549,14 @@ FEdge *ViewEdgeXBuilder::BuildSmoothFEdge(FEdge *feprevious, const OWXFaceLayer
fe->setFrsMaterialIndex(ifl.fl->getFace()->frs_materialIndex());
fe->setFace(ifl.fl->getFace());
fe->setFaceMark(ifl.fl->getFace()->GetMark());
- if (feprevious == 0)
+ if (feprevious == 0) {
normal.normalize();
+ }
fe->setNormal(normal);
fe->setPreviousEdge(feprevious);
- if (feprevious)
+ if (feprevious) {
feprevious->setNextEdge(fe);
+ }
_pCurrentSShape->AddEdge(fe);
va->AddFEdge(fe);
vb->AddFEdge(fe);
@@ -532,10 +568,12 @@ FEdge *ViewEdgeXBuilder::BuildSmoothFEdge(FEdge *feprevious, const OWXFaceLayer
bool ViewEdgeXBuilder::stopSmoothViewEdge(WXFaceLayer *iFaceLayer)
{
- if (NULL == iFaceLayer)
+ if (NULL == iFaceLayer) {
return true;
- if (iFaceLayer->userdata == 0)
+ }
+ if (iFaceLayer->userdata == 0) {
return false;
+ }
return true;
}
@@ -544,40 +582,49 @@ int ViewEdgeXBuilder::retrieveFaceMarks(WXEdge *iEdge)
WFace *aFace = iEdge->GetaFace();
WFace *bFace = iEdge->GetbFace();
int result = 0;
- if (aFace && aFace->GetMark())
+ if (aFace && aFace->GetMark()) {
result += 1;
- if (bFace && bFace->GetMark())
+ }
+ if (bFace && bFace->GetMark()) {
result += 2;
+ }
return result;
}
OWXEdge ViewEdgeXBuilder::FindNextWEdge(const OWXEdge &iEdge)
{
- if (Nature::NO_FEATURE == iEdge.e->nature())
+ if (Nature::NO_FEATURE == iEdge.e->nature()) {
return OWXEdge(NULL, true);
+ }
WVertex *v;
- if (true == iEdge.order)
+ if (true == iEdge.order) {
v = iEdge.e->GetbVertex();
- else
+ }
+ else {
v = iEdge.e->GetaVertex();
+ }
- if (((WXVertex *)v)->isFeature())
+ if (((WXVertex *)v)->isFeature()) {
return 0; /* XXX eeek? NULL? OWXEdge(NULL, true/false)?*/
+ }
int faceMarks = retrieveFaceMarks(iEdge.e);
vector<WEdge *> &vEdges = (v)->GetEdges();
for (vector<WEdge *>::iterator ve = vEdges.begin(), veend = vEdges.end(); ve != veend; ve++) {
WXEdge *wxe = dynamic_cast<WXEdge *>(*ve);
- if (wxe == iEdge.e)
+ if (wxe == iEdge.e) {
continue; // same edge as the one processed
+ }
- if (wxe->nature() != iEdge.e->nature())
+ if (wxe->nature() != iEdge.e->nature()) {
continue;
+ }
// check face mark continuity
- if (retrieveFaceMarks(wxe) != faceMarks)
+ if (retrieveFaceMarks(wxe) != faceMarks) {
continue;
+ }
if (wxe->GetaVertex() == v) {
// That means that the face necesarily lies on the edge left.
@@ -596,31 +643,38 @@ OWXEdge ViewEdgeXBuilder::FindNextWEdge(const OWXEdge &iEdge)
OWXEdge ViewEdgeXBuilder::FindPreviousWEdge(const OWXEdge &iEdge)
{
- if (Nature::NO_FEATURE == iEdge.e->nature())
+ if (Nature::NO_FEATURE == iEdge.e->nature()) {
return OWXEdge(NULL, true);
+ }
WVertex *v;
- if (true == iEdge.order)
+ if (true == iEdge.order) {
v = iEdge.e->GetaVertex();
- else
+ }
+ else {
v = iEdge.e->GetbVertex();
+ }
- if (((WXVertex *)v)->isFeature())
+ if (((WXVertex *)v)->isFeature()) {
return 0;
+ }
int faceMarks = retrieveFaceMarks(iEdge.e);
vector<WEdge *> &vEdges = (v)->GetEdges();
for (vector<WEdge *>::iterator ve = vEdges.begin(), veend = vEdges.end(); ve != veend; ve++) {
WXEdge *wxe = dynamic_cast<WXEdge *>(*ve);
- if (wxe == iEdge.e)
+ if (wxe == iEdge.e) {
continue; // same edge as the one processed
+ }
- if (wxe->nature() != iEdge.e->nature())
+ if (wxe->nature() != iEdge.e->nature()) {
continue;
+ }
// check face mark continuity
- if (retrieveFaceMarks(wxe) != faceMarks)
+ if (retrieveFaceMarks(wxe) != faceMarks) {
continue;
+ }
if (wxe->GetbVertex() == v) {
return OWXEdge(wxe, true);
@@ -685,8 +739,9 @@ FEdge *ViewEdgeXBuilder::BuildSharpFEdge(FEdge *feprevious, const OWXEdge &iwe)
fe->setNormalA(normalA);
fe->setNormalB(normalB);
fe->setPreviousEdge(feprevious);
- if (feprevious)
+ if (feprevious) {
feprevious->setNextEdge(fe);
+ }
_pCurrentSShape->AddEdge(fe);
va->AddFEdge(fe);
vb->AddFEdge(fe);
@@ -703,10 +758,12 @@ FEdge *ViewEdgeXBuilder::BuildSharpFEdge(FEdge *feprevious, const OWXEdge &iwe)
bool ViewEdgeXBuilder::stopSharpViewEdge(WXEdge *iEdge)
{
- if (NULL == iEdge)
+ if (NULL == iEdge) {
return true;
- if (iEdge->userdata == 0)
+ }
+ if (iEdge->userdata == 0) {
return false;
+ }
return true;
}
@@ -744,8 +801,9 @@ SVertex *ViewEdgeXBuilder::MakeSVertex(Vec3r &iPoint, bool shared)
ViewVertex *ViewEdgeXBuilder::MakeViewVertex(SVertex *iSVertex)
{
ViewVertex *vva = iSVertex->viewvertex();
- if (vva)
+ if (vva) {
return vva;
+ }
vva = new NonTVertex(iSVertex);
// Add the view vertex to the ViewShape svertex list:
_pCurrentVShape->AddVertex(vva);
diff --git a/source/blender/freestyle/intern/view_map/ViewMap.cpp b/source/blender/freestyle/intern/view_map/ViewMap.cpp
index 0b352be1a89..0d52b88118b 100644
--- a/source/blender/freestyle/intern/view_map/ViewMap.cpp
+++ b/source/blender/freestyle/intern/view_map/ViewMap.cpp
@@ -133,8 +133,9 @@ const ViewEdge *ViewMap::getClosestViewEdge(real x, real y) const
winner = (*fe);
}
}
- if (!winner)
+ if (!winner) {
return NULL;
+ }
return winner->viewedge();
}
@@ -161,10 +162,12 @@ TVertex *ViewMap::CreateTVertex(const Vec3r &iA3D,
real distb = Ib->point2D()[2];
TVertex *tvertex;
- if (dista < distb)
+ if (dista < distb) {
tvertex = new TVertex(Ia, Ib);
- else
+ }
+ else {
tvertex = new TVertex(Ib, Ia);
+ }
tvertex->setId(id);
@@ -183,8 +186,9 @@ TVertex *ViewMap::CreateTVertex(const Vec3r &iA3D,
ViewVertex *ViewMap::InsertViewVertex(SVertex *iVertex, vector<ViewEdge *> &newViewEdges)
{
NonTVertex *vva = dynamic_cast<NonTVertex *>(iVertex->viewvertex());
- if (vva)
+ if (vva) {
return vva;
+ }
// because it is not already a ViewVertex, this SVertex must have only 2 FEdges. The incoming one
// still belongs to ioEdge, the outgoing one now belongs to newVEdge
const vector<FEdge *> &fedges = iVertex->fedges();
@@ -201,8 +205,9 @@ ViewVertex *ViewMap::InsertViewVertex(SVertex *iVertex, vector<ViewEdge *> &newV
if ((*fe)->vertexA() == iVertex) {
fbegin = (*fe);
}
- if ((fbegin != NULL) && (fend != NULL))
+ if ((fbegin != NULL) && (fend != NULL)) {
break;
+ }
}
ViewEdge *ioEdge = fbegin->viewedge();
ViewShape *vshape = ioEdge->viewShape();
@@ -249,8 +254,9 @@ ViewVertex *ViewMap::InsertViewVertex(SVertex *iVertex, vector<ViewEdge *> &newV
vva->AddIncomingViewEdge(ioEdge);
NonTVertex *vvb = dynamic_cast<NonTVertex *>(newVEdge->B());
- if (vvb)
+ if (vvb) {
vvb->Replace(ioEdge, newVEdge);
+ }
// update ViewShape
// vshape->AddEdge(newVEdge);
@@ -293,15 +299,19 @@ FEdge *ViewMap::Connect(FEdge *ioEdge, SVertex *ioVertex, vector<ViewEdge *> &oN
static bool ViewEdgeComp(ViewVertex::directedViewEdge &dve1, ViewVertex::directedViewEdge &dve2)
{
FEdge *fe1;
- if (dve1.second)
+ if (dve1.second) {
fe1 = dve1.first->fedgeB();
- else
+ }
+ else {
fe1 = dve1.first->fedgeA();
+ }
FEdge *fe2;
- if (dve2.second)
+ if (dve2.second) {
fe2 = dve2.first->fedgeB();
- else
+ }
+ else {
fe2 = dve2.first->fedgeA();
+ }
Vec3r V1 = fe1->orientation2d();
Vec2r v1(V1.x(), V1.y());
@@ -310,16 +320,20 @@ static bool ViewEdgeComp(ViewVertex::directedViewEdge &dve1, ViewVertex::directe
Vec2r v2(V2.x(), V2.y());
v2.normalize();
if (v1.y() > 0) {
- if (v2.y() < 0)
+ if (v2.y() < 0) {
return true;
- else
+ }
+ else {
return (v1.x() > v2.x());
+ }
}
else {
- if (v2.y() > 0)
+ if (v2.y() > 0) {
return false;
- else
+ }
+ else {
return (v1.x() < v2.x());
+ }
}
return false;
}
@@ -333,8 +347,9 @@ void TVertex::setFrontEdgeA(ViewEdge *iFrontEdgeA, bool incoming)
_FrontEdgeA = directedViewEdge(iFrontEdgeA, incoming);
if (!_sortedEdges.empty()) {
edge_pointers_container::iterator dve = _sortedEdges.begin(), dveend = _sortedEdges.end();
- for (; (dve != dveend) && ViewEdgeComp(**dve, _FrontEdgeA); ++dve)
+ for (; (dve != dveend) && ViewEdgeComp(**dve, _FrontEdgeA); ++dve) {
;
+ }
_sortedEdges.insert(dve, &_FrontEdgeA);
}
else {
@@ -351,8 +366,9 @@ void TVertex::setFrontEdgeB(ViewEdge *iFrontEdgeB, bool incoming)
_FrontEdgeB = directedViewEdge(iFrontEdgeB, incoming);
if (!_sortedEdges.empty()) {
edge_pointers_container::iterator dve = _sortedEdges.begin(), dveend = _sortedEdges.end();
- for (; (dve != dveend) && ViewEdgeComp(**dve, _FrontEdgeB); ++dve)
+ for (; (dve != dveend) && ViewEdgeComp(**dve, _FrontEdgeB); ++dve) {
;
+ }
_sortedEdges.insert(dve, &_FrontEdgeB);
}
else {
@@ -369,8 +385,9 @@ void TVertex::setBackEdgeA(ViewEdge *iBackEdgeA, bool incoming)
_BackEdgeA = directedViewEdge(iBackEdgeA, incoming);
if (!_sortedEdges.empty()) {
edge_pointers_container::iterator dve = _sortedEdges.begin(), dveend = _sortedEdges.end();
- for (; (dve != dveend) && ViewEdgeComp(**dve, _BackEdgeA); ++dve)
+ for (; (dve != dveend) && ViewEdgeComp(**dve, _BackEdgeA); ++dve) {
;
+ }
_sortedEdges.insert(dve, &_BackEdgeA);
}
else {
@@ -387,8 +404,9 @@ void TVertex::setBackEdgeB(ViewEdge *iBackEdgeB, bool incoming)
_BackEdgeB = directedViewEdge(iBackEdgeB, incoming);
if (!_sortedEdges.empty()) {
edge_pointers_container::iterator dve = _sortedEdges.begin(), dveend = _sortedEdges.end();
- for (; (dve != dveend) && ViewEdgeComp(**dve, _BackEdgeB); ++dve)
+ for (; (dve != dveend) && ViewEdgeComp(**dve, _BackEdgeB); ++dve) {
;
+ }
_sortedEdges.insert(dve, &_BackEdgeB);
}
else {
@@ -450,8 +468,9 @@ ViewVertex::edge_iterator TVertex::edges_iterator(ViewEdge *iEdge)
for (edge_pointers_container::iterator it = _sortedEdges.begin(), itend = _sortedEdges.end();
it != itend;
it++) {
- if ((*it)->first == iEdge)
+ if ((*it)->first == iEdge) {
return edge_iterator(_sortedEdges.begin(), _sortedEdges.end(), it);
+ }
}
return edge_iterator(_sortedEdges.begin(), _sortedEdges.end(), _sortedEdges.begin());
@@ -475,8 +494,9 @@ ViewVertex::const_edge_iterator TVertex::edges_iterator(ViewEdge *iEdge) const
itend = _sortedEdges.end();
it != itend;
it++) {
- if ((*it)->first == iEdge)
+ if ((*it)->first == iEdge) {
return const_edge_iterator(_sortedEdges.begin(), _sortedEdges.end(), it);
+ }
}
return const_edge_iterator(_sortedEdges.begin(), _sortedEdges.end(), _sortedEdges.begin());
@@ -511,9 +531,10 @@ ViewVertexInternal::orientedViewEdgeIterator TVertex::edgesIterator(ViewEdge *iE
for (edge_pointers_container::iterator it = _sortedEdges.begin(), itend = _sortedEdges.end();
it != itend;
it++) {
- if ((*it)->first == iEdge)
+ if ((*it)->first == iEdge) {
return ViewVertexInternal::orientedViewEdgeIterator(
_sortedEdges.begin(), _sortedEdges.end(), it);
+ }
}
return ViewVertexInternal::orientedViewEdgeIterator(
_sortedEdges.begin(), _sortedEdges.end(), _sortedEdges.begin());
@@ -533,8 +554,9 @@ void NonTVertex::AddOutgoingViewEdge(ViewEdge *iVEdge)
directedViewEdge idve(iVEdge, false);
if (!_ViewEdges.empty()) {
edges_container::iterator dve = _ViewEdges.begin(), dveend = _ViewEdges.end();
- for (; (dve != dveend) && ViewEdgeComp(*dve, idve); ++dve)
+ for (; (dve != dveend) && ViewEdgeComp(*dve, idve); ++dve) {
;
+ }
_ViewEdges.insert(dve, idve);
}
else {
@@ -548,8 +570,9 @@ void NonTVertex::AddIncomingViewEdge(ViewEdge *iVEdge)
directedViewEdge idve(iVEdge, true);
if (!_ViewEdges.empty()) {
edges_container::iterator dve = _ViewEdges.begin(), dveend = _ViewEdges.end();
- for (; (dve != dveend) && ViewEdgeComp(*dve, idve); ++dve)
+ for (; (dve != dveend) && ViewEdgeComp(*dve, idve); ++dve) {
;
+ }
_ViewEdges.insert(dve, idve);
}
else {
@@ -582,8 +605,9 @@ ViewVertex::edge_iterator NonTVertex::edges_iterator(ViewEdge *iEdge)
{
for (edges_container::iterator it = _ViewEdges.begin(), itend = _ViewEdges.end(); it != itend;
it++) {
- if ((it)->first == iEdge)
+ if ((it)->first == iEdge) {
return edge_iterator(_ViewEdges.begin(), _ViewEdges.end(), it);
+ }
}
return edge_iterator(_ViewEdges.begin(), _ViewEdges.end(), _ViewEdges.begin());
}
@@ -593,8 +617,9 @@ ViewVertex::const_edge_iterator NonTVertex::edges_iterator(ViewEdge *iEdge) cons
for (edges_container::const_iterator it = _ViewEdges.begin(), itend = _ViewEdges.end();
it != itend;
it++) {
- if ((it)->first == iEdge)
+ if ((it)->first == iEdge) {
return const_edge_iterator(_ViewEdges.begin(), _ViewEdges.end(), it);
+ }
}
return const_edge_iterator(_ViewEdges.begin(), _ViewEdges.end(), _ViewEdges.begin());
}
@@ -615,9 +640,10 @@ ViewVertexInternal::orientedViewEdgeIterator NonTVertex::edgesIterator(ViewEdge
{
for (edges_container::iterator it = _ViewEdges.begin(), itend = _ViewEdges.end(); it != itend;
it++) {
- if ((it)->first == iEdge)
+ if ((it)->first == iEdge) {
return ViewVertexInternal::orientedViewEdgeIterator(
_ViewEdges.begin(), _ViewEdges.end(), it);
+ }
}
return ViewVertexInternal::orientedViewEdgeIterator(
_ViewEdges.begin(), _ViewEdges.end(), _ViewEdges.begin());
diff --git a/source/blender/freestyle/intern/view_map/ViewMap.h b/source/blender/freestyle/intern/view_map/ViewMap.h
index 9b1eab0d905..a6ca4e3c072 100644
--- a/source/blender/freestyle/intern/view_map/ViewMap.h
+++ b/source/blender/freestyle/intern/view_map/ViewMap.h
@@ -593,14 +593,16 @@ class TVertex : public ViewVertex {
const vector<FEdge *> &vfEdges = _FrontSVertex->fedges();
vector<FEdge *>::const_iterator fe, fend;
for (fe = vfEdges.begin(), fend = vfEdges.end(); fe != fend; fe++) {
- if ((*fe) == iFEdge)
+ if ((*fe) == iFEdge) {
return _FrontSVertex;
+ }
}
const vector<FEdge *> &vbEdges = _BackSVertex->fedges();
for (fe = vbEdges.begin(), fend = vbEdges.end(); fe != fend; fe++) {
- if ((*fe) == iFEdge)
+ if ((*fe) == iFEdge) {
return _BackSVertex;
+ }
}
return NULL;
}
@@ -613,14 +615,18 @@ class TVertex : public ViewVertex {
*/
virtual ViewEdge *mate(ViewEdge *iEdgeA)
{
- if (iEdgeA == _FrontEdgeA.first)
+ if (iEdgeA == _FrontEdgeA.first) {
return _FrontEdgeB.first;
- if (iEdgeA == _FrontEdgeB.first)
+ }
+ if (iEdgeA == _FrontEdgeB.first) {
return _FrontEdgeA.first;
- if (iEdgeA == _BackEdgeA.first)
+ }
+ if (iEdgeA == _BackEdgeA.first) {
return _BackEdgeB.first;
- if (iEdgeA == _BackEdgeB.first)
+ }
+ if (iEdgeA == _BackEdgeB.first) {
return _BackEdgeA.first;
+ }
return NULL;
}
@@ -818,10 +824,12 @@ class NonTVertex : public ViewVertex {
inline void AddViewEdge(ViewEdge *iVEdge, bool incoming = true)
{
- if (incoming)
+ if (incoming) {
AddIncomingViewEdge(iVEdge);
- else
+ }
+ else {
AddOutgoingViewEdge(iVEdge);
+ }
}
/* Replaces old edge by new edge */
@@ -1059,8 +1067,9 @@ class ViewEdge : public Interface1D {
#endif
// only the last splitted deletes this id
if (_splittingId) {
- if (*_splittingId == _Id)
+ if (*_splittingId == _Id) {
delete _splittingId;
+ }
}
}
@@ -1106,8 +1115,9 @@ class ViewEdge : public Interface1D {
/*! Tells whether this ViewEdge forms a closed loop or not. */
inline bool isClosed()
{
- if (!__B)
+ if (!__B) {
return true;
+ }
return false;
}
@@ -1314,8 +1324,9 @@ class ViewEdge : public Interface1D {
inline const bool occludee_empty() const
{
- if (_aShape == 0)
+ if (_aShape == 0) {
return true;
+ }
return false;
}
@@ -1658,13 +1669,15 @@ void ViewShape::SplitEdge(FEdge *fe,
sv2 = (*vv)->backSVertex();
if (sv->shape() != sv2->shape()) {
- if (sv->shape() != _SShape)
+ if (sv->shape() != _SShape) {
sv = sv2;
+ }
}
else {
// if the shape is the same we can safely differ the two vertices using their ids:
- if (sv->getId() != fe->vertexA()->getId())
+ if (sv->getId() != fe->vertexA()->getId()) {
sv = sv2;
+ }
}
vva = vEdge->A();
@@ -1705,10 +1718,12 @@ void ViewShape::SplitEdge(FEdge *fe,
newVEdge->setFEdgeA(newEdge);
// newVEdge->setFEdgeB(fe);
// If our original viewedge is made of one FEdge, then
- if ((vEdge->fedgeA() == vEdge->fedgeB()) || (fe == vEdge->fedgeB()))
+ if ((vEdge->fedgeA() == vEdge->fedgeB()) || (fe == vEdge->fedgeB())) {
newVEdge->setFEdgeB(newEdge);
- else
+ }
+ else {
newVEdge->setFEdgeB(vEdge->fedgeB()); // MODIF
+ }
Id *newId = vEdge->splittingId();
if (newId == 0) {
@@ -1729,8 +1744,9 @@ void ViewShape::SplitEdge(FEdge *fe,
// add new edge to the list of new edges passed as argument:
ioNewViewEdges.push_back(newVEdge);
- if (0 != vvb)
+ if (0 != vvb) {
vvb->Replace((vEdge), newVEdge);
+ }
// we split the view edge:
vEdge->setB((*vv));
@@ -1795,8 +1811,9 @@ inline real ViewEdge::local_average_density(float sigma, int iCombination) const
inline const SShape *ViewEdge::occluded_shape() const
{
- if (0 == _aShape)
+ if (0 == _aShape) {
return 0;
+ }
return _aShape->sshape();
}
diff --git a/source/blender/freestyle/intern/view_map/ViewMapAdvancedIterators.h b/source/blender/freestyle/intern/view_map/ViewMapAdvancedIterators.h
index 63343c33c4f..0ccf0d382a2 100644
--- a/source/blender/freestyle/intern/view_map/ViewMapAdvancedIterators.h
+++ b/source/blender/freestyle/intern/view_map/ViewMapAdvancedIterators.h
@@ -206,20 +206,24 @@ class edge_iterator_base : public IteratorBase<Traits, InputIteratorTag_Traits>
public:
virtual bool begin() const
{
- if (_Nature & Nature::T_VERTEX)
+ if (_Nature & Nature::T_VERTEX) {
return (_tvertex_iter == _tbegin);
- // return (_tvertex_iter == _feA);
- else
+ // return (_tvertex_iter == _feA);
+ }
+ else {
return (_nontvertex_iter == _begin);
+ }
}
virtual bool end() const
{
- if (_Nature & Nature::T_VERTEX)
+ if (_Nature & Nature::T_VERTEX) {
// return (_tvertex_iter.first == 0);
return (_tvertex_iter == _tend);
- else
+ }
+ else {
return (_nontvertex_iter == _end);
+ }
}
// operators
@@ -242,10 +246,12 @@ class edge_iterator_base : public IteratorBase<Traits, InputIteratorTag_Traits>
// comparibility
virtual bool operator!=(const Self &b) const
{
- if (_Nature & Nature::T_VERTEX)
+ if (_Nature & Nature::T_VERTEX) {
return (_tvertex_iter != b._tvertex_iter);
- else
+ }
+ else {
return (_nontvertex_iter != b._nontvertex_iter);
+ }
}
virtual bool operator==(const Self &b) const
@@ -256,11 +262,13 @@ class edge_iterator_base : public IteratorBase<Traits, InputIteratorTag_Traits>
// dereferencing
virtual reference operator*() const
{
- if (_Nature & Nature::T_VERTEX)
+ if (_Nature & Nature::T_VERTEX) {
// return _tvertex_iter;
return **_tvertex_iter;
- else
+ }
+ else {
return (*_nontvertex_iter);
+ }
}
virtual pointer operator->() const
@@ -275,8 +283,9 @@ class edge_iterator_base : public IteratorBase<Traits, InputIteratorTag_Traits>
value_type tmp = (**_tvertex_iter);
++_tvertex_iter;
value_type tmp2 = (**_tvertex_iter);
- if (tmp2.first == tmp.first)
+ if (tmp2.first == tmp.first) {
++_tvertex_iter;
+ }
#if 0
// Hack to deal with cusp. the result of a cusp is a TVertex having two identical viewedges.
// In order to iterate properly, we chose to skip these last ones.
diff --git a/source/blender/freestyle/intern/view_map/ViewMapBuilder.cpp b/source/blender/freestyle/intern/view_map/ViewMapBuilder.cpp
index f990b7bd63a..fb237a9c2ca 100644
--- a/source/blender/freestyle/intern/view_map/ViewMapBuilder.cpp
+++ b/source/blender/freestyle/intern/view_map/ViewMapBuilder.cpp
@@ -93,22 +93,26 @@ static void findOccludee(FEdge *fe,
if (0 != face) {
skipFace = false;
- if (face == oface)
+ if (face == oface) {
continue;
+ }
- if (faceVertices.empty())
+ if (faceVertices.empty()) {
continue;
+ }
for (vector<WVertex *>::iterator fv = faceVertices.begin(), fvend = faceVertices.end();
fv != fvend;
++fv) {
- if ((*fv)->isBoundary())
+ if ((*fv)->isBoundary()) {
continue;
+ }
WVertex::incoming_edge_iterator iebegin = (*fv)->incoming_edges_begin();
WVertex::incoming_edge_iterator ieend = (*fv)->incoming_edges_end();
for (ie = iebegin; ie != ieend; ++ie) {
- if ((*ie) == 0)
+ if ((*ie) == 0) {
continue;
+ }
WFace *sface = (*ie)->GetbFace();
if (sface == oface) {
@@ -116,11 +120,13 @@ static void findOccludee(FEdge *fe,
break;
}
}
- if (skipFace)
+ if (skipFace) {
break;
+ }
}
- if (skipFace)
+ if (skipFace) {
continue;
+ }
}
else {
// check whether the edge and the polygon plane are coincident:
@@ -165,8 +171,9 @@ static void findOccludee(FEdge *fe,
}
}
- if (noIntersection)
+ if (noIntersection) {
*oaWFace = NULL;
+ }
}
}
@@ -249,8 +256,9 @@ static int computeVisibility(ViewMap *viewMap,
WFace *oface;
bool skipFace;
- if (face)
+ if (face) {
face->RetrieveVertexList(faceVertices);
+ }
I occluders(grid, center, epsilon);
@@ -315,14 +323,16 @@ static int computeVisibility(ViewMap *viewMap,
for (vector<WVertex *>::iterator fv = faceVertices.begin(), fvend = faceVertices.end();
fv != fvend;
++fv) {
- if ((*fv)->isBoundary())
+ if ((*fv)->isBoundary()) {
continue;
+ }
WVertex::incoming_edge_iterator iebegin = (*fv)->incoming_edges_begin();
WVertex::incoming_edge_iterator ieend = (*fv)->incoming_edges_end();
for (ie = iebegin; ie != ieend; ++ie) {
- if ((*ie) == 0)
+ if ((*ie) == 0) {
continue;
+ }
WFace *sface = (*ie)->GetbFace();
// WFace *sfacea = (*ie)->GetaFace();
@@ -332,8 +342,9 @@ static int computeVisibility(ViewMap *viewMap,
break;
}
}
- if (skipFace)
+ if (skipFace) {
break;
+ }
}
if (skipFace) {
#if LOGGING
@@ -395,8 +406,9 @@ static int computeVisibility(ViewMap *viewMap,
}
++qi;
- if (!grid.enableQI())
+ if (!grid.enableQI()) {
break;
+ }
}
occluders.reportDepth(center, u, t);
@@ -440,8 +452,9 @@ static void computeCumulativeVisibility(ViewMap *ioViewMap,
unsigned qiMajority;
for (vector<ViewEdge *>::iterator ve = vedges.begin(), veend = vedges.end(); ve != veend; ve++) {
if (iRenderMonitor) {
- if (iRenderMonitor->testBreak())
+ if (iRenderMonitor->testBreak()) {
break;
+ }
if (cnt % cntStep == 0) {
stringstream ss;
ss << "Freestyle: Visibility computations " << (100 * cnt / vedges.size()) << "%";
@@ -645,8 +658,9 @@ static void computeDetailedVisibility(ViewMap *ioViewMap,
unsigned maxIndex, maxCard;
unsigned qiMajority;
for (vector<ViewEdge *>::iterator ve = vedges.begin(), veend = vedges.end(); ve != veend; ve++) {
- if (iRenderMonitor && iRenderMonitor->testBreak())
+ if (iRenderMonitor && iRenderMonitor->testBreak()) {
break;
+ }
#if LOGGING
if (_global.debug & G_DEBUG_FREESTYLE) {
cout << "Processing ViewEdge " << (*ve)->getId() << endl;
@@ -1243,8 +1257,9 @@ void ViewMapBuilder::computeInitialViewEdges(WingedEdge &we)
SShape *psShape;
for (vector<WShape *>::const_iterator it = wshapes.begin(); it != wshapes.end(); it++) {
- if (_pRenderMonitor && _pRenderMonitor->testBreak())
+ if (_pRenderMonitor && _pRenderMonitor->testBreak()) {
break;
+ }
// create the embedding
psShape = new SShape;
@@ -1286,10 +1301,12 @@ void ViewMapBuilder::computeCusps(ViewMap *ioViewMap)
ViewMap::viewedges_container &vedges = ioViewMap->ViewEdges();
ViewMap::viewedges_container::iterator ve = vedges.begin(), veend = vedges.end();
for (; ve != veend; ++ve) {
- if (_pRenderMonitor && _pRenderMonitor->testBreak())
+ if (_pRenderMonitor && _pRenderMonitor->testBreak()) {
break;
- if ((!((*ve)->getNature() & Nature::SILHOUETTE)) || (!((*ve)->fedgeA()->isSmooth())))
+ }
+ if ((!((*ve)->getNature() & Nature::SILHOUETTE)) || (!((*ve)->fedgeA()->isSmooth()))) {
continue;
+ }
FEdge *fe = (*ve)->fedgeA();
FEdge *fefirst = fe;
bool first = true;
@@ -1312,10 +1329,12 @@ void ViewMapBuilder::computeCusps(ViewMap *ioViewMap)
}
viewvector.normalize();
if (first) {
- if (((crossP) * (viewvector)) > 0)
+ if (((crossP) * (viewvector)) > 0) {
positive = true;
- else
+ }
+ else {
positive = false;
+ }
first = false;
}
// If we're in a positive part, we need a stronger negative value to change
@@ -1327,8 +1346,9 @@ void ViewMapBuilder::computeCusps(ViewMap *ioViewMap)
// creates and insert cusp
cusp = dynamic_cast<NonTVertex *>(
ioViewMap->InsertViewVertex(fes->vertexA(), newVEdges));
- if (cusp)
+ if (cusp) {
cusp->setNature(cusp->getNature() | Nature::CUSP);
+ }
}
}
else {
@@ -1337,8 +1357,9 @@ void ViewMapBuilder::computeCusps(ViewMap *ioViewMap)
positive = true;
cusp = dynamic_cast<NonTVertex *>(
ioViewMap->InsertViewVertex(fes->vertexA(), newVEdges));
- if (cusp)
+ if (cusp) {
cusp->setNature(cusp->getNature() | Nature::CUSP);
+ }
}
}
fe = fe->nextEdge();
@@ -1557,8 +1578,9 @@ void ViewMapBuilder::ComputeRayCastingVisibility(ViewMap *ioViewMap, real epsilo
unsigned qiMajority;
static unsigned timestamp = 1;
for (vector<ViewEdge *>::iterator ve = vedges.begin(), veend = vedges.end(); ve != veend; ve++) {
- if (_pRenderMonitor && _pRenderMonitor->testBreak())
+ if (_pRenderMonitor && _pRenderMonitor->testBreak()) {
break;
+ }
#if LOGGING
if (_global.debug & G_DEBUG_FREESTYLE) {
cout << "Processing ViewEdge " << (*ve)->getId() << endl;
@@ -1649,8 +1671,10 @@ void ViewMapBuilder::ComputeRayCastingVisibility(ViewMap *ioViewMap, real epsilo
// qi --
(*ve)->setQI(maxIndex);
// occluders --
- for (set<ViewShape *>::iterator o = occluders.begin(), oend = occluders.end(); o != oend; ++o)
+ for (set<ViewShape *>::iterator o = occluders.begin(), oend = occluders.end(); o != oend;
+ ++o) {
(*ve)->AddOccluder((*o));
+ }
#if LOGGING
if (_global.debug & G_DEBUG_FREESTYLE) {
cout << "\tConclusion: QI = " << maxIndex << ", " << (*ve)->occluders_size() << " occluders."
@@ -1712,8 +1736,9 @@ void ViewMapBuilder::ComputeFastRayCastingVisibility(ViewMap *ioViewMap, real ep
static unsigned timestamp = 1;
bool even_test;
for (vector<ViewEdge *>::iterator ve = vedges.begin(), veend = vedges.end(); ve != veend; ve++) {
- if (_pRenderMonitor && _pRenderMonitor->testBreak())
+ if (_pRenderMonitor && _pRenderMonitor->testBreak()) {
break;
+ }
festart = (*ve)->fedgeA();
fe = (*ve)->fedgeA();
@@ -1722,10 +1747,12 @@ void ViewMapBuilder::ComputeFastRayCastingVisibility(ViewMap *ioViewMap, real ep
qiMajority++;
fe = fe->nextEdge();
} while (fe && fe != festart);
- if (qiMajority >= 4)
+ if (qiMajority >= 4) {
qiMajority >>= 2;
- else
+ }
+ else {
qiMajority = 1;
+ }
set<ViewShape *> occluders;
@@ -1834,8 +1861,9 @@ void ViewMapBuilder::ComputeVeryFastRayCastingVisibility(ViewMap *ioViewMap, rea
Polygon3r *aFace = NULL;
static unsigned timestamp = 1;
for (vector<ViewEdge *>::iterator ve = vedges.begin(), veend = vedges.end(); ve != veend; ve++) {
- if (_pRenderMonitor && _pRenderMonitor->testBreak())
+ if (_pRenderMonitor && _pRenderMonitor->testBreak()) {
break;
+ }
set<ViewShape *> occluders;
@@ -1909,22 +1937,26 @@ void ViewMapBuilder::FindOccludee(FEdge *fe,
if (face) {
skipFace = false;
- if (face == oface)
+ if (face == oface) {
continue;
+ }
- if (faceVertices.empty())
+ if (faceVertices.empty()) {
continue;
+ }
for (vector<WVertex *>::iterator fv = faceVertices.begin(), fvend = faceVertices.end();
fv != fvend;
++fv) {
- if ((*fv)->isBoundary())
+ if ((*fv)->isBoundary()) {
continue;
+ }
WVertex::incoming_edge_iterator iebegin = (*fv)->incoming_edges_begin();
WVertex::incoming_edge_iterator ieend = (*fv)->incoming_edges_end();
for (ie = iebegin; ie != ieend; ++ie) {
- if ((*ie) == 0)
+ if ((*ie) == 0) {
continue;
+ }
WFace *sface = (*ie)->GetbFace();
if (sface == oface) {
@@ -1932,16 +1964,19 @@ void ViewMapBuilder::FindOccludee(FEdge *fe,
break;
}
}
- if (skipFace)
+ if (skipFace) {
break;
+ }
}
- if (skipFace)
+ if (skipFace) {
continue;
+ }
}
else {
if (GeomUtils::COINCIDENT ==
- GeomUtils::intersectRayPlane(origin, edgeDir, normal, d, t, epsilon))
+ GeomUtils::intersectRayPlane(origin, edgeDir, normal, d, t, epsilon)) {
continue;
+ }
}
if ((*p)->rayIntersect(A, v, t, t_u, t_v)) {
if (fabs(v * normal) > 0.0001) {
@@ -1957,8 +1992,9 @@ void ViewMapBuilder::FindOccludee(FEdge *fe,
}
}
- if (noIntersection)
+ if (noIntersection) {
*oaPolygon = NULL;
+ }
}
}
@@ -1982,9 +2018,10 @@ void ViewMapBuilder::FindOccludee(
u = Vec3r(_viewpoint - A);
}
u.normalize();
- if (A < iGrid->getOrigin())
+ if (A < iGrid->getOrigin()) {
cerr << "Warning: point is out of the grid for fedge " << fe->getId().getFirst() << "-"
<< fe->getId().getSecond() << endl;
+ }
vector<WVertex *> faceVertices;
@@ -1993,8 +2030,9 @@ void ViewMapBuilder::FindOccludee(
FEdgeSmooth *fes = dynamic_cast<FEdgeSmooth *>(fe);
face = (WFace *)fes->face();
}
- if (face)
+ if (face) {
face->RetrieveVertexList(faceVertices);
+ }
return FindOccludee(
fe, iGrid, epsilon, oaPolygon, timestamp, u, A, origin, edgeDir, faceVertices);
@@ -2073,8 +2111,9 @@ int ViewMapBuilder::ComputeRayCastingVisibility(FEdge *fe,
WFace *oface;
bool skipFace;
OccludersSet::iterator p, pend;
- if (face)
+ if (face) {
face->RetrieveVertexList(faceVertices);
+ }
for (p = occluders.begin(), pend = occluders.end(); p != pend; p++) {
// If we're dealing with an exact silhouette, check whether we must take care of this occluder
@@ -2121,14 +2160,16 @@ int ViewMapBuilder::ComputeRayCastingVisibility(FEdge *fe,
for (vector<WVertex *>::iterator fv = faceVertices.begin(), fvend = faceVertices.end();
fv != fvend;
++fv) {
- if ((*fv)->isBoundary())
+ if ((*fv)->isBoundary()) {
continue;
+ }
WVertex::incoming_edge_iterator iebegin = (*fv)->incoming_edges_begin();
WVertex::incoming_edge_iterator ieend = (*fv)->incoming_edges_end();
for (ie = iebegin; ie != ieend; ++ie) {
- if ((*ie) == 0)
+ if ((*ie) == 0) {
continue;
+ }
WFace *sface = (*ie)->GetbFace();
// WFace *sfacea = (*ie)->GetaFace();
@@ -2138,8 +2179,9 @@ int ViewMapBuilder::ComputeRayCastingVisibility(FEdge *fe,
break;
}
}
- if (skipFace)
+ if (skipFace) {
break;
+ }
}
if (skipFace) {
#if LOGGING
@@ -2185,8 +2227,9 @@ int ViewMapBuilder::ComputeRayCastingVisibility(FEdge *fe,
ViewShape *vshape = _ViewMap->viewShape(f->GetVertex(0)->shape()->GetId());
oOccluders.insert(vshape);
++qi;
- if (!_EnableQI)
+ if (!_EnableQI) {
break;
+ }
}
}
}
@@ -2241,12 +2284,15 @@ struct less_SVertex2D : public binary_function<SVertex *, SVertex *, bool> {
Vec3r A = x->point2D();
Vec3r B = y->point2D();
for (unsigned int i = 0; i < 3; i++) {
- if ((fabs(A[i] - B[i])) < epsilon)
+ if ((fabs(A[i] - B[i])) < epsilon) {
continue;
- if (A[i] < B[i])
+ }
+ if (A[i] < B[i]) {
return true;
- if (A[i] > B[i])
+ }
+ if (A[i] > B[i]) {
return false;
+ }
}
return false;
}
@@ -2267,8 +2313,9 @@ struct less_Intersection : public binary_function<intersection *, intersection *
{
real tx = x->getParameter(edge);
real ty = y->getParameter(edge);
- if (tx > ty)
+ if (tx > ty) {
return true;
+ }
return false;
}
};
@@ -2341,8 +2388,9 @@ void ViewMapBuilder::ComputeSweepLineIntersections(ViewMap *ioViewMap, real epsi
vector<segment *> vsegments;
for (vector<SVertex *>::iterator sv = svertices.begin(), svend = svertices.end(); sv != svend;
sv++) {
- if (_pRenderMonitor && _pRenderMonitor->testBreak())
+ if (_pRenderMonitor && _pRenderMonitor->testBreak()) {
break;
+ }
const vector<FEdge *> &vedges = (*sv)->fedges();
@@ -2378,8 +2426,9 @@ void ViewMapBuilder::ComputeSweepLineIntersections(ViewMap *ioViewMap, real epsi
}
// reset userdata:
- for (fe = ioEdges.begin(), fend = ioEdges.end(); fe != fend; fe++)
+ for (fe = ioEdges.begin(), fend = ioEdges.end(); fe != fend; fe++) {
(*fe)->userdata = NULL;
+ }
// list containing the new edges resulting from splitting operations.
vector<FEdge *> newEdges;
@@ -2409,24 +2458,28 @@ void ViewMapBuilder::ComputeSweepLineIntersections(ViewMap *ioViewMap, real epsi
real ta = (*i)->tA;
real tb = (*i)->tB;
- if ((ta < -epsilon) || (ta > 1 + epsilon))
+ if ((ta < -epsilon) || (ta > 1 + epsilon)) {
cerr << "Warning: 2D intersection out of range for edge " << fA->vertexA()->getId() << " - "
<< fA->vertexB()->getId() << endl;
+ }
- if ((tb < -epsilon) || (tb > 1 + epsilon))
+ if ((tb < -epsilon) || (tb > 1 + epsilon)) {
cerr << "Warning: 2D intersection out of range for edge " << fB->vertexA()->getId() << " - "
<< fB->vertexB()->getId() << endl;
+ }
real Ta = SilhouetteGeomEngine::ImageToWorldParameter(fA, ta);
real Tb = SilhouetteGeomEngine::ImageToWorldParameter(fB, tb);
- if ((Ta < -epsilon) || (Ta > 1 + epsilon))
+ if ((Ta < -epsilon) || (Ta > 1 + epsilon)) {
cerr << "Warning: 3D intersection out of range for edge " << fA->vertexA()->getId() << " - "
<< fA->vertexB()->getId() << endl;
+ }
- if ((Tb < -epsilon) || (Tb > 1 + epsilon))
+ if ((Tb < -epsilon) || (Tb > 1 + epsilon)) {
cerr << "Warning: 3D intersection out of range for edge " << fB->vertexA()->getId() << " - "
<< fB->vertexB()->getId() << endl;
+ }
#if 0
if (_global.debug & G_DEBUG_FREESTYLE) {
@@ -2488,8 +2541,9 @@ void ViewMapBuilder::ComputeSweepLineIntersections(ViewMap *ioViewMap, real epsi
vector<intersection *> &eIntersections = (*s)->intersections();
// we first need to sort these intersections from farther to closer to A
sort(eIntersections.begin(), eIntersections.end(), less_Intersection(*s));
- for (i = eIntersections.begin(), iend = eIntersections.end(); i != iend; i++)
+ for (i = eIntersections.begin(), iend = eIntersections.end(); i != iend; i++) {
edgeVVertices.push_back((TVertex *)(*i)->userdata);
+ }
shape->SplitEdge(fedge, edgeVVertices, ioViewMap->FEdges(), ioViewMap->ViewEdges());
@@ -2503,8 +2557,9 @@ void ViewMapBuilder::ComputeSweepLineIntersections(ViewMap *ioViewMap, real epsi
}
// reset userdata:
- for (fe = ioEdges.begin(), fend = ioEdges.end(); fe != fend; fe++)
+ for (fe = ioEdges.begin(), fend = ioEdges.end(); fe != fend; fe++) {
(*fe)->userdata = NULL;
+ }
// delete segments
if (!segments.empty()) {
diff --git a/source/blender/freestyle/intern/view_map/ViewMapIO.cpp b/source/blender/freestyle/intern/view_map/ViewMapIO.cpp
index 24ed798709a..f844a227ec5 100644
--- a/source/blender/freestyle/intern/view_map/ViewMapIO.cpp
+++ b/source/blender/freestyle/intern/view_map/ViewMapIO.cpp
@@ -113,23 +113,27 @@ inline int load(istream &in, FrsMaterial &m)
int i;
// Diffuse
- for (i = 0; i < 4; i++)
+ for (i = 0; i < 4; i++) {
READ(tmp_array[i]);
+ }
m.setDiffuse(tmp_array[0], tmp_array[1], tmp_array[2], tmp_array[3]);
// Specular
- for (i = 0; i < 4; i++)
+ for (i = 0; i < 4; i++) {
READ(tmp_array[i]);
+ }
m.setSpecular(tmp_array[0], tmp_array[1], tmp_array[2], tmp_array[3]);
// Ambient
- for (i = 0; i < 4; i++)
+ for (i = 0; i < 4; i++) {
READ(tmp_array[i]);
+ }
m.setAmbient(tmp_array[0], tmp_array[1], tmp_array[2], tmp_array[3]);
// Emission
- for (i = 0; i < 4; i++)
+ for (i = 0; i < 4; i++) {
READ(tmp_array[i]);
+ }
m.setEmission(tmp_array[0], tmp_array[1], tmp_array[2], tmp_array[3]);
// Shininess
@@ -141,8 +145,9 @@ inline int load(istream &in, FrsMaterial &m)
static int load(istream &in, ViewShape *vs)
{
- if (!vs || !vs->sshape())
+ if (!vs || !vs->sshape()) {
return 1;
+ }
// SShape
@@ -217,8 +222,9 @@ static int load(istream &in, ViewShape *vs)
static int load(istream &in, FEdge *fe)
{
- if (!fe)
+ if (!fe) {
return 1;
+ }
bool b;
@@ -335,8 +341,9 @@ static int load(istream &in, FEdge *fe)
static int load(istream &in, SVertex *sv)
{
- if (!sv)
+ if (!sv) {
return 1;
+ }
// Id
Id::id_type id1, id2;
@@ -388,8 +395,9 @@ static int load(istream &in, SVertex *sv)
static int load(istream &in, ViewEdge *ve)
{
- if (!ve)
+ if (!ve) {
return 1;
+ }
unsigned tmp;
@@ -454,8 +462,9 @@ static int load(istream &in, ViewEdge *ve)
static int load(istream &in, ViewVertex *vv)
{
- if (!vv)
+ if (!vv) {
return 1;
+ }
unsigned tmp;
bool b;
@@ -584,20 +593,24 @@ inline int save(ostream &out, const FrsMaterial &m)
unsigned i;
// Diffuse
- for (i = 0; i < 4; i++)
+ for (i = 0; i < 4; i++) {
WRITE(m.diffuse()[i]);
+ }
// Specular
- for (i = 0; i < 4; i++)
+ for (i = 0; i < 4; i++) {
WRITE(m.specular()[i]);
+ }
// Ambient
- for (i = 0; i < 4; i++)
+ for (i = 0; i < 4; i++) {
WRITE(m.ambient()[i]);
+ }
// Emission
- for (i = 0; i < 4; i++)
+ for (i = 0; i < 4; i++) {
WRITE(m.emission()[i]);
+ }
// Shininess
float shininess = m.shininess();
@@ -633,8 +646,9 @@ static int save(ostream &out, ViewShape *vs)
// -> Material
unsigned int size = vs->sshape()->frs_materials().size();
WRITE(size);
- for (unsigned int i = 0; i < size; ++i)
+ for (unsigned int i = 0; i < size; ++i) {
save(out, vs->sshape()->frs_material(i));
+ }
// -> VerticesList (List)
tmp = vs->sshape()->getVertexList().size();
@@ -804,11 +818,13 @@ static int save(ostream &out, SVertex *sv)
// Note: the 'size()' method of a set doesn't seem to return the actual size of the given set, so
// we have to hack it...
set<Vec3r>::const_iterator i;
- for (i = sv->normals().begin(), tmp = 0; i != sv->normals().end(); i++, tmp++)
+ for (i = sv->normals().begin(), tmp = 0; i != sv->normals().end(); i++, tmp++) {
;
+ }
WRITE(tmp);
- for (i = sv->normals().begin(); i != sv->normals().end(); i++)
+ for (i = sv->normals().begin(); i != sv->normals().end(); i++) {
save(out, *i);
+ }
// FEdges (List)
tmp = sv->fedges().size();
@@ -952,8 +968,9 @@ static int save(ostream &out, ViewVertex *vv)
int load(istream &in, ViewMap *vm, ProgressBar *pb)
{
- if (!vm)
+ if (!vm) {
return 1;
+ }
// soc unused - unsigned tmp;
int err = 0;
@@ -1050,25 +1067,30 @@ int load(istream &in, ViewMap *vm, ProgressBar *pb)
SET_PROGRESS(1);
for (vector<ViewShape *>::const_iterator i4 = vm->ViewShapes().begin();
i4 != vm->ViewShapes().end();
- i4++)
+ i4++) {
err += Internal::load(in, *i4);
+ }
SET_PROGRESS(2);
- for (vector<FEdge *>::const_iterator i5 = vm->FEdges().begin(); i5 != vm->FEdges().end(); i5++)
+ for (vector<FEdge *>::const_iterator i5 = vm->FEdges().begin(); i5 != vm->FEdges().end(); i5++) {
err += Internal::load(in, *i5);
+ }
SET_PROGRESS(3);
for (vector<SVertex *>::const_iterator i6 = vm->SVertices().begin(); i6 != vm->SVertices().end();
- i6++)
+ i6++) {
err += Internal::load(in, *i6);
+ }
SET_PROGRESS(4);
for (vector<ViewEdge *>::const_iterator i7 = vm->ViewEdges().begin();
i7 != vm->ViewEdges().end();
- i7++)
+ i7++) {
err += Internal::load(in, *i7);
+ }
SET_PROGRESS(5);
for (vector<ViewVertex *>::const_iterator i8 = vm->ViewVertices().begin();
i8 != vm->ViewVertices().end();
- i8++)
+ i8++) {
err += Internal::load(in, *i8);
+ }
SET_PROGRESS(6);
// Read the shape id to index mapping
@@ -1086,8 +1108,9 @@ int load(istream &in, ViewMap *vm, ProgressBar *pb)
int save(ostream &out, ViewMap *vm, ProgressBar *pb)
{
- if (!vm)
+ if (!vm) {
return 1;
+ }
int err = 0;
@@ -1104,14 +1127,18 @@ int save(ostream &out, ViewMap *vm, ProgressBar *pb)
vm->ViewShapes()[i0]->userdata = POINTER_FROM_UINT(i0);
vm->ViewShapes()[i0]->sshape()->userdata = POINTER_FROM_UINT(i0);
}
- for (unsigned int i1 = 0; i1 < vm->FEdges().size(); i1++)
+ for (unsigned int i1 = 0; i1 < vm->FEdges().size(); i1++) {
vm->FEdges()[i1]->userdata = POINTER_FROM_UINT(i1);
- for (unsigned int i2 = 0; i2 < vm->SVertices().size(); i2++)
+ }
+ for (unsigned int i2 = 0; i2 < vm->SVertices().size(); i2++) {
vm->SVertices()[i2]->userdata = POINTER_FROM_UINT(i2);
- for (unsigned int i3 = 0; i3 < vm->ViewEdges().size(); i3++)
+ }
+ for (unsigned int i3 = 0; i3 < vm->ViewEdges().size(); i3++) {
vm->ViewEdges()[i3]->userdata = POINTER_FROM_UINT(i3);
- for (unsigned int i4 = 0; i4 < vm->ViewVertices().size(); i4++)
+ }
+ for (unsigned int i4 = 0; i4 < vm->ViewVertices().size(); i4++) {
vm->ViewVertices()[i4]->userdata = POINTER_FROM_UINT(i4);
+ }
// Write the current options
unsigned char flags = Options::getFlags();
@@ -1127,8 +1154,9 @@ int save(ostream &out, ViewMap *vm, ProgressBar *pb)
bool b = vm->FEdges()[0]->isSmooth();
WRITE(b);
for (unsigned int i = 0; i < size; i++) {
- while (i < size && (vm->FEdges()[i]->isSmooth() == b))
+ while (i < size && (vm->FEdges()[i]->isSmooth() == b)) {
i++;
+ }
if (i < size) {
WRITE(i);
b = !b;
@@ -1149,8 +1177,9 @@ int save(ostream &out, ViewMap *vm, ProgressBar *pb)
WRITE(nature);
nature &= ~Nature::VIEW_VERTEX;
for (unsigned int i = 0; i < size; i++) {
- while (i < size && (vm->ViewVertices()[i]->getNature() & nature))
+ while (i < size && (vm->ViewVertices()[i]->getNature() & nature)) {
i++;
+ }
if (i < size) {
WRITE(i);
nature = vm->ViewVertices()[i]->getNature() & ~Nature::VIEW_VERTEX;
@@ -1165,25 +1194,30 @@ int save(ostream &out, ViewMap *vm, ProgressBar *pb)
SET_PROGRESS(1);
for (vector<ViewShape *>::const_iterator i5 = vm->ViewShapes().begin();
i5 != vm->ViewShapes().end();
- i5++)
+ i5++) {
err += Internal::save(out, *i5);
+ }
SET_PROGRESS(2);
- for (vector<FEdge *>::const_iterator i6 = vm->FEdges().begin(); i6 != vm->FEdges().end(); i6++)
+ for (vector<FEdge *>::const_iterator i6 = vm->FEdges().begin(); i6 != vm->FEdges().end(); i6++) {
err += Internal::save(out, *i6);
+ }
SET_PROGRESS(3);
for (vector<SVertex *>::const_iterator i7 = vm->SVertices().begin(); i7 != vm->SVertices().end();
- i7++)
+ i7++) {
err += Internal::save(out, *i7);
+ }
SET_PROGRESS(4);
for (vector<ViewEdge *>::const_iterator i8 = vm->ViewEdges().begin();
i8 != vm->ViewEdges().end();
- i8++)
+ i8++) {
err += Internal::save(out, *i8);
+ }
SET_PROGRESS(5);
for (vector<ViewVertex *>::const_iterator i9 = vm->ViewVertices().begin();
i9 != vm->ViewVertices().end();
- i9++)
+ i9++) {
err += Internal::save(out, *i9);
+ }
// Write the shape id to index mapping
size = vm->shapeIdToIndexMap().size();
@@ -1206,19 +1240,23 @@ int save(ostream &out, ViewMap *vm, ProgressBar *pb)
(*j0)->userdata = NULL;
(*j0)->sshape()->userdata = NULL;
}
- for (vector<FEdge *>::const_iterator j1 = vm->FEdges().begin(); j1 != vm->FEdges().end(); j1++)
+ for (vector<FEdge *>::const_iterator j1 = vm->FEdges().begin(); j1 != vm->FEdges().end(); j1++) {
(*j1)->userdata = NULL;
+ }
for (vector<SVertex *>::const_iterator j2 = vm->SVertices().begin(); j2 != vm->SVertices().end();
- j2++)
+ j2++) {
(*j2)->userdata = NULL;
+ }
for (vector<ViewEdge *>::const_iterator j3 = vm->ViewEdges().begin();
j3 != vm->ViewEdges().end();
- j3++)
+ j3++) {
(*j3)->userdata = NULL;
+ }
for (vector<ViewVertex *>::const_iterator j4 = vm->ViewVertices().begin();
j4 != vm->ViewVertices().end();
- j4++)
+ j4++) {
(*j4)->userdata = NULL;
+ }
SET_PROGRESS(6);
return err;
diff --git a/source/blender/freestyle/intern/view_map/ViewMapIterators.h b/source/blender/freestyle/intern/view_map/ViewMapIterators.h
index 0fb5438a153..174e25896cc 100644
--- a/source/blender/freestyle/intern/view_map/ViewMapIterators.h
+++ b/source/blender/freestyle/intern/view_map/ViewMapIterators.h
@@ -130,20 +130,24 @@ class orientedViewEdgeIterator : public Iterator {
* not. */
virtual bool isBegin() const
{
- if (_Nature & Nature::T_VERTEX)
+ if (_Nature & Nature::T_VERTEX) {
return (_tvertex_iter == _tbegin);
- else
+ }
+ else {
return (_nontvertex_iter == _begin);
+ }
}
/*! Tells whether the ViewEdge pointed by this iterator is after the last one of the iteration
* list or not. */
virtual bool isEnd() const
{
- if (_Nature & Nature::T_VERTEX)
+ if (_Nature & Nature::T_VERTEX) {
return (_tvertex_iter == _tend);
- else
+ }
+ else {
return (_nontvertex_iter == _end);
+ }
}
// operators
@@ -168,10 +172,12 @@ class orientedViewEdgeIterator : public Iterator {
/*! operator != */
virtual bool operator!=(const orientedViewEdgeIterator &b) const
{
- if (_Nature & Nature::T_VERTEX)
+ if (_Nature & Nature::T_VERTEX) {
return (_tvertex_iter != b._tvertex_iter);
- else
+ }
+ else {
return (_nontvertex_iter != b._nontvertex_iter);
+ }
}
/*! operator == */
@@ -186,11 +192,13 @@ class orientedViewEdgeIterator : public Iterator {
*/
virtual ViewVertex::directedViewEdge &operator*() const
{
- if (_Nature & Nature::T_VERTEX)
+ if (_Nature & Nature::T_VERTEX) {
// return _tvertex_iter;
return **_tvertex_iter;
- else
+ }
+ else {
return (*_nontvertex_iter);
+ }
}
/*! Returns a pointer to the pointed orientedViewEdge.
* Can't be called in the scripting language.
@@ -210,8 +218,9 @@ class orientedViewEdgeIterator : public Iterator {
if (_tvertex_iter != _tend) {
// FIXME : pquoi deja ?
ViewVertex::directedViewEdge tmp2 = (**_tvertex_iter);
- if (tmp2.first == tmp.first)
+ if (tmp2.first == tmp.first) {
++_tvertex_iter;
+ }
}
}
else {
@@ -379,8 +388,9 @@ class SVertexIterator : public Interface0DIteratorNested {
virtual bool operator==(const Interface0DIteratorNested &it) const
{
const SVertexIterator *it_exact = dynamic_cast<const SVertexIterator *>(&it);
- if (!it_exact)
+ if (!it_exact) {
return false;
+ }
return (_vertex == it_exact->_vertex);
}
diff --git a/source/blender/freestyle/intern/view_map/ViewMapTesselator.cpp b/source/blender/freestyle/intern/view_map/ViewMapTesselator.cpp
index 8abd464b0cf..8357231a73d 100644
--- a/source/blender/freestyle/intern/view_map/ViewMapTesselator.cpp
+++ b/source/blender/freestyle/intern/view_map/ViewMapTesselator.cpp
@@ -25,8 +25,9 @@ namespace Freestyle {
NodeGroup *ViewMapTesselator::Tesselate(ViewMap *iViewMap)
{
- if (0 == iViewMap->ViewEdges().size())
+ if (0 == iViewMap->ViewEdges().size()) {
return NULL;
+ }
const vector<ViewEdge *> &viewedges = iViewMap->ViewEdges();
return Tesselate(viewedges.begin(), viewedges.end());
diff --git a/source/blender/freestyle/intern/view_map/ViewMapTesselator.h b/source/blender/freestyle/intern/view_map/ViewMapTesselator.h
index f8ae885f5d7..7bb9d649e5d 100644
--- a/source/blender/freestyle/intern/view_map/ViewMapTesselator.h
+++ b/source/blender/freestyle/intern/view_map/ViewMapTesselator.h
@@ -185,8 +185,9 @@ NodeGroup *ViewMapTesselator::Tesselate(ViewEdgesIterator begin, ViewEdgesIterat
#endif
line = new OrientedLineRep();
- if (_overloadFrsMaterial)
+ if (_overloadFrsMaterial) {
line->setFrsMaterial(_FrsMaterial);
+ }
// there might be chains containing a single element
if (0 == (firstEdge)->nextEdge()) {