PIVector2D - add funcs, optimize, tests, fixes, doxygen #194

Merged
andrey merged 29 commits from vibecoding_pivector2d into master 2026-02-27 23:58:45 +03:00
Showing only changes of commit 42b2fd4dbe - Show all commits

View File

@@ -34,15 +34,21 @@
### 1.4 Собрать проект
- собери проект, при необходимости поправь ошибки
- тесты не трогай
### 1.5 Проверить тесты
## Этап 2: Проверить и поправить тесты
### 2.1 Запустить тесты
- Запустить: `./build/tests/pip_math_test --gtest_filter="*Vector2D*"`
### 2.2 Поправить код или тесты
- внести правки в pivector2d.h
---
## Этап 2: Заменить PIPair<ssize_t, ssize_t> на PIVector2DIndex
## Этап 3: Заменить PIPair<ssize_t, ssize_t> на PIVector2DIndex
### 2.1 Создать структуру PIVector2DIndex
### 3.1 Создать структуру PIVector2DIndex
```cpp
struct PIVector2DIndex {
ssize_t row;
@@ -50,19 +56,12 @@ struct PIVector2DIndex {
};
```
### 2.2 Обновить return types
### 3.2 Обновить return types
Методы для изменения:
- indexOf() -> возвращает PIVector2DIndex вместо PIPair<ssize_t, ssize_t>
- lastIndexOf()
- indexWhere()
- lastIndexWhere()
### 2.3 Обновить тесты и документацию
---
## Этап 3: Дополнительные улучшения (опционально)
- Добавить методы для работы с диапазонами
- Оптимизировать методы удаления строк/столбцов
- Добавить проверку границ в debug-режиме