Paolo Cignoni
32333eba24
Huge copyright sanitization of the header files of vcg folder.
2016-06-13 05:29:25 +00:00
Paolo Cignoni
874346d211
Removed unused typenames (with latest generation of compilers it become a warning as unused variables)
2015-09-24 16:41:34 +00:00
Paolo Cignoni
cf856d0a6b
Reasonable but harmless clang warning cleanup
2014-07-01 10:08:00 +00:00
Paolo Cignoni
bf1e2977d0
Corrected a wrong usage of IntersectionSegmentTriangle (could not compile...)
2014-04-07 14:48:16 +00:00
ganovelli
9e45730d93
DIstance to SignedDistance
2013-03-13 09:40:55 +00:00
Paolo Cignoni
8b4d04be7a
Added a bunch of 'c' to component members to clarify constant access
2012-11-15 19:11:28 +00:00
Paolo Cignoni
372ee1ed99
Corrected a small (!) bug in the IntersectionSegmentTriangle. (the line triangle intersection function returns a **signed** distance...)
2012-10-15 09:42:05 +00:00
Paolo Cignoni
c059114300
Orthography lenght -> length
2012-10-08 09:05:11 +00:00
Paolo Cignoni
5bb5c1a1eb
Correct a function name to match attribute order
...
IntersectionPlaneLine(line,plane) -> IntersectionPlaneLine(plane,line)
2012-01-18 16:41:34 +00:00
Paolo Cignoni
4c4d505b6f
added assert for discouraging inconsistent triangleplane intersection
2011-11-21 08:54:35 +00:00
Paolo Cignoni
2fe129645b
Rolled back
2011-10-05 15:04:40 +00:00
Paolo Cignoni
db5320cc64
Modified IntersectionPlaneSegment so that it returns always the same intersection independently from the segment orientation
...
Return false if segment is parallel with the plane.
2011-05-11 09:56:23 +00:00
ganovelli
dbd3bd1a70
rewritten wrong planeboxintersection
2011-04-13 16:07:35 +00:00
Nico Pietroni
6ad59d0756
corrected IntersectionSegmentTriangle calls, the value dist was not updated coherently
2010-10-15 15:15:27 +00:00
Paolo Cignoni
349e9869cf
Updated many vcg files to do not use anymore the vcg::Max(a,b) and vcg::Min(a,b). Use the std version instead.
2010-09-21 22:09:13 +00:00
Paolo Cignoni
3291bb2889
Made uniform the naming of the intersection functions, added some comment and improved a bit the robustness of the triangle triangle intersection test in a mesh
2010-04-20 00:41:45 +00:00
Paolo Cignoni
db53730ae7
better comments for intersectionLineTriangle
2010-04-14 09:16:13 +00:00
ganovelli
0524e1ac62
corrected the implementation of IntersectionSegmentPlane (compiled .net only)
2009-04-29 09:37:42 +00:00
Paolo Cignoni
4420e5102b
Strictly less than instead of less than equals in
...
RayTriangleIntersection
2009-03-25 08:27:58 +00:00
Marco Di Benedetto
915a7b40a1
call IntersectionRayTriangle in Intersection_Segment_Triangle instead of generic Intersection (missing overload).
2009-03-17 18:59:20 +00:00
Paolo Cignoni
f4ec24c552
Restored Ray-Triangle Intersection (as an extension of IntersectionLineTriangle)
2009-01-23 14:33:13 +00:00
ganovelli
f6b42772eb
added IntersectionLineTriangle
2009-01-22 14:34:27 +00:00
Paolo Cignoni
c1551eddfd
make Point derive Eigen's Matrix and some cleanning
2008-10-28 11:47:37 +00:00
Paolo Cignoni
7befff7bec
make point2 derived Eigen's Matrix, and a set of minimal fixes to make meshlab compile
...
with both old and new version. The fixes include:
- dot product: vec0 * vec1 => vec0.dot(vec1) (I added .dot() to the old Point classes too)
- Transpose: Transpose is an Eigen type, so we cannot keep it if Eigen is used. Therefore
I added a .tranpose() to old matrix classes, and modified most of the Transpose() to transpose()
both in vcg and meshlab. In fact, transpose() are free with Eigen, it simply returns a transpose
expression without copies. On the other be carefull: m = m.transpose() won't work as expected,
here me must evaluate to a temporary: m = m.transpose().eval(); However, this operation in very
rarely needed: you transpose at the same sime you set m, or you use m.transpose() directly.
- the last issue is Normalize which both modifies *this and return a ref to it. This behavior
don't make sense anymore when using expression template, e.g., in (a+b).Normalize(), the type
of a+b if not a Point (or whatever Vector types), it an expression of the addition of 2 points,
so we cannot modify the value of *this, since there is no value. Therefore I've already changed
all those .Normalize() of expressions to the Eigen's version .normalized().
- Finally I've changed the Zero to SetZero in the old Point classes too.
2008-10-28 00:59:46 +00:00
Paolo Cignoni
ab200fc950
Port to eigen2: state of the mess:
...
* curently nothing change if you don't define VCG_USE_EIGEN
* make Matrix*, Point3 and Point4 derive Eigen::Matrix (still ugly)
* now catching all the dot products to replace them by .dot()
note that most of meshlab already compile
2008-10-27 19:35:17 +00:00
ganovelli
1185e2ab96
minor type changes to compile with gcc
2008-08-19 11:03:39 +00:00
ganovelli
3cb29c805b
changed template from vcg::Triangle to generic class to allow to pass a vcg::FaceSimpX (recall: the disambiguation was done in the function name exactly for this reason)
2008-08-19 10:21:01 +00:00
Paolo Cignoni
279306b9f7
Corrected error in the comment to method IntersectionSphereTriangle
2007-06-08 07:40:40 +00:00
Paolo Cignoni
9105a551cd
Added IntersectionSphereTriangle
2007-06-07 15:16:39 +00:00
Paolo Cignoni
1e2f4c1a80
Added IntersectionSegmentSphere
2007-05-29 14:33:29 +00:00
Paolo Cignoni
e5d3f05580
commented out non compiling intersectionSpherePlane
2007-04-16 09:08:15 +00:00
Nico Pietroni
5644153c35
IntersectionPlanePlane first parameter is a const
2007-04-10 22:26:47 +00:00
Nico Pietroni
477c03ffd1
- Changed name of intersection function between plane and triangle from Intersection to IntersectionPlaneTriangle.
...
- Added Intersection_Plane_Sphere function.
2007-04-04 23:19:40 +00:00
Marco Di Benedetto
50ed5305a4
Added const qualifier to bbox parameter in Intersection_Triangle_Box().
2007-02-21 02:40:52 +00:00
Nico Pietroni
ad5a634220
added intersection control between bounding boxes for intersection between segment and triangle function
2006-10-25 16:04:32 +00:00
ganovelli
cba93abba3
Intersection_sphere_sphere added
2006-09-14 08:39:07 +00:00
Paolo Cignoni
8bfbf1111d
Changes for compilation on linux AMD64. Some remarks: Linux filenames are case-sensitive. _fileno and _filelength do not exist on linux
2006-06-06 14:35:32 +00:00
Nico Pietroni
f949a83faf
Added functions:
...
- Intersection_Segment_Triangle
- Intersection_Plane_Box
- Intersection_Triangle_Box
2006-06-01 08:38:02 +00:00
Paolo Cignoni
a1d3e8a371
Missing ';' (thx Maarten)
2006-03-29 07:53:36 +00:00
Nico Pietroni
b2879b7333
IntersectionSegmentPlane and Intersection_Segment_Box functions Added
2006-03-20 14:42:49 +00:00
Nico Pietroni
31512102ed
added Intersection_Segment_Box function
2006-01-20 16:35:51 +00:00
Federico Ponchio
e9583c5020
Changed order of functions intersection_line_box and
...
intersectuion_ray_box
2005-10-03 16:07:50 +00:00
Nico Pietroni
f3dd988af6
corrected 1 compiling error on Ray_Box_Intersection function
2005-09-30 13:11:39 +00:00
Nico Pietroni
7bf24066b2
Added function RayBoxIntersection, renamed intersection line box from "Intersection" to "Intersection_Line_Box"
2005-09-29 15:30:10 +00:00
Marco Di Benedetto
342c06717b
Added functor RayTriangleIntersectionFunctor.
2005-09-29 11:48:00 +00:00
Marco Di Benedetto
1de3d80e9b
Added intersection for ray-triangle (with Ray3 type).
2005-09-28 19:40:55 +00:00
Marco Callieri
1b05420d2a
changed intersection names to more specific to avoid ambiguity
2005-06-29 15:28:31 +00:00
ganovelli
41945cf2d5
added intersection between tow planes (porting from old vcg lib)
2005-03-15 11:22:39 +00:00
Paolo Cignoni
0251d89f11
aggiunta intersect ray-box
2005-01-26 10:03:08 +00:00
Paolo Cignoni
2d18591782
Better Doxygen documentation
2004-10-13 12:45:51 +00:00