[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [44839] trunk/blender/extern/carve: Bundle latest version of Carve library which shall resolve compilation issues with clang
Sergey Sharybin
sergey.vfx at gmail.com
Mon Mar 12 22:18:30 CET 2012
Revision: 44839
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=44839
Author: nazgul
Date: 2012-03-12 21:18:28 +0000 (Mon, 12 Mar 2012)
Log Message:
-----------
Bundle latest version of Carve library which shall resolve compilation issues with clang
Modified Paths:
--------------
trunk/blender/extern/carve/CMakeLists.txt
trunk/blender/extern/carve/bundle.sh
trunk/blender/extern/carve/include/carve/exact.hpp
trunk/blender/extern/carve/include/carve/kd_node.hpp
trunk/blender/extern/carve/include/carve/mesh_impl.hpp
trunk/blender/extern/carve/include/carve/polyhedron_impl.hpp
trunk/blender/extern/carve/patches/strict_flags.patch
Modified: trunk/blender/extern/carve/CMakeLists.txt
===================================================================
--- trunk/blender/extern/carve/CMakeLists.txt 2012-03-12 21:09:27 UTC (rev 44838)
+++ trunk/blender/extern/carve/CMakeLists.txt 2012-03-12 21:18:28 UTC (rev 44839)
@@ -35,115 +35,115 @@
)
set(SRC
- lib/carve.cpp
- lib/mesh.cpp
- lib/intersect_group.cpp
- lib/intersect_classify_edge.cpp
- lib/intersect_classify_group.cpp
+ lib/intersection.cpp
+ lib/intersect.cpp
+ lib/triangulator.cpp
+ lib/convex_hull.cpp
lib/polyhedron.cpp
- lib/geom3d.cpp
lib/polyline.cpp
- lib/csg_collector.cpp
- lib/triangulator.cpp
+ lib/pointset.cpp
+ lib/geom2d.cpp
+ lib/math.cpp
+ lib/intersect_half_classify_group.cpp
lib/intersect_face_division.cpp
- lib/intersect_half_classify_group.cpp
- lib/edge.cpp
- lib/math.cpp
- lib/geom2d.cpp
lib/tag.cpp
- lib/intersection.cpp
- lib/convex_hull.cpp
+ lib/aabb.cpp
+ lib/intersect_classify_group.cpp
+ lib/mesh.cpp
+ lib/timing.cpp
+ lib/geom3d.cpp
+ lib/intersect_group.cpp
+ lib/carve.cpp
+ lib/intersect_classify_edge.cpp
lib/csg.cpp
- lib/intersect.cpp
lib/face.cpp
- lib/pointset.cpp
- lib/timing.cpp
+ lib/csg_collector.cpp
+ lib/intersect_debug.cpp
+ lib/edge.cpp
lib/octree.cpp
- lib/aabb.cpp
- lib/intersect_debug.cpp
+ lib/intersect_debug.hpp
+ lib/csg_collector.hpp
+ lib/csg_data.hpp
lib/intersect_classify_common.hpp
- lib/csg_data.hpp
- lib/csg_collector.hpp
lib/intersect_common.hpp
+ lib/csg_detail.hpp
lib/intersect_classify_common_impl.hpp
- lib/csg_detail.hpp
- lib/intersect_debug.hpp
- include/carve/polyhedron_decl.hpp
- include/carve/geom2d.hpp
- include/carve/exact.hpp
+ include/carve/vertex_impl.hpp
+ include/carve/aabb_impl.hpp
+ include/carve/csg.hpp
+ include/carve/pointset_iter.hpp
+ include/carve/debug_hooks.hpp
+ include/carve/mesh.hpp
include/carve/triangulator_impl.hpp
- include/carve/collection.hpp
- include/carve/pointset.hpp
- include/carve/djset.hpp
- include/carve/kd_node.hpp
+ include/carve/edge_decl.hpp
+ include/carve/collection/unordered.hpp
+ include/carve/collection/unordered/tr1_impl.hpp
+ include/carve/collection/unordered/fallback_impl.hpp
+ include/carve/collection/unordered/std_impl.hpp
+ include/carve/collection/unordered/vcpp_impl.hpp
+ include/carve/collection/unordered/libstdcpp_impl.hpp
+ include/carve/collection/unordered/boost_impl.hpp
+ include/carve/convex_hull.hpp
+ include/carve/geom.hpp
+ include/carve/collection_types.hpp
+ include/carve/cbrt.h
+ include/carve/util.hpp
+ include/carve/iobj.hpp
+ include/carve/polyline_decl.hpp
+ include/carve/polyline_impl.hpp
+ include/carve/win32.h
+ include/carve/edge_impl.hpp
+ include/carve/carve.hpp
include/carve/polyline.hpp
- include/carve/polyline_iter.hpp
- include/carve/geom3d.hpp
- include/carve/edge_decl.hpp
include/carve/face_decl.hpp
- include/carve/aabb_impl.hpp
- include/carve/colour.hpp
- include/carve/pointset_iter.hpp
- include/carve/polyline_decl.hpp
- include/carve/rescale.hpp
+ include/carve/matrix.hpp
+ include/carve/classification.hpp
+ include/carve/geom_impl.hpp
+ include/carve/faceloop.hpp
+ include/carve/mesh_ops.hpp
+ include/carve/tree.hpp
+ include/carve/geom2d.hpp
+ include/carve/face_impl.hpp
+ include/carve/polyhedron_decl.hpp
+ include/carve/interpolator.hpp
+ include/carve/poly_decl.hpp
include/carve/mesh_impl.hpp
- include/carve/classification.hpp
- include/carve/util.hpp
+ include/carve/gnu_cxx.h
+ include/carve/mesh_simplify.hpp
include/carve/triangulator.hpp
- include/carve/polyhedron_base.hpp
+ include/carve/pointset_impl.hpp
include/carve/rtree.hpp
+ include/carve/math_constants.hpp
+ include/carve/vector.hpp
+ include/carve/octree_impl.hpp
+ include/carve/pointset.hpp
include/carve/math.hpp
- include/carve/math_constants.hpp
- include/carve/octree_decl.hpp
+ include/carve/intersection.hpp
+ include/carve/colour.hpp
+ include/carve/kd_node.hpp
include/carve/input.hpp
- include/carve/mesh_ops.hpp
- include/carve/debug_hooks.hpp
- include/carve/mesh_simplify.hpp
- include/carve/interpolator.hpp
- include/carve/poly_decl.hpp
- include/carve/csg.hpp
- include/carve/mesh.hpp
- include/carve/carve.hpp
- include/carve/gnu_cxx.h
+ include/carve/geom3d.hpp
+ include/carve/exact.hpp
+ include/carve/rescale.hpp
+ include/carve/polyhedron_base.hpp
+ include/carve/heap.hpp
+ include/carve/spacetree.hpp
include/carve/polyhedron_impl.hpp
- include/carve/poly_impl.hpp
+ include/carve/vcpp_config.h
include/carve/aabb.hpp
- include/carve/convex_hull.hpp
+ include/carve/polyline_iter.hpp
+ include/carve/djset.hpp
include/carve/vertex_decl.hpp
- include/carve/win32.h
- include/carve/edge_impl.hpp
- include/carve/tag.hpp
- include/carve/tree.hpp
- include/carve/heap.hpp
- include/carve/matrix.hpp
+ include/carve/csg_triangulator.hpp
include/carve/poly.hpp
- include/carve/vector.hpp
- include/carve/intersection.hpp
- include/carve/faceloop.hpp
- include/carve/geom_impl.hpp
- include/carve/octree_impl.hpp
- include/carve/spacetree.hpp
- include/carve/collection/unordered/std_impl.hpp
- include/carve/collection/unordered/tr1_impl.hpp
- include/carve/collection/unordered/libstdcpp_impl.hpp
- include/carve/collection/unordered/boost_impl.hpp
- include/carve/collection/unordered/vcpp_impl.hpp
- include/carve/collection/unordered/fallback_impl.hpp
- include/carve/collection/unordered.hpp
- include/carve/face_impl.hpp
- include/carve/pointset_impl.hpp
- include/carve/cbrt.h
- include/carve/vcpp_config.h
- include/carve/geom.hpp
- include/carve/vertex_impl.hpp
- include/carve/polyline_impl.hpp
+ include/carve/timing.hpp
+ include/carve/octree_decl.hpp
include/carve/pointset_decl.hpp
- include/carve/timing.hpp
- include/carve/csg_triangulator.hpp
- include/carve/iobj.hpp
- include/carve/collection_types.hpp
+ include/carve/tag.hpp
+ include/carve/collection.hpp
+ include/carve/poly_impl.hpp
)
if(WITH_BOOST)
Modified: trunk/blender/extern/carve/bundle.sh
===================================================================
--- trunk/blender/extern/carve/bundle.sh 2012-03-12 21:09:27 UTC (rev 44838)
+++ trunk/blender/extern/carve/bundle.sh 2012-03-12 21:18:28 UTC (rev 44839)
@@ -47,7 +47,7 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software Foundation,
-# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
# The Original Code is Copyright (C) 2006, Blender Foundation
# All rights reserved.
Modified: trunk/blender/extern/carve/include/carve/exact.hpp
===================================================================
--- trunk/blender/extern/carve/include/carve/exact.hpp 2012-03-12 21:09:27 UTC (rev 44838)
+++ trunk/blender/extern/carve/include/carve/exact.hpp 2012-03-12 21:18:28 UTC (rev 44839)
@@ -639,9 +639,11 @@
}
- // XXX: not implemented yet
- //exact_t operator+(const exact_t &a, const exact_t &b) {
- //}
+ exact_t operator+(const exact_t &a, const exact_t &b) {
+ exact_t r;
+ sum_zeroelim(a, b, r);
+ return r;
+ }
Modified: trunk/blender/extern/carve/include/carve/kd_node.hpp
===================================================================
--- trunk/blender/extern/carve/include/carve/kd_node.hpp 2012-03-12 21:09:27 UTC (rev 44838)
+++ trunk/blender/extern/carve/include/carve/kd_node.hpp 2012-03-12 21:18:28 UTC (rev 44839)
@@ -230,7 +230,7 @@
}
// distance_t must provide:
- // double operator()(kd_node::data_t, vector<ndim>);
+ // double operator()(data_t, vector<ndim>);
// double operator()(axis_pos, vector<ndim>);
template<typename distance_t>
struct near_point_query {
@@ -238,7 +238,7 @@
// q_t - the priority queue value type.
// q_t.first: distance from object to query point.
// q_t.second: pointer to object
- typedef std::pair<double, const typename kd_node::data_t *> q_t;
+ typedef std::pair<double, const data_t *> q_t;
// the queue priority should sort from smallest distance to largest, and on equal distance, by object pointer.
struct pcmp {
@@ -266,7 +266,7 @@
}
}
- const typename kd_node::data_t *next() {
+ const data_t *next() {
while (1) {
if (pq.size()) {
q_t t = pq.top();
Modified: trunk/blender/extern/carve/include/carve/mesh_impl.hpp
===================================================================
--- trunk/blender/extern/carve/include/carve/mesh_impl.hpp 2012-03-12 21:09:27 UTC (rev 44838)
+++ trunk/blender/extern/carve/include/carve/mesh_impl.hpp 2012-03-12 21:18:28 UTC (rev 44839)
@@ -624,8 +624,7 @@
CARVE_ASSERT(e->rev != NULL);
e = e->rev->next;
CARVE_ASSERT(e->v1() == emin->v1());
- CARVE_ASSERT(e->v1()->v < e->v2()->v);
- CARVE_ASSERT(e->v1()->v.x <= e->v2()->v.x);
+ CARVE_ASSERT(e->v1()->v <= e->v2()->v);
} while (e != emin);
double max_abs_x = 0.0;
Modified: trunk/blender/extern/carve/include/carve/polyhedron_impl.hpp
===================================================================
--- trunk/blender/extern/carve/include/carve/polyhedron_impl.hpp 2012-03-12 21:09:27 UTC (rev 44838)
+++ trunk/blender/extern/carve/include/carve/polyhedron_impl.hpp 2012-03-12 21:18:28 UTC (rev 44839)
@@ -88,9 +88,9 @@
*(*result)++ = f;
int r = 1;
- for (size_t i = 0; i < f->edges.size(); ++i) {
- const std::vector<const face_t *> &edge_faces = connectivity.edge_to_face[edgeToIndex_fast(f->edges[i])];
- const face_t *f2 = connectedFace(f, f->edges[i]);
+ for (size_t i = 0; i < f->nEdges(); ++i) {
+ const std::vector<const face_t *> &edge_faces = connectivity.edge_to_face[edgeToIndex_fast(f->edge(i))];
+ const face_t *f2 = connectedFace(f, f->edge(i));
if (f2) {
r += _faceNeighbourhood(f2, depth - 1, (*result));
}
@@ -116,7 +116,7 @@
int r = 0;
const std::vector<const face_t *> &edge_faces = connectivity.edge_to_face[edgeToIndex_fast(e)];
for (size_t i = 0; i < edge_faces.size(); ++i) {
- face_t *f = edge_faces[i];
+ const face_t *f = edge_faces[i];
if (f && f->manifold_id == m_id) { r += _faceNeighbourhood(f, depth, &result); }
}
return r;
@@ -131,7 +131,7 @@
int r = 0;
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list