Hermes
|
The implementantion of TRACLUS algorithm. More...
#include "../../Spatial/SegmentSP/Definition.h"
Functions | |
PointSP * | projectionPointTraclus (const PointSP *point, const SegmentSP *segment, PointSP *result) |
The function returns the perpendicular projection of point onto a line and is need it by the TRACLUS algorithm. It`s definition is given by [lee2007trajectory.] More... | |
PGDLLEXPORT Datum | projectionPointTraclusV1 (PG_FUNCTION_ARGS) |
float8 | perpendicularDistanceTraclus (const SegmentSP *segmentA, const SegmentSP *segmentB) |
The function returns the perpendicular distance between two segments and is need it by the TRACLUS algorithm. It`s definition is given by [lee2007trajectory.] More... | |
float8 | parallelDistanceTraclus (const SegmentSP *segmentA, const SegmentSP *segmentB) |
The function returns the parallel distance between two segments and is need it by the TRACLUS algorithm. It`s definition is given by [lee2007trajectory.] More... | |
float8 | angleDistanceTraclus (const SegmentSP *segmentA, const SegmentSP *segmentB) |
The function returns the anle distance between two segments and is need it by the TRACLUS algorithm. It`s definition is given by [lee2007trajectory.] More... | |
float8 | traclusDistance (const SegmentSP *segmentA, const SegmentSP *segmentB, float4 w_perpendicular, float4 w_parallel, float4 w_angle) |
The function returns the TRACLUS clustering. It`s definition is given by [lee2007trajectory.] More... | |
PGDLLEXPORT Datum | perpendicularDistanceTraclusV1 (PG_FUNCTION_ARGS) |
PGDLLEXPORT Datum | parallelDistanceTraclusV1 (PG_FUNCTION_ARGS) |
PGDLLEXPORT Datum | angleDistanceTraclusV1 (PG_FUNCTION_ARGS) |
PGDLLEXPORT Datum | traclusDistanceV1 (PG_FUNCTION_ARGS) |
The implementantion of TRACLUS algorithm.
TRACLUS (TRAjectory CLUStering) is an algorithm introduced by [lee2007trajectory] for the trejectoring clustering of similiar trajectories. For more detailed descritpion look at TRACLUS distance functions
The function returns the anle distance between two segments and is need it by the TRACLUS algorithm. It`s definition is given by [lee2007trajectory.]
References angleXXLineSP(), lengthSegmentSP(), radians2degrees(), and SegmentSP2LineSP().
Referenced by angleDistanceTraclusV1(), and traclusDistance().
PGDLLEXPORT Datum angleDistanceTraclusV1 | ( | PG_FUNCTION_ARGS | ) |
The function returns the parallel distance between two segments and is need it by the TRACLUS algorithm. It`s definition is given by [lee2007trajectory.]
References distancePointSP_PointSP(), SegmentSP::e, SegmentSP::i, and projectionPointTraclus().
Referenced by parallelDistanceTraclusV1(), and traclusDistance().
PGDLLEXPORT Datum parallelDistanceTraclusV1 | ( | PG_FUNCTION_ARGS | ) |
The function returns the perpendicular distance between two segments and is need it by the TRACLUS algorithm. It`s definition is given by [lee2007trajectory.]
References distancePointSP_PointSP(), SegmentSP::e, SegmentSP::i, and projectionPointTraclus().
Referenced by perpendicularDistanceTraclusV1(), and traclusDistance().
PGDLLEXPORT Datum perpendicularDistanceTraclusV1 | ( | PG_FUNCTION_ARGS | ) |
PointSP* projectionPointTraclus | ( | const PointSP * | point, |
const SegmentSP * | segment, | ||
PointSP * | result | ||
) |
The function returns the perpendicular projection of point onto a line and is need it by the TRACLUS algorithm. It`s definition is given by [lee2007trajectory.]
References SegmentSP::e, SegmentSP::i, round(), PointSP::x, and PointSP::y.
Referenced by parallelDistanceTraclus(), perpendicularDistanceTraclus(), and projectionPointTraclusV1().
PGDLLEXPORT Datum projectionPointTraclusV1 | ( | PG_FUNCTION_ARGS | ) |
float8 traclusDistance | ( | const SegmentSP * | segmentA, |
const SegmentSP * | segmentB, | ||
float4 | w_perpendicular, | ||
float4 | w_parallel, | ||
float4 | w_angle | ||
) |
The function returns the TRACLUS clustering. It`s definition is given by [lee2007trajectory.]
References angleDistanceTraclus(), parallelDistanceTraclus(), and perpendicularDistanceTraclus().
Referenced by traclusDistanceV1().
PGDLLEXPORT Datum traclusDistanceV1 | ( | PG_FUNCTION_ARGS | ) |