Skip to content
This repository was archived by the owner on Dec 8, 2022. It is now read-only.

Commit 28121fe

Browse files
committed
[make_a_map] updated and compiling for indigo.
This updates the api for indigo with the changes discussed in #42.
1 parent 9e780b4 commit 28121fe

File tree

3 files changed

+33
-20
lines changed

3 files changed

+33
-20
lines changed

make_a_map/src/main/java/com/github/rosjava/android_apps/make_a_map/MainActivity.java

+25-7
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,10 @@
3636
import map_store.SaveMapResponse;
3737

3838
import com.github.rosjava.android_remocons.common_tools.apps.RosAppActivity;
39+
import com.google.common.collect.Lists;
40+
3941
import org.ros.android.view.RosImageView;
42+
import org.ros.android.view.visualization.layer.Layer;
4043
import org.ros.namespace.NameResolver;
4144
import org.ros.node.NodeConfiguration;
4245
import org.ros.node.NodeMainExecutor;
@@ -291,17 +294,22 @@ protected void init(NodeMainExecutor nodeMainExecutor) {
291294

292295
viewControlLayer.addListener(new CameraControlListener() {
293296
@Override
294-
public void onZoom(double focusX, double focusY, double factor) {
297+
public void onZoom(float focusX, float focusY, float factor) {
295298

296299
}
297300

301+
@Override
302+
public void onDoubleTap(float x, float y) {
303+
304+
}
305+
298306
@Override
299307
public void onTranslate(float distanceX, float distanceY) {
300308

301309
}
302310

303311
@Override
304-
public void onRotate(double focusX, double focusY, double deltaAngle) {
312+
public void onRotate(float focusX, float focusY, double deltaAngle) {
305313

306314
}
307315
});
@@ -310,11 +318,21 @@ public void onRotate(double focusX, double focusY, double deltaAngle) {
310318
String scanTopic = remaps.get(getString(R.string.scan_topic));
311319
String robotFrame = (String) params.get("robot_frame", getString(R.string.robot_frame));
312320

313-
mapView.addLayer(viewControlLayer);
314-
mapView.addLayer(new OccupancyGridLayer(appNameSpace.resolve(mapTopic).toString()));
315-
mapView.addLayer(new LaserScanLayer(appNameSpace.resolve(scanTopic).toString()));
316-
mapView.addLayer(new RobotLayer(robotFrame));
317-
NtpTimeProvider ntpTimeProvider = new NtpTimeProvider(
321+
OccupancyGridLayer occupancyGridLayer = new OccupancyGridLayer(appNameSpace.resolve(mapTopic).toString());
322+
LaserScanLayer laserScanLayer = new LaserScanLayer(appNameSpace.resolve(scanTopic).toString());
323+
RobotLayer robotLayer = new RobotLayer(robotFrame);
324+
325+
mapView.onCreate(
326+
Lists.<Layer>newArrayList(
327+
viewControlLayer,
328+
occupancyGridLayer,
329+
laserScanLayer,
330+
robotLayer
331+
)
332+
);
333+
334+
335+
NtpTimeProvider ntpTimeProvider = new NtpTimeProvider(
318336
InetAddressFactory.newFromHostString("192.168.0.1"),
319337
nodeMainExecutor.getScheduledExecutorService());
320338
ntpTimeProvider.startPeriodicUpdates(1, TimeUnit.MINUTES);

make_a_map/src/main/java/com/github/rosjava/android_apps/make_a_map/ViewControlLayer.java

+7-12
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020

2121
import java.util.concurrent.ExecutorService;
2222
import android.content.Context;
23-
import android.os.Handler;
2423
import android.view.GestureDetector;
2524
import android.view.MotionEvent;
2625
import android.view.ScaleGestureDetector;
@@ -30,15 +29,13 @@
3029
import com.github.rosjava.android_remocons.common_tools.apps.AppParameters;
3130

3231
import org.ros.android.view.RosImageView;
33-
import org.ros.android.view.visualization.Camera;
3432
import org.ros.android.view.visualization.RotateGestureDetector;
3533
import org.ros.android.view.visualization.VisualizationView;
3634
import org.ros.android.view.visualization.layer.CameraControlLayer;
3735
import org.ros.android.view.visualization.layer.CameraControlListener;
3836
import org.ros.concurrent.ListenerGroup;
3937
import org.ros.concurrent.SignalRunnable;
4038
import org.ros.node.ConnectedNode;
41-
import org.ros.rosjava_geometry.FrameTransformTree;
4239

4340
/**
4441
* @author [email protected] (Kazuto Murase)
@@ -73,7 +70,6 @@ public ViewControlLayer(final Context context,
7370
final ViewGroup mainLayout,
7471
final ViewGroup sideLayout,
7572
final AppParameters params) {
76-
super(context,executorService);
7773

7874
this.context = context;
7975

@@ -163,9 +159,8 @@ private void swapViews() {
163159
}
164160

165161
@Override
166-
public void onStart(ConnectedNode connectedNode, Handler handler,
167-
FrameTransformTree frameTransformTree, final Camera camera) {
168-
handler.post(new Runnable() {
162+
public void onStart(final VisualizationView view, ConnectedNode connectedNode) {
163+
view.post(new Runnable() {
169164
@Override
170165
public void run() {
171166
translateGestureDetector =
@@ -174,7 +169,7 @@ public void run() {
174169
public boolean onScroll(MotionEvent event1, MotionEvent event2,
175170
final float distanceX, final float distanceY) {
176171
if (mapViewGestureAvaiable) {
177-
camera.translate(-distanceX, distanceY);
172+
view.getCamera().translate(-distanceX, distanceY);
178173
listeners.signal(new SignalRunnable<CameraControlListener>() {
179174
@Override
180175
public void run(CameraControlListener listener) {
@@ -193,9 +188,9 @@ public void run(CameraControlListener listener) {
193188
public boolean onRotate(MotionEvent event1, MotionEvent event2,
194189
final double deltaAngle) {
195190
if (mapViewGestureAvaiable) {
196-
final double focusX = (event1.getX(0) + event1.getX(1)) / 2;
197-
final double focusY = (event1.getY(0) + event1.getY(1)) / 2;
198-
camera.rotate(focusX, focusY, deltaAngle);
191+
final float focusX = (event1.getX(0) + event1.getX(1)) / 2;
192+
final float focusY = (event1.getY(0) + event1.getY(1)) / 2;
193+
view.getCamera().rotate(focusX, focusY, deltaAngle);
199194
listeners.signal(new SignalRunnable<CameraControlListener>() {
200195
@Override
201196
public void run(CameraControlListener listener) {
@@ -222,7 +217,7 @@ public boolean onScale(ScaleGestureDetector detector) {
222217
final float focusX = detector.getFocusX();
223218
final float focusY = detector.getFocusY();
224219
final float factor = detector.getScaleFactor();
225-
camera.zoom(focusX, focusY, factor);
220+
view.getCamera().zoom(focusX, focusY, factor);
226221
listeners.signal(new SignalRunnable<CameraControlListener>() {
227222
@Override
228223
public void run(CameraControlListener listener) {

settings.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
include 'teleop'
1818
include 'map_nav'
19-
/*
2019
include 'make_a_map'
20+
/*
2121
include 'map_manager'
2222
*/

0 commit comments

Comments
 (0)