# Класс «irCamera»

Предоставляет доступ к инфракрасному датчику MLX90640, подключенному по шине I2C, в режиме камеры и сенсора.

| Метод                     | Описание                                                                               |
| ------------------------- | -------------------------------------------------------------------------------------- |
| [init](#init)             | Инициализирует ИК-камеру и запускает захват кадров.                                    |
| [getImage](#getImage)     | Возвращает цветное изображение в виде массива байтов.                                  |
| [readSensor](#readSensor) | Возвращает среднее значение температуры в специальной шкале в указанном участке кадра. |
| [stop](#stop)             | Останавливает захват кадров.                                                           |

## init

Инициализирует инфракрасную камеру и запускает захват кадров.

#### Синтаксис

{% tabs %}
{% tab title="Python" %}

```python
brick.irCamera().init()
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
brick.irCamera().init();
```

{% endtab %}
{% endtabs %}

## getImage

Возвращает цветное изображение ширины `32` и высоты `24` пикселя в виде массива байтов в формате «rgb32».

#### Синтаксис

{% tabs %}
{% tab title="Python" %}

```python
image = brick.irCamera().getImage()
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
var image = brick.irCamera().getImage();
```

{% endtab %}
{% endtabs %}

#### Пример

Вывод изображения на экран.

{% tabs %}
{% tab title="Python" %}

```python
image = brick.irCamera().getImage()
brik.display().show(image, 32, 24, "rgb32")
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
var image = brick.irCamera().getImage();
brik.display().show(image, 32, 24, "rgb32");
```

{% endtab %}
{% endtabs %}

## readSensor

Возвращает среднее значение температуры в специальной шкале в указанном участке кадра.

Кадр делится на квадраты сеткой, по умолчанию `3` на `3`, размерность сетки можно задать в `model-config.xml` на роботе. Квадраты индексируются с `1`. То есть `(1, 1)` — это левый верхний край кадра, `(2, 2)` — его центр.

Возвращаемое значение — среднее значение температуры в указанном квадрате в следующей шкале:

* Значение меньше `0` — камера не инициализирована
* `0` — соответствует температуре льда из морозильной камеры и ниже
* `1` — соответствует температуре воды из холодильника
* `2` — соответствует температуре в помещении
* `3` — соответствует температуре тела человека
* `4` — соответствует температуре тёплой воды
* `5` — соответствует температуре горячей (близкой к температуре кипения) воды
* `6` — соответствует температуре больше температуры кипения воды

#### Синтаксис

{% tabs %}
{% tab title="Python" %}

```python
temp = brick.irCamera().readSensor(x, y)
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
var temp = brick.irCamera().readSensor(x, y);
```

{% endtab %}
{% endtabs %}

В качестве параметра необходимо указать индексы квадрата `x` и `y`.

## stop

#### Синтаксис

Останавливает захват кадров до следующего вызова `init()`.

{% tabs %}
{% tab title="Python" %}

```python
brick.irCamera().stop()
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
brick.irCamera().stop();
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.trikset.com/trik/programming-code/object-brick/class-ircamera.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
