You are here: Start » AVL.NET » AVL.ArrangePoint3DArray

# AVL.ArrangePoint3DArray

Creates a surface structure from Point3D array taking into account X and Y coordinates.

Namespace: AvlNet AVL.NET.dll

### Syntax

C++
C#

public static void ArrangePoint3DArray
(
IList<AvlNet.Point3D> inPoints,
double? inMinX,
double? inMaxX,
double inXScale,
double? inMinY,
double? inMaxY,
double inYScale,
double inZOffset,
double inZScale,
AvlNet.PlainType inPointType,
AvlNet.Surface outSurface,
out double outMinX,
out double outMinY,
AvlNet.Region diagSurfaceValidPointsRegion
)


### Parameters

Name Type Range Default Description
inPointsSystem.Collections.Generic.IList<AvlNet.Point3D>
inMinXdouble?
inMaxXdouble?
inXScaledouble<0.000001, INF>1.0DDefault value: 1.0D.
inMinYdouble?
inMaxYdouble?
inYScaledouble<0.000001, INF>1.0DDefault value: 1.0D.
inZOffsetdouble
inZScaledouble<0.000001, INF>1.0DDefault value: 1.0D.
inPointTypeAvlNet.PlainTypeInt16Type of single point Z coordinate. Default value: Int16.
outSurfaceAvlNet.Surface
outMinXdouble
outMinYdouble
diagSurfaceValidPointsRegionAvlNet.RegionRegion of locations where the surface points are valid.

### Description

The operation creates a surface object basing on the input points in 3D. The X and Y coordinates of the output surface object points are very regular, so the whole output object has neatly organized structure. Internally, the XY plane is divided into rectangular tiles with dimensions equal to inXScale and inYScale. Each tile will represent one output surface point. The point is computed as an average of all input points that are located in the corresponding tile. If none of the input points is present in a tile, the output point for such a tile is indefinite and set to the point in infinity.

### Examples

 Input Point3DArray. Output Surface.

ArrangePoint3DArray performed on a sample surface.

### Errors

List of possible exceptions:

Error type Description
DomainError Empty point array in ArrangePoint3DArray.
DomainError Incorrect coordinate limits in ArrangePoint3DArray.
DomainError Surface dimensions too big in ArrangePoint3DArray.