diff options
author | Tamito Kajiyama <rd6t-kjym@asahi-net.or.jp> | 2014-07-30 12:08:31 +0400 |
---|---|---|
committer | Tamito Kajiyama <rd6t-kjym@asahi-net.or.jp> | 2015-07-20 00:17:59 +0300 |
commit | 160c65845dc52b2c705b1ead6e260a399fdccadb (patch) | |
tree | 9a2b3a992d4feb8d2778c50cd96bfc58847aac91 /source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp | |
parent | 86572dd7c97b8d4ed91dc3a5d46297e6de02e567 (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).
Diffstat (limited to 'source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp')
-rw-r--r-- | source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp | 28 |
1 files changed, 14 insertions, 14 deletions
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) { |