From 0fa7f92a5f534b433c066456dd048e7ff2478fea Mon Sep 17 00:00:00 2001
From: rschoene <rene.schoene@tu-dresden.de>
Date: Wed, 1 Jul 2020 08:58:49 +0200
Subject: [PATCH] Update safetyzone model.

- also make definitions less verbose again
- resolves #28
---
 ros2rag.starter/src/main/jastadd/Computation.jrag         | 8 +-------
 ros2rag.starter/src/main/jastadd/Definitions.ros2rag      | 8 ++++----
 ros2rag.starter/src/main/jastadd/RobotModel.relast        | 2 +-
 .../de/tudresden/inf/st/ros2rag/starter/StarterMain.java  | 1 -
 4 files changed, 6 insertions(+), 13 deletions(-)

diff --git a/ros2rag.starter/src/main/jastadd/Computation.jrag b/ros2rag.starter/src/main/jastadd/Computation.jrag
index b61f819..bddac5a 100644
--- a/ros2rag.starter/src/main/jastadd/Computation.jrag
+++ b/ros2rag.starter/src/main/jastadd/Computation.jrag
@@ -14,13 +14,7 @@ aspect Computation {
     System.out.println("isInSafetyZone(" + pos + ")");
     for (Zone sz : getSafetyZoneList()) {
       for (Coordinate coordinate : sz.getCoordinateList()) {
-        IntPosition inside = coordinate.getPosition();
-        if (inside.getX() <= pos.getX() &&
-              inside.getY() <= pos.getY() &&
-              inside.getZ() <= pos.getZ() &&
-              pos.getX() <= inside.getX() + getSize().getX() &&
-              pos.getY() <= inside.getY() + getSize().getY() &&
-              pos.getZ() <= inside.getZ() + getSize().getZ()) {
+        if (coordinate.getPosition().equals(pos)) {
           return true;
         }
       }
diff --git a/ros2rag.starter/src/main/jastadd/Definitions.ros2rag b/ros2rag.starter/src/main/jastadd/Definitions.ros2rag
index 7d49c97..60e7d19 100644
--- a/ros2rag.starter/src/main/jastadd/Definitions.ros2rag
+++ b/ros2rag.starter/src/main/jastadd/Definitions.ros2rag
@@ -10,23 +10,23 @@ RobotArm.AppropriateSpeed canDependOn Joint.CurrentPosition as dependency1 ;
 
 // --- mapping definitions ---
 ParseLinkState maps byte[] bytes to panda.Linkstate.PandaLinkState {:
-  System.out.println("ParseLinkState");
+//  System.out.println("ParseLinkState");
   return panda.Linkstate.PandaLinkState.parseFrom(bytes);
 :}
 
 SerializeRobotConfig maps config.Robotconfig.RobotConfig rc to byte[] {:
-  System.out.println("SerializeRobotConfig");
+//  System.out.println("SerializeRobotConfig");
   return rc.toByteArray();
 :}
 
 LinkStateToIntPosition maps panda.Linkstate.PandaLinkState pls to IntPosition {:
-  System.out.println("LinkStateToIntPosition");
+//  System.out.println("LinkStateToIntPosition");
   panda.Linkstate.PandaLinkState.Position p = pls.getPos();
   return IntPosition.of((int) (Math.round(p.getPositionX() * 2)), (int) (Math.round(p.getPositionY() * 2)), (int) (Math.round(p.getPositionZ() * 2 + 0.5)));
 :}
 
 CreateSpeedMessage maps double speed to config.Robotconfig.RobotConfig {:
-  System.out.println("CreateSpeedMessage");
+//  System.out.println("CreateSpeedMessage");
   return config.Robotconfig.RobotConfig.newBuilder()
     .setSpeed(speed)
     .setLoopTrajectory(true)
diff --git a/ros2rag.starter/src/main/jastadd/RobotModel.relast b/ros2rag.starter/src/main/jastadd/RobotModel.relast
index ea347d0..415d3e5 100644
--- a/ros2rag.starter/src/main/jastadd/RobotModel.relast
+++ b/ros2rag.starter/src/main/jastadd/RobotModel.relast
@@ -1,6 +1,6 @@
 Model ::= RobotArm ZoneModel ;
 
-ZoneModel ::= <Size:IntPosition> SafetyZone:Zone* ;
+ZoneModel ::= SafetyZone:Zone* ;
 
 Zone ::= Coordinate* ;
 
diff --git a/ros2rag.starter/src/main/java/de/tudresden/inf/st/ros2rag/starter/StarterMain.java b/ros2rag.starter/src/main/java/de/tudresden/inf/st/ros2rag/starter/StarterMain.java
index a4a0f70..66a48f6 100644
--- a/ros2rag.starter/src/main/java/de/tudresden/inf/st/ros2rag/starter/StarterMain.java
+++ b/ros2rag.starter/src/main/java/de/tudresden/inf/st/ros2rag/starter/StarterMain.java
@@ -42,7 +42,6 @@ public class StarterMain {
     model.MqttSetHost(config.mqttHost);
 
     ZoneModel zoneModel = new ZoneModel();
-    zoneModel.setSize(makePosition(1, 1, 1));
 
     Zone safetyZone = new Zone();
     for (int[] coordinate : safetyZoneCoordinates) {
-- 
GitLab