CGAL 6.1.3 - dD Spatial Searching
Loading...
Searching...
No Matches
OrthogonalDistance Concept Reference

Definition

Requirements of an orthogonal distance class supporting incremental distance updates. To optimize distance computations transformed distances are used. E.g., for a Euclidean distance the transformed distance is the squared Euclidean distance.

Refines
GeneralDistance
Has models
CGAL::Euclidean_distance<Traits>
CGAL::Weighted_Minkowski_distance<Traits>

Types

typedef unspecified_type D
 Dimension Tag.
typedef unspecified_type FT
 Number type.
typedef unspecified_type Point_d
 Point type.
typedef unspecified_type Query_item
 Query item type.

Creation

 OrthogonalDistance ()
 Constructor implementing distance for d-dimensional points.

Operations

FT transformed_distance (Query_item q, Point_d r) const
 Returns the transformed distance between q and r.
FT min_distance_to_rectangle (Query_item q, Kd_tree_rectangle< FT, D > r) const
 Returns the transformed distance between q and the point on the boundary of r closest to q.
FT min_distance_to_rectangle (Query_item q, Kd_tree_rectangle< FT, D > r, std::vector< FT > &dists)
 Returns the transformed distance between q and the point on the boundary of r closest to q.
FT max_distance_to_rectangle (Query_item q, Kd_tree_rectangle< FT, D > r) const
 Returns the transformed distance between q and the point on the boundary of r farthest to q.
FT max_distance_to_rectangle (Query_item q, Kd_tree_rectangle< FT, D > r, std::vector< FT > &dists)
 Returns the transformed distance between q and the point on the boundary of r farthest to q.
FT transformed_distance (FT d) const
 Returns the transformed distance.
FT inverse_of_transformed_distance (FT d) const
 Returns the inverse of the transformed distance.
FT new_distance (FT dist, FT old_off, FT new_off, int cutting_dimension) const
 Updates dist incrementally and returns the updated distance.

Member Function Documentation

◆ max_distance_to_rectangle()

FT OrthogonalDistance::max_distance_to_rectangle ( Query_item q,
Kd_tree_rectangle< FT, D > r,
std::vector< FT > & dists )

Returns the transformed distance between q and the point on the boundary of r farthest to q.

The vector dists has the size of the dimension of the data points and is filled with the distance in each dimension.

◆ min_distance_to_rectangle()

FT OrthogonalDistance::min_distance_to_rectangle ( Query_item q,
Kd_tree_rectangle< FT, D > r,
std::vector< FT > & dists )

Returns the transformed distance between q and the point on the boundary of r closest to q.

The vector dists has the size of the dimension of the data points and is filled with the distance in each dimension.

#include <Concepts/OrthogonalDistance.h>

Definition

Requirements of an orthogonal distance class supporting incremental distance updates. To optimize distance computations transformed distances are used. E.g., for a Euclidean distance the transformed distance is the squared Euclidean distance.

Refines
GeneralDistance
Has models
CGAL::Euclidean_distance<Traits>
CGAL::Weighted_Minkowski_distance<Traits>

Types

typedef unspecified_type D
 Dimension Tag.
typedef unspecified_type FT
 Number type.
typedef unspecified_type Point_d
 Point type.
typedef unspecified_type Query_item
 Query item type.

Creation

 OrthogonalDistance ()
 Constructor implementing distance for d-dimensional points.

Operations

FT transformed_distance (Query_item q, Point_d r) const
 Returns the transformed distance between q and r.
FT min_distance_to_rectangle (Query_item q, Kd_tree_rectangle< FT, D > r) const
 Returns the transformed distance between q and the point on the boundary of r closest to q.
FT min_distance_to_rectangle (Query_item q, Kd_tree_rectangle< FT, D > r, std::vector< FT > &dists)
 Returns the transformed distance between q and the point on the boundary of r closest to q.
FT max_distance_to_rectangle (Query_item q, Kd_tree_rectangle< FT, D > r) const
 Returns the transformed distance between q and the point on the boundary of r farthest to q.
FT max_distance_to_rectangle (Query_item q, Kd_tree_rectangle< FT, D > r, std::vector< FT > &dists)
 Returns the transformed distance between q and the point on the boundary of r farthest to q.
FT transformed_distance (FT d) const
 Returns the transformed distance.
FT inverse_of_transformed_distance (FT d) const
 Returns the inverse of the transformed distance.
FT new_distance (FT dist, FT old_off, FT new_off, int cutting_dimension) const
 Updates dist incrementally and returns the updated distance.

Member Function Documentation

◆ max_distance_to_rectangle()

FT OrthogonalDistance::max_distance_to_rectangle ( Query_item q,
Kd_tree_rectangle< FT, D > r,
std::vector< FT > & dists )

Returns the transformed distance between q and the point on the boundary of r farthest to q.

The vector dists has the size of the dimension of the data points and is filled with the distance in each dimension.

◆ min_distance_to_rectangle()

FT OrthogonalDistance::min_distance_to_rectangle ( Query_item q,
Kd_tree_rectangle< FT, D > r,
std::vector< FT > & dists )

Returns the transformed distance between q and the point on the boundary of r closest to q.

The vector dists has the size of the dimension of the data points and is filled with the distance in each dimension.