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>2014-07-30 12:08:31 +0400
committerTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>2015-07-20 00:17:59 +0300
commit160c65845dc52b2c705b1ead6e260a399fdccadb (patch)
tree9a2b3a992d4feb8d2778c50cd96bfc58847aac91
parent86572dd7c97b8d4ed91dc3a5d46297e6de02e567 (diff)
Freestyle: minor optimization for space in the FEdgeXDetector.
Member variables and auto variables were changed from real (double) to float in most part of the FEdgeXDetector (except for curvature computations).
-rw-r--r--source/blender/freestyle/intern/application/Controller.cpp2
-rw-r--r--source/blender/freestyle/intern/application/Controller.h18
-rw-r--r--source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp28
-rw-r--r--source/blender/freestyle/intern/view_map/FEdgeXDetector.h16
4 files changed, 32 insertions, 32 deletions
diff --git a/source/blender/freestyle/intern/application/Controller.cpp b/source/blender/freestyle/intern/application/Controller.cpp
index 6a24a47608b..e7eb25f3e62 100644
--- a/source/blender/freestyle/intern/application/Controller.cpp
+++ b/source/blender/freestyle/intern/application/Controller.cpp
@@ -469,7 +469,7 @@ void Controller::ComputeViewMap()
// Restore the context of view:
// we need to perform all these operations while the
// 3D context is on.
- Vec3r vp(freestyle_viewpoint[0], freestyle_viewpoint[1], freestyle_viewpoint[2]);
+ Vec3f vp(freestyle_viewpoint[0], freestyle_viewpoint[1], freestyle_viewpoint[2]);
#if 0
if (G.debug & G_DEBUG_FREESTYLE) {
diff --git a/source/blender/freestyle/intern/application/Controller.h b/source/blender/freestyle/intern/application/Controller.h
index a09964a4e79..646c74f6c9a 100644
--- a/source/blender/freestyle/intern/application/Controller.h
+++ b/source/blender/freestyle/intern/application/Controller.h
@@ -136,12 +136,12 @@ public:
void setComputeSteerableViewMapFlag(bool iBool);
bool getComputeSteerableViewMapFlag() const;
- void setCreaseAngle(real angle) {_creaseAngle = angle;}
- real getCreaseAngle() const {return _creaseAngle;}
- void setSphereRadius(real s) {_sphereRadius = s;}
- real getSphereRadius() const {return _sphereRadius;}
- void setSuggestiveContourKrDerivativeEpsilon(real dkr) {_suggestiveContourKrDerivativeEpsilon = dkr;}
- real getSuggestiveContourKrDerivativeEpsilon() const {return _suggestiveContourKrDerivativeEpsilon;}
+ void setCreaseAngle(float angle) {_creaseAngle = angle;}
+ float getCreaseAngle() const {return _creaseAngle;}
+ void setSphereRadius(float s) {_sphereRadius = s;}
+ float getSphereRadius() const {return _sphereRadius;}
+ void setSuggestiveContourKrDerivativeEpsilon(float dkr) {_suggestiveContourKrDerivativeEpsilon = dkr;}
+ float getSuggestiveContourKrDerivativeEpsilon() const {return _suggestiveContourKrDerivativeEpsilon;}
void setModelsDir(const string& dir);
string getModelsDir() const;
@@ -243,9 +243,9 @@ private:
bool _ComputeRidges;
bool _ComputeSuggestive;
bool _ComputeMaterialBoundaries;
- real _creaseAngle;
- real _sphereRadius;
- real _suggestiveContourKrDerivativeEpsilon;
+ float _creaseAngle;
+ float _sphereRadius;
+ float _suggestiveContourKrDerivativeEpsilon;
bool _ComputeSteerableViewMap;
diff --git a/source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp b/source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp
index f2aeee08ddf..85c6390cb9e 100644
--- a/source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp
+++ b/source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp
@@ -148,16 +148,16 @@ void FEdgeXDetector::preProcessShape(WXShape *iWShape)
void FEdgeXDetector::preProcessFace(WXFace *iFace)
{
- Vec3r firstPoint = iFace->GetVertex(0)->GetVertex();
- Vec3r N = iFace->GetNormal();
+ Vec3f firstPoint = iFace->GetVertex(0)->GetVertex();
+ Vec3f N = iFace->GetNormal();
// Compute the dot product between V (=_Viewpoint - firstPoint) and N:
- Vec3r V;
+ Vec3f V;
if (_orthographicProjection) {
- V = Vec3r(0.0, 0.0, _Viewpoint.z() - firstPoint.z());
+ V = Vec3f(0.0f, 0.0f, _Viewpoint.z() - firstPoint.z());
}
else {
- V = Vec3r(_Viewpoint - firstPoint);
+ V = Vec3f(_Viewpoint - firstPoint);
}
N.normalize();
V.normalize();
@@ -168,7 +168,7 @@ void FEdgeXDetector::preProcessFace(WXFace *iFace)
iFace->setZ(iFace->center().z() - _Viewpoint.z());
}
else {
- Vec3r dist_vec(iFace->center() - _Viewpoint);
+ Vec3f dist_vec(iFace->center() - _Viewpoint);
iFace->setZ(dist_vec.norm());
}
}
@@ -273,33 +273,33 @@ void FEdgeXDetector::processSilhouetteShape(WXShape *iWShape)
void FEdgeXDetector::ProcessSilhouetteFace(WXFace *iFace)
{
// SILHOUETTE LAYER
- Vec3r normal;
+ Vec3f normal;
// Compute the dot products between View direction and N at each vertex of the face:
- Vec3r point;
+ Vec3f point;
int closestPointId = 0;
- real dist, minDist = FLT_MAX;
+ float dist, minDist = FLT_MAX;
int numVertices = iFace->numberOfVertices();
WXFaceLayer *faceLayer = new WXFaceLayer(iFace, Nature::SILHOUETTE, true);
for (int i = 0; i < numVertices; i++) {
point = iFace->GetVertex(i)->GetVertex();
normal = iFace->GetVertexNormal(i);
normal.normalize();
- Vec3r V;
+ Vec3f V;
if (_orthographicProjection) {
- V = Vec3r(0.0, 0.0, _Viewpoint.z() - point.z());
+ V = Vec3f(0.0f, 0.0f, _Viewpoint.z() - point.z());
}
else {
- V = Vec3r(_Viewpoint - point);
+ V = Vec3f(_Viewpoint - point);
}
V.normalize();
- real d = normal * V;
+ float d = normal * V;
faceLayer->PushDotP(d);
// Find the point the closest to the viewpoint
if (_orthographicProjection) {
dist = point.z() - _Viewpoint.z();
}
else {
- Vec3r dist_vec(point - _Viewpoint);
+ Vec3f dist_vec(point - _Viewpoint);
dist = dist_vec.norm();
}
if (dist < minDist) {
diff --git a/source/blender/freestyle/intern/view_map/FEdgeXDetector.h b/source/blender/freestyle/intern/view_map/FEdgeXDetector.h
index 9087d05939a..cbb47d387fb 100644
--- a/source/blender/freestyle/intern/view_map/FEdgeXDetector.h
+++ b/source/blender/freestyle/intern/view_map/FEdgeXDetector.h
@@ -98,7 +98,7 @@ public:
* a crease edge if the angle between two faces sharing the edge is smaller than the given threshold.
*/
// XXX angle should be in radian...
- inline void setCreaseAngle(real angle)
+ inline void setCreaseAngle(float angle)
{
if (angle < 0.0)
angle = 0.0;
@@ -128,7 +128,7 @@ public:
* \param dkr
* The minimal derivative of the radial curvature
*/
- inline void setSuggestiveContourKrDerivativeEpsilon(real dkr)
+ inline void setSuggestiveContourKrDerivativeEpsilon(float dkr)
{
if (dkr != _kr_derivative_epsilon) {
_kr_derivative_epsilon = dkr;
@@ -148,7 +148,7 @@ public:
virtual void buildSmoothEdges(WXShape *iShape);
/*! Sets the current viewpoint */
- inline void setViewpoint(const Vec3r& ivp)
+ inline void setViewpoint(const Vec3f& ivp)
{
_Viewpoint = ivp;
}
@@ -193,7 +193,7 @@ public:
* \param r
* The radius of the sphere expressed as a ratio of the mean edge size
*/
- inline void setSphereRadius(real r)
+ inline void setSphereRadius(float r)
{
if (r != _sphereRadius) {
_sphereRadius = r;
@@ -212,7 +212,7 @@ public:
}
protected:
- Vec3r _Viewpoint;
+ Vec3f _Viewpoint;
#if 0
real _bbox_diagonal; // diagonal of the current processed shape bbox
#endif
@@ -233,11 +233,11 @@ protected:
bool _computeMaterialBoundaries;
bool _faceSmoothness;
bool _faceMarks;
- real _sphereRadius; // expressed as a ratio of the mean edge size
- real _creaseAngle; // [-1, 1] compared with the inner product of face normals
+ float _sphereRadius; // expressed as a ratio of the mean edge size
+ float _creaseAngle; // [-1, 1] compared with the inner product of face normals
bool _changes;
- real _kr_derivative_epsilon;
+ float _kr_derivative_epsilon;
ProgressBar *_pProgressBar;
RenderMonitor *_pRenderMonitor;