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:
Diffstat (limited to 'extern/carve/carve-util.h')
-rw-r--r--extern/carve/carve-util.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/extern/carve/carve-util.h b/extern/carve/carve-util.h
index 3edf1bb1c02..e8f62cd2751 100644
--- a/extern/carve/carve-util.h
+++ b/extern/carve/carve-util.h
@@ -70,6 +70,10 @@ void carve_getRescaleMinMax(const carve::mesh::MeshSet<3> *left,
carve::geom3d::Vector *min,
carve::geom3d::Vector *max);
+typedef void (*VertexAttrsCallback) (const carve::mesh::MeshSet<3>::vertex_t *orig_vert,
+ const carve::mesh::MeshSet<3>::vertex_t *new_vert,
+ void *userdata);
+
typedef void (*UnionIntersectionsCallback) (const carve::mesh::MeshSet<3> *left,
const carve::mesh::MeshSet<3> *right,
void *userdata);
@@ -77,6 +81,7 @@ typedef void (*UnionIntersectionsCallback) (const carve::mesh::MeshSet<3> *left,
void carve_unionIntersections(carve::csg::CSG *csg,
carve::mesh::MeshSet<3> **left_r,
carve::mesh::MeshSet<3> **right_r,
+ VertexAttrsCallback vertex_attr_callback,
UnionIntersectionsCallback callback,
void *user_data);
@@ -148,6 +153,13 @@ namespace carve {
void setAttribute(const meshset_t::vertex_t *v, const attr_t &attr) {
attrs[v] = attr;
}
+
+ void removeAttribute(const meshset_t::vertex_t *v) {
+ typename attrmap_t::iterator it = attrs.find(v);
+ if (it != attrs.end()) {
+ attrs.erase(it);
+ }
+ }
};
template<typename attr_t>