|
|
|
Геометрия c TPointF. Как правильно использовать CrossProduct, DotProduct
|
|||
|---|---|---|---|
|
#18+
Всем привет! Пишу тут небольшую софтину для работы с геометрией. Постоянно затыки с точностью расчетов. Использую для хранения точек TPointF. Например, простейшая функция проверки принадлежности точки окружности: SameValue(x*x+y*y,r*r) возвращает false. А должно быть true. Далее, принадлежность точки прямой - SameValue((p2-p1).CrossProduct(M-P1)) - аналогично. Из ситуации вышел пока что заданием допустимой погрешности (0.5 в первом случае и 0.1 во втором). Как поступить правильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 11:51:01 |
|
||
|
Геометрия c TPointF. Как правильно использовать CrossProduct, DotProduct
|
|||
|---|---|---|---|
|
#18+
hottabych31Как поступить правильно? Задание погрешности это и есть самый правильный путь. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 12:29:06 |
|
||
|
Геометрия c TPointF. Как правильно использовать CrossProduct, DotProduct
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Спасибо, буду писать больше тестов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 12:37:13 |
|
||
|
Геометрия c TPointF. Как правильно использовать CrossProduct, DotProduct
|
|||
|---|---|---|---|
|
#18+
hottabych31, там у TPointF есть метод EqualsTo А для задания погрешности есть рекомендованные константы Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 14:48:34 |
|
||
|
|

start [/forum/topic.php?fid=58&fpage=130&tid=2041755]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
71ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 215ms |
| total: | 391ms |

| 0 / 0 |
