## V# main feature overview

V# comprises over 800 methods in over 15000 lines of code. The most important are:

## Spatial point, edge, line, plane, triangle, circle, ellipse and arc operations:

- Distances and perpendiculars between all supported objects
- Parallel projections of all supported objects
- Point reflection, reflection across a line, reflection through a plane of all supported objects
- Coordinate transformation, scaling, moving, arbitrary center rotation of all supported objects
- Tests: Intersection, containment, collinearity, coplanarity, overlap and other

- Triangle: barycentric and trilinear coordinates
- Triangle: slice by plane
- Triangle: many special points, circles and lines (e.g. in-, ex- and circumcircles, inscribed ellipse)
- Plane: analytic, coordinate, normal coordinate and parametric form
- Circles: construct from three points, tangents

## Pointsets

- 2d and 3d multiple point removal
- Orthogonal least square lines and planes
- High performance rotation, moving, coordinate transformation
- Random permutation
- Lexicographical sort
- ASCII file IO

## 3x3 Matrices

- Arbitrary, fixed and moving axes rotation matrices
- Cross product matrix, identity matrix
- Determinant, inverse, transpose, eigenvectors and eigenvalues
- Orthonormalization and orthogonalization
- Trace, norm
- Tests for symmetry, orthogonality, rotation and positive definite
- Linear system solver

## 4x4 matrices

- Determinant
- Linear system solver

## Vectors

- Dot, cross and tensor product
- Projection on plane/vector
- Normalization
- Rotation
- Coordinate transformation
- Angle between two vectors
- Bisecting vector of two vectors
- Parallelity and orthogonality test
- Test for linear independency

## DXF file output

- AC1009 format dxf export of all objects
- Additional text output
- All entities on user-definable layers
- Linetype, point display mode definition

## Others

- Golden section line search
- Random generator
- Kernel time gauge
- Coordinate transformation by four point in two systems ("align")