| IGLib 1.5 The IGLib base library for development of numerical, technical and business applications.

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events
Public Member Functions | Properties | List of all members
IG.Num.IPointContainer< PointType > Interface Template Reference

Basic interface for point container classes. More...

Inheritance diagram for IG.Num.IPointContainer< PointType >:
[legend]

## Public Member Functions
IVector | GetPointCoordinates ()
| returns vector coo-rdinates (or input parameters) of the point contained in the current container. More...
IVector | GetPointCoordinates (PointType point)
| Returns vector of co-ordinates (or input parameters) of the specified point. More...
IVector | GetPointOutputVector (PointType point)
| Gets the vector of output values of the point contained in the current container. <pra>This method must be overridden in derived classes that use this functionality (not all point containers use it).</pra> More...
IVector | GetPointOutputVector ()
| Gets the vector of output values of the point containet in the current container. <pra>This method must be overridden in derived classes that use this functionality (not all point containers use it).</pra> More...

## Properties
PointType | Point`[get]`
| Point that is enclosed by the current point container object. More...
int | Id`[get]`
| Unique ID of the current point container (important also for testing and debugging). More...
int | Index`[get]`
| Index of the current point in the original list of points where it can be accessed. More...
double | StoredDistance`[get, set]`
| Stored distance to a reference point, which is used to increase performance of operations that perform comparison of point containers by the distance to some reference point. More...

## Detailed Description

Basic interface for point container classes.

Template Parameters

  PointType | Type of point objects that are embedded in point container.

## Member Function Documentation

IVector IG.Num.IPointContainer< PointType >.GetPointCoordinates | ( |  | ) |

returns vector coo-rdinates (or input parameters) of the point contained in the current container.

Implemented in IG.Num.PointContainer< PointLinkType, PointContainerType, PointType >.

IVector IG.Num.IPointContainer< PointType >.GetPointCoordinates | ( | PointType | point | ) |

Returns vector of co-ordinates (or input parameters) of the specified point.

Parameters

  point | Point whose co-ordinates are returned.

Implemented in IG.Num.PointContainer< PointLinkType, PointContainerType, PointType >.

IVector IG.Num.IPointContainer< PointType >.GetPointOutputVector | ( | PointType | point | ) |

Gets the vector of output values of the point contained in the current container. <pra>This method must be overridden in derived classes that use this functionality (not all point containers use it).</pra>

This functionality is used only in those types of points that have input parameters and output values, such as approximation data points.

Implemented in IG.Num.PointContainer< PointLinkType, PointContainerType, PointType >.

IVector IG.Num.IPointContainer< PointType >.GetPointOutputVector | ( |  | ) |

Gets the vector of output values of the point containet in the current container. <pra>This method must be overridden in derived classes that use this functionality (not all point containers use it).</pra>

This functionality is used only in those types of points that have input parameters and output values, such as approximation data points.

Implemented in IG.Num.PointContainer< PointLinkType, PointContainerType, PointType >.

## Property Documentation

PointType IG.Num.IPointContainer< PointType >.Point
| get

Point that is enclosed by the current point container object.

Referenced by IG.Num.PointCloud< PointLinkType, PointContainerType, PointType >.AddPoints(), and IG.Num.PointCloud< PointLinkType, PointContainerType, PointType >.SetPoints().

int IG.Num.IPointContainer< PointType >.Id
| get

Unique ID of the current point container (important also for testing and debugging).

int IG.Num.IPointContainer< PointType >.Index
| get

Index of the current point in the original list of points where it can be accessed.

double IG.Num.IPointContainer< PointType >.StoredDistance
| get set

Stored distance to a reference point, which is used to increase performance of operations that perform comparison of point containers by the distance to some reference point.

Storing distance to a reference point can significantly speed up sorting operations where points are compared according to their distance to the specified reference point. Since CPU time spent for calculation of the distance is proportional to the dimension of space where points are embedded, we can save time if we only calculate the distance to a reference point once and then in all comparisons use the already calculated distance. For example, when sorting N point, on average N*log_2(N) comparisons of point pairs are performed, each of which would need to calculate distances of both compared points from the specified reference point. If we calculate the distances in advance and use stored distances in sorting, distance calculation is performed only N times. If N=1000, this means about ten times less distance calculations and almost 10 times less time for sorting in higher space dimensions.

The documentation for this interface was generated from the following file:

- igbase/numeric/geometry/pointclouds/PointContainer.cs