From 7ad5b81283c39e66ba2ca84314e283f277fc77e0 Mon Sep 17 00:00:00 2001 From: yy1717 <fctom1215@outlook.com> Date: 星期五, 03 四月 2020 11:39:17 +0800 Subject: [PATCH] 坐标 --- lib/src/main/cpp/test_items/stop_and_start.cpp | 14 ++++++++++---- 1 files changed, 10 insertions(+), 4 deletions(-) diff --git a/lib/src/main/cpp/test_items/stop_and_start.cpp b/lib/src/main/cpp/test_items/stop_and_start.cpp index b57ceec..3b904d6 100644 --- a/lib/src/main/cpp/test_items/stop_and_start.cpp +++ b/lib/src/main/cpp/test_items/stop_and_start.cpp @@ -90,7 +90,7 @@ { double dis2 = DistanceOfTire2Edge(map, car); - MA_SendDistance(-1, dis2); + MA_SendDistance(DistanceOf(map->point[8], map->point[7]) - dis2, dis2); } if (prevMoveDirect != moveDirect) { @@ -262,7 +262,13 @@ // 鍏ㄨ溅閮介渶涓嶅湪鍦板浘涓� bool ret = false; - Polygon carBody; + Polygon carBody, map2; + PointF vPoint = Calc3Point(map->point[8], map->point[0], DistanceOf(map->point[8], map->point[7]), 'R'); + + map2.num = 4; + map2.point = (PointF *)malloc(map2.num * sizeof(PointF)); + + MakePolygon(&map2, {vPoint, map->point[0], map->point[7], map->point[8]}); carBody.num = car->bodyNum; carBody.point = (PointF *)malloc(carBody.num * sizeof(PointF)); @@ -270,11 +276,11 @@ carBody.point[i] = car->carXY[car->body[i]]; } - if (IntersectionOf(&carBody, map) == GM_None) { + if (IntersectionOf(&carBody, &map2) == GM_None) { ret = true; } free(carBody.point); - + free(map2.point); return ret; } -- Gitblit v1.8.0