View Issue Details [ Jump to Notes ] | [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0000640 | VTK | (No Category) | public | 2004-03-01 22:25 | 2011-01-13 17:00 | ||||
Reporter | Goodwin Lawlor | ||||||||
Assigned To | Mathieu Malaterre | ||||||||
Priority | low | Severity | feature | Reproducibility | always | ||||
Status | closed | Resolution | fixed | ||||||
Platform | OS | OS Version | |||||||
Product Version | |||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0000640: vtkPolygon::IntersectPolygonWithPolygon() | ||||||||
Description | vtkPolygon::IntersectPolygonWithPolygon() incorrectly return false that two triangles are intersecting when two triangles are intersecting each other exactly at their edges... The fix for this is in vtkTriangle::PointInTriangle(). At the moment vtkTriangle::PointInTriangle returns true if a point is inside but not on the edge of the triangle. So line 958 of vtkTriangle.cxx should change to: if ( (vtkMath::Dot(n1,n2) >= 0.0) && (vtkMath::Dot(n2,n3) >= 0.0) ) to include the edges. | ||||||||
Tags | No tags attached. | ||||||||
Project | |||||||||
Type | |||||||||
Attached Files | |||||||||
Relationships | |
Relationships |
Notes | |
(0000713) Goodwin Lawlor (reporter) 2004-03-01 22:30 |
Sorry, the correct diff is: =================================================================== RCS file: /cvsroot/VTK/VTK/Common/vtkTriangle.cxx,v retrieving revision 1.103 diff -r1.103 vtkTriangle.cxx 988c988 < if ( (vtkMath::Dot(n1,n2) > 0.0) && (vtkMath::Dot(n2,n3) > 0.0) ) --- > if ( (vtkMath::Dot(n1,n2) >= 0.0) && (vtkMath::Dot(n2,n3) >= 0.0) ) |
(0000719) Goodwin Lawlor (reporter) 2004-03-02 13:20 |
A new diff: RCS file: /cvsroot/VTK/VTK/Common/vtkTriangle.cxx,v retrieving revision 1.103 diff -u -r1.103 vtkTriangle.cxx --- Common/vtkTriangle.cxx 8 Jan 2004 15:31:22 -0000 1.103 +++ Common/vtkTriangle.cxx 2 Mar 2004 18:18:03 -0000 @@ -985,7 +985,7 @@ // Check whether normals go in same direction // - if ( (vtkMath::Dot(n1,n2) > 0.0) && (vtkMath::Dot(n2,n3) > 0.0) ) + if ( (vtkMath::Dot(n1,n2) >= 0.0) && (vtkMath::Dot(n2,n3) >= 0.0) ) { return 1; } |
(0000753) Mathieu Malaterre (developer) 2004-03-10 18:01 |
Fixed in CVS, thanks Goodwin. |
Notes |
Issue History | |||
Date Modified | Username | Field | Change |
2010-11-29 17:59 | Mathieu Malaterre | Source_changeset_attached | => VTK master 1709e362 |
2011-01-13 17:00 | Source_changeset_attached | => VTK master a2bd8391 | |
2011-01-13 17:00 | Source_changeset_attached | => VTK master 020ef709 | |
2011-06-16 13:11 | Zack Galbreath | Category | => (No Category) |
Issue History |
Copyright © 2000 - 2018 MantisBT Team |