Last 30 days
-
-
-
-
-
-
-
Revision 952c514466
(Fixes for compile errors and warnings generated when compili...)
pushed by tobias.s...@gmail.com
- Fixes for compile errors and warnings generated when compiling with clang.
Fixes for compile errors and warnings generated when compiling with clang.
-
-
Revision 65bd01ba0e
(Modify assertion in mesh orientation testing to allow zero l...)
pushed by tobias.s...@gmail.com
- Modify assertion in mesh orientation testing to allow zero length edges.
Modify assertion in mesh orientation testing to allow zero length edges.
-
16 new revisions
pushed by tobias.s...@gmail.com
- 5829349490:Add the beginning of a triangulator unittest.
085a1bd4cf:Only continue to attempt to remove degeneracies while there are more than 3 vertices left.
6c3c464976:Only continue to triangulate while more than 3 vertices remain.
c1843d248d:Add triangulator unittest for degenerate quad.
124339de23:Dump .ply pre and post hole merging.
d5924e5dbb:Improve face division code by recognising more simple cases.
5746a68afe:Update gloop header includes.
4dc7dc9166:Remove debug code.
c22822d2ab:Add the beginning of a triangulator unittest.
a48f04b2c6:Add triangulator unittest for degenerate quad.
38dd888b02:Only continue to attempt to remove degeneracies while there are more than 3 vertices left.
02fbd985f1:Only continue to triangulate while more than 3 vertices remain.
e01f720cb8:Dump .ply pre and post hole merging.
c9b1e4229d:make string args const
d59d60eede:Improve face division code by recognising more simple cases.
860a0c82d5:Remove debug code.
5829349490:Add the beginning of a triangulator unittest.
085a1bd4cf:Only continue to attempt to remove degeneracies while there are more than 3 vertices left.
6c3c464976:Only continue to triangulate while more than 3 vertices remain.
c1843d248d:Add triangulator unittest for degenerate quad.
124339de23:Dump .ply pre and post hole merging.
d5924e5dbb:Improve face division code by recognising more simple cases.
5746a68afe:Update gloop header includes.
4dc7dc9166:Remove debug code.
c22822d2ab:Add the beginning of a triangulator unittest.
a48f04b2c6:Add triangulator unittest for degenerate quad.
38dd888b02:Only continue to attempt to remove degeneracies while there are more than 3 vertices left.
02fbd985f1:Only continue to triangulate while more than 3 vertices remain.
e01f720cb8:Dump .ply pre and post hole merging.
c9b1e4229d:make string args const
d59d60eede:Improve face division code by recognising more simple cases.
860a0c82d5:Remove debug code.
Earlier this year
-
4 new revisions
pushed by tobias.s...@gmail.com
- 39ba0412c3:Respect classification against both closed and open meshes.
If classification wrt. a closed mesh is available, choose that.
Otherwise, accept classification against an open mesh. The edge
classififer uses local topology at the line of intersection to
determine orientation, rather than relying on point-in-polyhedron
tests, and so the information it returns for intersections with
open meshes is still useful.
a1a5ae69e5:Comment out names of unused parameters.
7d529d7181:Add missing typename.
525472fb47:Pass all arguments of drawMeshSetWireframe().
39ba0412c3:Respect classification against both closed and open meshes.
If classification wrt. a closed mesh is available, choose that.
Otherwise, accept classification against an open mesh. The edge
classififer uses local topology at the line of intersection to
determine orientation, rather than relying on point-in-polyhedron
tests, and so the information it returns for intersections with
open meshes is still useful.
a1a5ae69e5:Comment out names of unused parameters.
7d529d7181:Add missing typename.
525472fb47:Pass all arguments of drawMeshSetWireframe().
-
55 new revisions
pushed by tobias.s...@gmail.com
- 78a56d2905:update glew to 1.7.0
5191cc2aa0:updates to gloop, including:
* header reorganisation.
* removal of sscanf calls in favour of istringstream.
* correction of warnings in radiance parser.
* conversion of vectors and matrices to POD types.
* other changes to stop cl /analyze complaining.
d3d781c477:Fix bug in aabb::completelyContains()
e471856d2e:* Add lineSegmentIntersection_simple(), which uses orient2d to test
for line segment intersection without considering an epsilon
tolerance.
* Add a full aabb test to lineSegmentIntersection().
a93418e025:Fix hole incorporation in the case of spatially equal but
distinct vertex inputs.
0e6063d483:Add aabb test for determining the embedding of holes and faces.
21443a868a:remove unused variables.
7c50fd1cb6:Fix error in test for parallel rays in rayRayIntersection().
a89b974471:Add missing typename.
c61878b45e:update gloop header includes.
9c244d456c:initialize cam look vector to {0,0,0}.
c468ccff56:reformat comment to remove backslashes at EOL.
a8eb5c95a0:update gloop header includes.
41fa55df2f:update gloop header includes.
bed4821f84:add option to disable gtest compilation, as well as tests that
depend upon it.
18c42f4369:the header stdint.h exists as of vs2010.
edc1e9f06a:cmake build files define CMAKE_BUILD. use this to choose the right
config header, even when compiling with visual studio project files
created by cmake.
63d21a61e0:Fix bug in aabb::completelyContains()
a62650fa6d:Fix error in test for parallel rays in rayRayIntersection().
3ab1d845c4:* Add lineSegmentIntersection_simple(), which uses orient2d to test
for line segment intersection without considering an epsilon
tolerance.
* Add a full aabb test to lineSegmentIntersection().
a74a7f9633:Fix hole incorporation in the case of spatially equal but
distinct vertex inputs.
afb17f79ef:Add aabb test for determining the embedding of holes and faces.
482bbc1737:add option to disable gtest compilation, as well as tests that
depend upon it.
abc323792d:the header stdint.h exists as of vs2010.
e43a871e1d:cmake build files define CMAKE_BUILD. use this to choose the right
config header, even when compiling with visual studio project files
created by cmake.
bb371fe240:backport aabb::maxAxisSeparation()
2a36bc48b2:In compareAngles(), make orientation values const, remove duplicate computation.
3bec9ce44f:Change centroid calculation to make it clear that p3 is not used uninitialized.
d006d87b05:make drawing of edge connections optional.
d09cf4541d:forward declare vector as a struct, not a class.
215eb007ac:increase line drawing z-bias slightly.
bed3a01a6f:update writePLY() prototypes.
c3890b318a:closestPoint<2> should return a value, even if it's not implemented yet. return {0,0} for the
moment.
f9aedc215f:update xcode configuration header.
46adc77076:change assert() to CARVE_ASSERT()
12dfd5122f:fix compilation problem with debug group ply writing (update to new meshset methods).
64396e9527:edge-edge intersection changes.
* remove duplicated intersection calculation.
* replace explicit overlap test with aabb-based test.
* add missing break.
52a48d7e55:fix compilation problem with debug group ply writing (update to new meshset methods).
a26964ec23:don't consider coplanar faces as intersection candidates.
previously, coplanar face pairs were being considered as candidates
early on, and edge-edge intersections generated. this unnecessarily
added vertices to the output mesh.
639373e7eb:update namespace qualification of type names.
171c78c0e4:whitespace changes.
454454b742:put quotes around filename in ply loading message.
2cc57f09a5:iterator distance functions should return ptrdiff_t.
7f02a2830f:fix compilation problem with debug group ply writing (update to new meshset methods).
ca9cbc60a1:namespace qualify carve::is_sorted().
47dfdaff1d:check that reverse edge is not NULL before recording an intersection.
8ed55e3595:In compareAngles(), make orientation values const, remove duplicate computation.
5ec8a72950:Change centroid calculation to make it clear that p3 is not used uninitialized.
54631f8306:iterator distance functions should return ptrdiff_t.
c7582cda7a:whitespace changes.
dc8a492ca3:put quotes around filename in ply loading message.
135b8701d8:Correct edge classification in the case of multiple touching manifolds.
For example, take two cubes that share a face. A face intersecting
this pair of manifolds will be classified as inside one, but outside
the other. The correct choice is to classify the face as inside.
Doing this means that cases where manifold embedding is inconsistent
will not be detected as such, but maybe this problem should be detected
and handled elsewhere, anyway.
5c22717185:Use a functor for distance calculations in triangulation.
Relying on the existance of an overloaded distance() function,
may conflict with std::distance().
a6db51079b:when compiling with debug ply writing enabled, link against extra libs.
5874d654ef:add test for compilation issues resulting from 'using namespace std'.
this issue is fixed by changeset 5c227171859d.
78a56d2905:update glew to 1.7.0
5191cc2aa0:updates to gloop, including:
* header reorganisation.
* removal of sscanf calls in favour of istringstream.
* correction of warnings in radiance parser.
* conversion of vectors and matrices to POD types.
* other changes to stop cl /analyze complaining.
d3d781c477:Fix bug in aabb::completelyContains()
e471856d2e:* Add lineSegmentIntersection_simple(), which uses orient2d to test
for line segment intersection without considering an epsilon
tolerance.
* Add a full aabb test to lineSegmentIntersection().
a93418e025:Fix hole incorporation in the case of spatially equal but
distinct vertex inputs.
0e6063d483:Add aabb test for determining the embedding of holes and faces.
21443a868a:remove unused variables.
7c50fd1cb6:Fix error in test for parallel rays in rayRayIntersection().
a89b974471:Add missing typename.
c61878b45e:update gloop header includes.
9c244d456c:initialize cam look vector to {0,0,0}.
c468ccff56:reformat comment to remove backslashes at EOL.
a8eb5c95a0:update gloop header includes.
41fa55df2f:update gloop header includes.
bed4821f84:add option to disable gtest compilation, as well as tests that
depend upon it.
18c42f4369:the header stdint.h exists as of vs2010.
edc1e9f06a:cmake build files define CMAKE_BUILD. use this to choose the right
config header, even when compiling with visual studio project files
created by cmake.
63d21a61e0:Fix bug in aabb::completelyContains()
a62650fa6d:Fix error in test for parallel rays in rayRayIntersection().
3ab1d845c4:* Add lineSegmentIntersection_simple(), which uses orient2d to test
for line segment intersection without considering an epsilon
tolerance.
* Add a full aabb test to lineSegmentIntersection().
a74a7f9633:Fix hole incorporation in the case of spatially equal but
distinct vertex inputs.
afb17f79ef:Add aabb test for determining the embedding of holes and faces.
482bbc1737:add option to disable gtest compilation, as well as tests that
depend upon it.
abc323792d:the header stdint.h exists as of vs2010.
e43a871e1d:cmake build files define CMAKE_BUILD. use this to choose the right
config header, even when compiling with visual studio project files
created by cmake.
bb371fe240:backport aabb::maxAxisSeparation()
2a36bc48b2:In compareAngles(), make orientation values const, remove duplicate computation.
3bec9ce44f:Change centroid calculation to make it clear that p3 is not used uninitialized.
d006d87b05:make drawing of edge connections optional.
d09cf4541d:forward declare vector as a struct, not a class.
215eb007ac:increase line drawing z-bias slightly.
bed3a01a6f:update writePLY() prototypes.
c3890b318a:closestPoint<2> should return a value, even if it's not implemented yet. return {0,0} for the
moment.
f9aedc215f:update xcode configuration header.
46adc77076:change assert() to CARVE_ASSERT()
12dfd5122f:fix compilation problem with debug group ply writing (update to new meshset methods).
64396e9527:edge-edge intersection changes.
* remove duplicated intersection calculation.
* replace explicit overlap test with aabb-based test.
* add missing break.
52a48d7e55:fix compilation problem with debug group ply writing (update to new meshset methods).
a26964ec23:don't consider coplanar faces as intersection candidates.
previously, coplanar face pairs were being considered as candidates
early on, and edge-edge intersections generated. this unnecessarily
added vertices to the output mesh.
639373e7eb:update namespace qualification of type names.
171c78c0e4:whitespace changes.
454454b742:put quotes around filename in ply loading message.
2cc57f09a5:iterator distance functions should return ptrdiff_t.
7f02a2830f:fix compilation problem with debug group ply writing (update to new meshset methods).
ca9cbc60a1:namespace qualify carve::is_sorted().
47dfdaff1d:check that reverse edge is not NULL before recording an intersection.
8ed55e3595:In compareAngles(), make orientation values const, remove duplicate computation.
5ec8a72950:Change centroid calculation to make it clear that p3 is not used uninitialized.
54631f8306:iterator distance functions should return ptrdiff_t.
c7582cda7a:whitespace changes.
dc8a492ca3:put quotes around filename in ply loading message.
135b8701d8:Correct edge classification in the case of multiple touching manifolds.
For example, take two cubes that share a face. A face intersecting
this pair of manifolds will be classified as inside one, but outside
the other. The correct choice is to classify the face as inside.
Doing this means that cases where manifold embedding is inconsistent
will not be detected as such, but maybe this problem should be detected
and handled elsewhere, anyway.
5c22717185:Use a functor for distance calculations in triangulation.
Relying on the existance of an overloaded distance() function,
may conflict with std::distance().
a6db51079b:when compiling with debug ply writing enabled, link against extra libs.
5874d654ef:add test for compilation issues resulting from 'using namespace std'.
this issue is fixed by changeset 5c227171859d.
Older
-
-
-
-
-
9 new revisions
pushed by tobias.s...@gmail.com
- 2070fb7c03:make the number of dimensions of a vector type available as an enum (vector_t::__ndim)
0eaec9c69b:Provide rangeSeparation() for determining the distance separating two ranges expressed as pairs of
doubles. Returns 0 if the ranges touch or overlap.
088b1b4c36:Methods for measuring the separation of two axis aligned bounding boxes along an axis, and for
finding the maximum separation along any axis.
3e17ea7b35:Method rangeInDirection() returns the range spanned by an aabb in the direction of a vector.
cca27ccc4a:standardise debug output of generated intersections.
2727e627a1:Fix compilation warning.
353fec43cd:Remove old intersection debug output.
fc675ac557:Add method rangeInDirection() for mesh faces that computes the range spanned by the face in the
direction of a vector, translated by a base.
204b3b6af8:Convert carve to using a half-edge based data structure.
Convert CSG operations from using Polyhedron to MeshSet<3>.
The representation used by MeshSet and related classes is much
more easily mutated than the old Polyhedron representation.
2070fb7c03:make the number of dimensions of a vector type available as an enum (vector_t::__ndim)
0eaec9c69b:Provide rangeSeparation() for determining the distance separating two ranges expressed as pairs of
doubles. Returns 0 if the ranges touch or overlap.
088b1b4c36:Methods for measuring the separation of two axis aligned bounding boxes along an axis, and for
finding the maximum separation along any axis.
3e17ea7b35:Method rangeInDirection() returns the range spanned by an aabb in the direction of a vector.
cca27ccc4a:standardise debug output of generated intersections.
2727e627a1:Fix compilation warning.
353fec43cd:Remove old intersection debug output.
fc675ac557:Add method rangeInDirection() for mesh faces that computes the range spanned by the face in the
direction of a vector, translated by a base.
204b3b6af8:Convert carve to using a half-edge based data structure.
Convert CSG operations from using Polyhedron to MeshSet<3>.
The representation used by MeshSet and related classes is much
more easily mutated than the old Polyhedron representation.
-
issue 26
(error of vertex indices of a face after union operation) changed by tobias.s...@gmail.com
-
Status:
Done
Labels:
Type-Other Priority-Low
−Type-Defect −Priority-Medium
Status:
Done
Labels:
Type-Other Priority-Low
−Type-Defect −Priority-Medium
-
-
-
-
-
issue 25
(CSG fails on this input) changed by tobias.s...@gmail.com
-
Status:
Accepted
Owner:
Labels:
Priority-High
−Priority-Medium
Status:
Accepted
Owner:
Labels:
Priority-High
−Priority-Medium
-
-
-
-
-
22 new revisions
pushed by tobias.s...@gmail.com
- b4407b1e94:avoid division by zero in the case where no objects to be binned have zero extent in some direction.
70aa5e5cbd:correct mesh orientation calculation.
cc0fa2deb1:add mesh volume calculation.
fba597e5dd:make string args const
c1e8bb7656:make mesh simplification detect and avoid generating self intersections
973231ea57:use exact triangle intersection code in self intersection tester
677d99c23b:remove fins and zero volume manifolds in mesh simplification
f7cec43af9:add unordered multimap.
a545389901:brace change
8e2d2f34a6:improve assertions in half-edge mesh code.
3e467b722c:add triangulation hook to slicing tests, as a visual indication that hooks are being called by slice
operations.
9872012649:add license header.
2da98d4e57:add face constructor from vertex iterator range.
2674cf425b:include math.h in vc++ config header.
1766d3c79f:add sphere and triangle drawing code.
82f2aeb9ab:add normal() convenience method to triangle (only makes sense for tri<3>)
daddc354d3:add static qualifier to point-ray distance functions.
6c37e8d330:forward declare vector, remove include of geom3d, so that math.hpp can be included by geom.hpp
without recursion.
5ce8ee656c:add templated clamp() function for clamping a value between a minimum and a maximum.
e6d980c384:add functions for distance from point to triangle and closest point on triangle to point.
7fbc43616d:don't take the address of vertex_storage[0] (even though it's unused) when there are no vertices in
the meshset.
5a2aecf56e:partial tests for triangle-point distance.
b4407b1e94:avoid division by zero in the case where no objects to be binned have zero extent in some direction.
70aa5e5cbd:correct mesh orientation calculation.
cc0fa2deb1:add mesh volume calculation.
fba597e5dd:make string args const
c1e8bb7656:make mesh simplification detect and avoid generating self intersections
973231ea57:use exact triangle intersection code in self intersection tester
677d99c23b:remove fins and zero volume manifolds in mesh simplification
f7cec43af9:add unordered multimap.
a545389901:brace change
8e2d2f34a6:improve assertions in half-edge mesh code.
3e467b722c:add triangulation hook to slicing tests, as a visual indication that hooks are being called by slice
operations.
9872012649:add license header.
2da98d4e57:add face constructor from vertex iterator range.
2674cf425b:include math.h in vc++ config header.
1766d3c79f:add sphere and triangle drawing code.
82f2aeb9ab:add normal() convenience method to triangle (only makes sense for tri<3>)
daddc354d3:add static qualifier to point-ray distance functions.
6c37e8d330:forward declare vector, remove include of geom3d, so that math.hpp can be included by geom.hpp
without recursion.
5ce8ee656c:add templated clamp() function for clamping a value between a minimum and a maximum.
e6d980c384:add functions for distance from point to triangle and closest point on triangle to point.
7fbc43616d:don't take the address of vertex_storage[0] (even though it's unused) when there are no vertices in
the meshset.
5a2aecf56e:partial tests for triangle-point distance.
-
-
-
-
-
-
-
-
-
Revision 9f0b295384
(Update glu triangulator code, make cmake build system suppor...)
pushed by tobias.s...@gmail.com
- Update glu triangulator code, make cmake build system support compiling in glu triangulator.
Update glu triangulator code, make cmake build system support compiling in glu triangulator.
-
-
-
-
-
-
-
-
-
-
-
55 new revisions
pushed by tobias.s...@gmail.com
- 2559d8dbf6:Implement half-edge datastructure, base Polyhedron connectivity calculation on half-edge
connectivity as a stepping stone to replacing Polyhedron with carve::mesh::*.
* * *
missed commit
* * *
add a pointer from mesh to mesh_set
* * *
Provide an iterator that iterates over all the faces in a MeshSet (traversing faces from multiple
contained Mesh instances).
* * *
fix for halfedge mesh tracing code error when open faces were encountered such that an edge was used
once in one direction, and more than once in the opposite direction.
12eb47af25:add unit tests for carve::mesh::*
2b71f008c5:make OpenGL drawing code take carve::mesh::MeshSet<3> instead of carve::poly::Polyhedron
* * *
make OpenGL drawing code take carve::mesh::MeshSet<3> instead of carve::poly::Polyhedron
8d467248c0:split geom.hpp into definition (geom.hpp) and implementation (geom_impl.hpp)
92b960d2ac:split aabb.hpp into definition (aabb.hpp) and implementation (aabb_impl.hpp). Regularise some of the
naming of intersection testing methods, and provide a generic constructor from an iterator pair with
specializations for ranges of points and ranges of aabbs (otherwise falling back on the assumption
that there is an appropriate get_aabb specialization that applies).
661cde23a4:Rename aabb calculation meethods to getAABB to align with the expectation of the generic
implementation of the get_aabb class.
a00db04419:fix signed-unsigned comparison warning
cd650fa9a8:initial implementation of an R-tree spatial subdivision structure, with STR and TGS bulk loading
algrorithms.
9fbe541c12:Add code to view to visualise the fitted R-tree structure.
1354b780c2:Modify selfintersect to use MeshSet instead of Polyhedron, and R-tree subdivision instead of octree.
3eedf93bc1:add mesh simplification executable (in development).
4c7bd7cceb:add detail clip example
e14c12aab4:merge
85e8a6599d:add MeshSet clone method.
348e808d58:add getAABB method for Vertex class.
88fc46a6f8:add quantizer class for rounding to a specified number of decimal places in a specified base.
0e43b40d40:move loopSize code to mesh_impl.hpp
70f337d7c3:move perimNext and perimPrev code to mesh_impl.hpp
c1d742c84c:add length methods to Edge.
244389b14b:move FaceStitcher method implementations to mesh_impl.hpp
0db94fba18:move more method code to mesh_impl.cpp. split Mesh initialization into functions for caching edges
and calculating orientation. Add face edge collapsing method.
a309b911cb:Remove erroneous spaces from intersection*.ply output
77efda3e89:Really simple-minded meshset cloning tests.
3d10ebf6ed:first pass at mesh simplification.
27064fa08b:attempt to integrate ctest support into cmakefiles, support gcc options for coverage testing.
367393c922:fix compile errors reported by g++ 4.5 (const issues)
016465158e:move face stitching code to mesh_impl.hpp
e54f7277b6:Add Face constructor taking a pre-build Edge loop.
2ccccf3be8:Assertion assumption was incorrect.
68363b6610:Correctly initialize face mesh pointers on mesh construction.
b1dba31325:Rename and correct mesh edge removal methods.
23470cdd67:Finish heap implementation, including heap location tracking, to allow priority queue updates.
0f6c9aac53:use std::reverse instead of hand coded loops for inverting faces.
b88651bc39:comment out names of unused parameters.
01a4644534:add version of is_sorted that takes a predicate argument
178a67acd0:add assignment operator for exception class.
7503d93e9c:rename members of rtree structures to fix gcc 4.5 compile errors
ace0c4e305:correctly draw front and back faces in different colours.
9dbc2eba41:use round() rather than rint() for quantization of vectors.
0e44136e4e:incorrect capitalization of Boost in cmake file.
01d566de0e:add keystroke |, which toggles all wireframe layers.
878dcdde07:remove rtree drawing, update name of rtree node member aabb -> bbox
2261ad037f:unit test for heap implementation.
fb496b2cb6:add missing break in switch statement
1aafc42eb8:move mesh simplification code to library header file.
9ca3523e10:add header file with operations on half edge meshes.
ac7089b86d:unit test for half edge mesh triangulation
df12af8ad1:in vertex pointer sorter, store functor member by value, not reference, make initialization by const
reference.
1fa6a27966:add squared distance methods for planes and spheres
20250e53cc:add mesh edge method for merging a pair of faces by removing an edge.
0ba36948d7:change dot product threshold test for edge flipping to only allow edge flips when affected faces are
almost coplanar
ac09f88710:Add debug dumping of intersections.
30990c2019:add code for mesh snapping, to clean up non-planar faces, and quantize coordinates.
beee6bb364:regression test additions.
46069ae497:version 2.0.0-alpha
2559d8dbf6:Implement half-edge datastructure, base Polyhedron connectivity calculation on half-edge
connectivity as a stepping stone to replacing Polyhedron with carve::mesh::*.
* * *
missed commit
* * *
add a pointer from mesh to mesh_set
* * *
Provide an iterator that iterates over all the faces in a MeshSet (traversing faces from multiple
contained Mesh instances).
* * *
fix for halfedge mesh tracing code error when open faces were encountered such that an edge was used
once in one direction, and more than once in the opposite direction.
12eb47af25:add unit tests for carve::mesh::*
2b71f008c5:make OpenGL drawing code take carve::mesh::MeshSet<3> instead of carve::poly::Polyhedron
* * *
make OpenGL drawing code take carve::mesh::MeshSet<3> instead of carve::poly::Polyhedron
8d467248c0:split geom.hpp into definition (geom.hpp) and implementation (geom_impl.hpp)
92b960d2ac:split aabb.hpp into definition (aabb.hpp) and implementation (aabb_impl.hpp). Regularise some of the
naming of intersection testing methods, and provide a generic constructor from an iterator pair with
specializations for ranges of points and ranges of aabbs (otherwise falling back on the assumption
that there is an appropriate get_aabb specialization that applies).
661cde23a4:Rename aabb calculation meethods to getAABB to align with the expectation of the generic
implementation of the get_aabb class.
a00db04419:fix signed-unsigned comparison warning
cd650fa9a8:initial implementation of an R-tree spatial subdivision structure, with STR and TGS bulk loading
algrorithms.
9fbe541c12:Add code to view to visualise the fitted R-tree structure.
1354b780c2:Modify selfintersect to use MeshSet instead of Polyhedron, and R-tree subdivision instead of octree.
3eedf93bc1:add mesh simplification executable (in development).
4c7bd7cceb:add detail clip example
e14c12aab4:merge
85e8a6599d:add MeshSet clone method.
348e808d58:add getAABB method for Vertex class.
88fc46a6f8:add quantizer class for rounding to a specified number of decimal places in a specified base.
0e43b40d40:move loopSize code to mesh_impl.hpp
70f337d7c3:move perimNext and perimPrev code to mesh_impl.hpp
c1d742c84c:add length methods to Edge.
244389b14b:move FaceStitcher method implementations to mesh_impl.hpp
0db94fba18:move more method code to mesh_impl.cpp. split Mesh initialization into functions for caching edges
and calculating orientation. Add face edge collapsing method.
a309b911cb:Remove erroneous spaces from intersection*.ply output
77efda3e89:Really simple-minded meshset cloning tests.
3d10ebf6ed:first pass at mesh simplification.
27064fa08b:attempt to integrate ctest support into cmakefiles, support gcc options for coverage testing.
367393c922:fix compile errors reported by g++ 4.5 (const issues)
016465158e:move face stitching code to mesh_impl.hpp
e54f7277b6:Add Face constructor taking a pre-build Edge loop.
2ccccf3be8:Assertion assumption was incorrect.
68363b6610:Correctly initialize face mesh pointers on mesh construction.
b1dba31325:Rename and correct mesh edge removal methods.
23470cdd67:Finish heap implementation, including heap location tracking, to allow priority queue updates.
0f6c9aac53:use std::reverse instead of hand coded loops for inverting faces.
b88651bc39:comment out names of unused parameters.
01a4644534:add version of is_sorted that takes a predicate argument
178a67acd0:add assignment operator for exception class.
7503d93e9c:rename members of rtree structures to fix gcc 4.5 compile errors
ace0c4e305:correctly draw front and back faces in different colours.
9dbc2eba41:use round() rather than rint() for quantization of vectors.
0e44136e4e:incorrect capitalization of Boost in cmake file.
01d566de0e:add keystroke |, which toggles all wireframe layers.
878dcdde07:remove rtree drawing, update name of rtree node member aabb -> bbox
2261ad037f:unit test for heap implementation.
fb496b2cb6:add missing break in switch statement
1aafc42eb8:move mesh simplification code to library header file.
9ca3523e10:add header file with operations on half edge meshes.
ac7089b86d:unit test for half edge mesh triangulation
df12af8ad1:in vertex pointer sorter, store functor member by value, not reference, make initialization by const
reference.
1fa6a27966:add squared distance methods for planes and spheres
20250e53cc:add mesh edge method for merging a pair of faces by removing an edge.
0ba36948d7:change dot product threshold test for edge flipping to only allow edge flips when affected faces are
almost coplanar
ac09f88710:Add debug dumping of intersections.
30990c2019:add code for mesh snapping, to clean up non-planar faces, and quantize coordinates.
beee6bb364:regression test additions.
46069ae497:version 2.0.0-alpha
-
-
Revision c3456b1a00
(fix for case where all incident faces form part of an open g...)
pushed by tobias.s...@gmail.com
- fix for case where all incident faces form part of an open group
fix for case where all incident faces form part of an open group
|