Back to Aurora Vision Library website

You are here: Start » Function Reference » Geometry 2D » Geometry 2D Relations » CreatePointGraph

CreatePointGraph


Header: AVL.h
Namespace: avl
Module: FoundationPro

Creates a graph of points that lie close to each other.

Syntax

C++
C#
 
void avl::CreatePointGraph
(
	const atl::Array<avl::Point2D>& inPoints,
	const int inMaxRank,
	float inMinDistance,
	atl::Optional<float> inMaxDistance,
	atl::Optional<float> inMaxRelativeDistance,
	atl::Array<atl::Array<int> >& outGraph,
	atl::Array<atl::Array<float> >& outDistances,
	atl::Array<avl::Segment2D>& diagSegments
)

Parameters

Name Type Range Default Description
Input value inPoints const Array<Point2D>& Input points
Input value inMaxRank const int 1 - 8 Maximum connections going out of one point
Input value inMinDistance float 0.0 - 0.0f Minimum distance between adjacent point in the graph
Input value inMaxDistance Optional<float> 0.0 - 10.0f Maximum distance between adjacent point in the graph
Input value inMaxRelativeDistance Optional<float> 1.0 - NIL Maximum distance in relation to the shortest distance for a point
Output value outGraph Array<Array<int> >& Graph of points (adjacency list)
Output value outDistances Array<Array<float> >& Distances between adjacent points in the graph
Diagnostic input diagSegments Array<Segment2D>& Graph edges, useful for visualization

Errors

List of possible exceptions:

Error type Description
DomainError Minimum distance is greater than maximum distance in CreatePointGraph.