# Available Mapping Functions

Odysseus provides a wide range of functions to be used in a Map, Select, or Join operator.

## Mathematic Function

### Cos

### Sin

### Tan

Implemented?

### ACos

Implemented?

### ASin

Implemented?

### ATan

Implemented?

### Abs

Returns the absolute value of a value

### Ceil

Returns the smallest value that is greater than or equal to the argument and is equal to a mathematical integer.

### Floor

Returns the largest value that is less than or equal to the argument and is equal to a mathematical integer.

### Round

Returns the closest number to the argument, with ties rounding up

### ToRadian

Converts an angle measured in degrees to an equivalent angle measured in radians.

### ToDegree

Converts an angle measured in radians to an equivalent angle measured in degrees.

## Datatype Functions

### DoubleToShort

Converts the given double value to a *short* value

### DoubleToByte

Converts the given double value to a *byte* value

### DoubleToFloat

Converts the given double value to a *float* value

### DoubleToLong

Converts the given double value to a *long* value

### ToShort

Converts the given value to a *short* value. This function converts any value to a *short* value, thus it is more time consuming than the DoubleToShort function for double values.

### ToByte

Converts the given value to a *byte* value. This function converts any value to a *byte* value, thus it is more time consuming than the DoubleToByte function for double values.

### ToFloat

Converts the given value to a *float* value. This function converts any value to a *float* value, thus it is more time consuming than the DoubleToFloat function for double values.

### ToLong

Converts the given value to a *long* value. This function converts any value to a *long* value, thus it is more time consuming than the DoubleToLong function for double values.

## Spatial Functions

## Spatial Grid Functions

### MoveViewPoint

### RotateViewPoint

### ToGrid

### SubGrid

### RotateGrid

### SpreadOccupancyGrid

The SpreadOccupancyGrid function takes 4 parameters: A cartesian grid, the timestamp of the grid, the current timestamp, and the velocity.

### MergeOccupancyGrid

The MergOccupancyGrid function takes 6 parameters: A cartesian grid, the polar coordinates, the origin, the transform angle, the polar radius, and the polar cellsize.

Most function descriptions on this page are copied from the openjdk documentation.