From 6c641de854f0c0234e6ef34257aa98d3ea6cffd4 Mon Sep 17 00:00:00 2001 From: MaximZaitsev Date: Fri, 26 Aug 2016 12:08:15 +0300 Subject: [PATCH] add param for select test room --- car_srv/kotlinSrv/src/Main.kt | 4 ++ car_srv/kotlinSrv/src/Test.kt | 4 +- car_srv/kotlinSrv/src/room/Room.kt | 109 ++++++++++++++++------------- 3 files changed, 65 insertions(+), 52 deletions(-) diff --git a/car_srv/kotlinSrv/src/Main.kt b/car_srv/kotlinSrv/src/Main.kt index 55dedcd738a..21e436a94cf 100644 --- a/car_srv/kotlinSrv/src/Main.kt +++ b/car_srv/kotlinSrv/src/Main.kt @@ -9,6 +9,7 @@ import net.server.handlers.main.GetSonarData import net.server.handlers.main.SetRoute import net.server.handlers.main.SetRouteMetric import net.server.handlers.rc.Control +import room.Room val carServerPort: Int = 8888 val mainServerPort = 7925 @@ -28,6 +29,9 @@ fun main(args: Array) { when (arg) { "-t" -> runTests = true "-e" -> runAsEmulator = true + "-tr1" -> Room.walls = Room.testRoom1() + "-tr2" -> Room.walls = Room.testRoom2() + "-tr3" -> Room.walls = Room.testRoom3() } } val carController = diff --git a/car_srv/kotlinSrv/src/Test.kt b/car_srv/kotlinSrv/src/Test.kt index 6ffa3ce9d8b..33f4268ab7d 100644 --- a/car_srv/kotlinSrv/src/Test.kt +++ b/car_srv/kotlinSrv/src/Test.kt @@ -13,8 +13,8 @@ private fun testCarEmulator() { sonarResponse.mergeFrom(CodedInputStream(bytes)) val dist0 = sonarResponse.distances[0] val dist90 = sonarResponse.distances[1] - eq(dist0.toDouble(), Math.abs(Room.rightLine.C / Room.rightLine.A), "check angle 0", 2.5) - eq(dist90.toDouble(), Room.bottomLine.C / Room.bottomLine.B, "check angle 90", 2.5) + eq(dist0.toDouble(), 200.0, "check angle 0", 2.5) + eq(dist90.toDouble(), 20.0, "check angle 90", 2.5) }) println("--------------------") diff --git a/car_srv/kotlinSrv/src/room/Room.kt b/car_srv/kotlinSrv/src/room/Room.kt index f64e78fc697..9570225b77c 100644 --- a/car_srv/kotlinSrv/src/room/Room.kt +++ b/car_srv/kotlinSrv/src/room/Room.kt @@ -5,6 +5,8 @@ import geometry.Line object Room { + var walls = testRoom1() + /* _________ | | @@ -13,61 +15,68 @@ object Room { */ - val upLine = Line(0.0, 1.0, -300.0) - val leftLine = Line(1.0, 0.0, 150.0) - val bottomLine = Line(0.0, 1.0, 20.0) - val rightLine = Line(1.0, 0.0, -200.0) - - val walls = listOf(Wall(upLine, 200, -150, 300, 300), - Wall(leftLine, -150, -150, 300, -20), - Wall(bottomLine, -150, 200, -20, -20), - Wall(rightLine, 200, 200, -20, 300) - ) - - - /* - ________ - | | - | ___| - |___| - - */ -// val upLine = Line(0.0, 1.0, -300.0) -// val leftLine = Line(1.0, 0.0, 150.0) -// val bottomLine = Line(0.0, 1.0, 20.0) -// val rightLine = Line(1.0, 0.0, -200.0) + fun testRoom1(): List { + val upLine = Line(0.0, 1.0, -300.0) + val leftLine = Line(1.0, 0.0, 150.0) + val bottomLine = Line(0.0, 1.0, 20.0) + val rightLine = Line(1.0, 0.0, -200.0) // -// val bottomLine2 = Line(0.0, 1.0, -100.0) -// val rightLine2 = Line(1.0, 0.0, -300.0) -// -// val walls = listOf(Wall(upLine, 300, -150, 300, 300), -// Wall(leftLine, -150, -150, 300, -20), -// Wall(bottomLine, -150, 200, -20, -20), -// Wall(rightLine, 200, 200, -20, 100), -// Wall(bottomLine2, 200, 300, 100, 100), -// Wall(rightLine2, 300, 300, 100, 300) -// ) + val walls = listOf(Wall(upLine, 200, -150, 300, 300), + Wall(leftLine, -150, -150, 300, -20), + Wall(bottomLine, -150, 200, -20, -20), + Wall(rightLine, 200, 200, -20, 300) + ) + return walls + } - /* + fun testRoom2(): List { + /* + ________ + | | + | ___| + |___| - _______ - | | - |____/ + */ + val upLine = Line(0.0, 1.0, -300.0) + val leftLine = Line(1.0, 0.0, 150.0) + val bottomLine = Line(0.0, 1.0, 20.0) + val rightLine = Line(1.0, 0.0, -200.0) + + val bottomLine2 = Line(0.0, 1.0, -100.0) + val rightLine2 = Line(1.0, 0.0, -300.0) + + val walls = listOf(Wall(upLine, 300, -150, 300, 300), + Wall(leftLine, -150, -150, 300, -20), + Wall(bottomLine, -150, 200, -20, -20), + Wall(rightLine, 200, 200, -20, 100), + Wall(bottomLine2, 200, 300, 100, 100), + Wall(rightLine2, 300, 300, 100, 300) + ) + return walls + } - */ + fun testRoom3(): List { + /* + _______ + | | + |____/ -// val upLine = Line(0.0, 1.0, -300.0) -// val leftLine = Line(1.0, 0.0, 150.0) -// val bottomLine = Line(0.0, 1.0, 20.0) -// val rightLine = Line(-1.2, 1.0, 140.0) -// val rightLine2 = Line(1.0, 1.0, -350.0) -// -// val walls = listOf(Wall(upLine, 200, -150, 300, 300), -// Wall(leftLine, -150, -150, 300, -20), -// Wall(bottomLine, -150, 100, -20, -20), -// Wall(rightLine, 100, 200, -20, 100), -// Wall(rightLine2, 200, 200, 100, 300) -// ) + + */ + val upLine = Line(0.0, 1.0, -300.0) + val leftLine = Line(1.0, 0.0, 150.0) + val bottomLine = Line(0.0, 1.0, 20.0) + val rightLine = Line(-1.2, 1.0, 140.0) + val rightLine2 = Line(1.0, 1.0, -350.0) + + val walls = listOf(Wall(upLine, 200, -150, 300, 300), + Wall(leftLine, -150, -150, 300, -20), + Wall(bottomLine, -150, 100, -20, -20), + Wall(rightLine, 100, 200, -20, 100), + Wall(rightLine2, 200, 200, 100, 300) + ) + return walls + } } \ No newline at end of file