# ArCameraIntrinsics

Provides information about the physical characteristics of the device camera.

## Summary

| ### Typedefs ||
|---|---|
| `https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics` | typedef `struct ArCameraIntrinsics_` The physical characteristics of a given camera. |

| ### Functions ||
|---|---|
| `https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics_create(const https://developers.google.com/ar/reference/c/group/ar-session#arsession *session, https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics **out_camera_intrinsics)` | `void` Allocates a camera intrinstics object. |
| `https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics_destroy(https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics *camera_intrinsics)` | `void` Releases the provided camera intrinsics object. |
| `https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics_getfocallength(const https://developers.google.com/ar/reference/c/group/ar-session#arsession *session, const https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics *intrinsics, float *out_fx, float *out_fy)` | `void` Returns the camera's focal length in pixels. |
| `https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics_getimagedimensions(const https://developers.google.com/ar/reference/c/group/ar-session#arsession *session, const https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics *intrinsics, int32_t *out_width, int32_t *out_height)` | `void` Returns the image's width and height in pixels. |
| `https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics_getprincipalpoint(const https://developers.google.com/ar/reference/c/group/ar-session#arsession *session, const https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics *intrinsics, float *out_cx, float *out_cy)` | `void` Returns the principal point in pixels. |

## Typedefs

### ArCameraIntrinsics

```
struct ArCameraIntrinsics_ ArCameraIntrinsics
```
The physical characteristics of a given camera.


- Allocate with: `https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics_create`
- Release with: `https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics_destroy`

<br />

## Functions

### ArCameraIntrinsics_create

```
void ArCameraIntrinsics_create(
  const ArSession *session,
  ArCameraIntrinsics **out_camera_intrinsics
)
```
Allocates a camera intrinstics object.


| Details ||
|---|---|
| Parameters | |---|---| | `session` | The ARCore session | | `out_camera_intrinsics` | The `https://developers.google.com/ar/reference/c/group/ar-camera-intrinsics#arcameraintrinsics` data. | |

### ArCameraIntrinsics_destroy

```
void ArCameraIntrinsics_destroy(
  ArCameraIntrinsics *camera_intrinsics
)
```
Releases the provided camera intrinsics object.

### ArCameraIntrinsics_getFocalLength

```
void ArCameraIntrinsics_getFocalLength(
  const ArSession *session,
  const ArCameraIntrinsics *intrinsics,
  float *out_fx,
  float *out_fy
)
```
Returns the camera's focal length in pixels.

The focal length is conventionally represented in pixels. For a detailed explanation, please see <https://ksimek.github.io/2013/08/13/intrinsic>. Pixels-to-meters conversion can use SENSOR_INFO_PHYSICAL_SIZE and SENSOR_INFO_PIXEL_ARRAY_SIZE in the Android Camera Characteristics API.

### ArCameraIntrinsics_getImageDimensions

```
void ArCameraIntrinsics_getImageDimensions(
  const ArSession *session,
  const ArCameraIntrinsics *intrinsics,
  int32_t *out_width,
  int32_t *out_height
)
```
Returns the image's width and height in pixels.

### ArCameraIntrinsics_getPrincipalPoint

```
void ArCameraIntrinsics_getPrincipalPoint(
  const ArSession *session,
  const ArCameraIntrinsics *intrinsics,
  float *out_cx,
  float *out_cy
)
```
Returns the principal point in pixels.