Skip to content

Geometry_Engine: Collinearity check is not precise enough #3285

Closed
@pawelbaran

Description

@pawelbaran

Description:

Query.IsCollinear(List<Point>, double) is currently a numerical check rather than geometrical - we create a matrix based on point coordinates and check whether it has enough zero rows. Transformation of geometrical tolerance to numerical is virtually impossible, therefore in edge cases points that should be considered collinear within tolerance, are returned as not, which starts becoming an issue in more complex workflows using this method.

This could be fixed by fitting an infinite line between points and then checking if they lie within tolerance from it.

Test file(s):

Metadata

Metadata

Assignees

Labels

type:bugError or unexpected behaviour

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions