mirror of
https://git.mirrors.martin98.com/https://github.com/prusa3d/PrusaSlicer.git
synced 2025-07-31 13:31:58 +08:00
Fix. Now correct check when 2 vector have same direction
This commit is contained in:
parent
d6616be202
commit
24208b4daa
@ -23,6 +23,18 @@ Slic3r::Point PointUtils::perp(const Point &vector)
|
||||
|
||||
bool PointUtils::is_same_direction(const Point &dir1, const Point &dir2)
|
||||
{
|
||||
return (is_majorit_x(dir1)) ? (dir1.x() > 0) == (dir2.x() > 0) :
|
||||
(dir1.y() > 0) == (dir2.y() > 0);
|
||||
// (is_majorit_x(dir1)) ? (dir1.x() > 0) == (dir2.x() > 0) :
|
||||
// (dir1.y() > 0) == (dir2.y() > 0);
|
||||
// Cant use majorit direction:
|
||||
// [2] 750000 544907
|
||||
// [2] 463525 -1426583
|
||||
// !! bad idea
|
||||
|
||||
// Cant use dot product for int value ==> dir1.dot(dir2)
|
||||
// diferent int result for input
|
||||
//[2] - 128707028 93448506
|
||||
//[2] 10475487 1662574
|
||||
// may be overflow ??
|
||||
|
||||
return dir1.cast<float>().dot(dir2.cast<float>()) > 0;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user