// Initilize the sensor public void InitilizeSensor(int uniqueID, string sensorURL, int sensorPort, List <string> sensorSubscribers) { Debug.Log("Init LAMP Connection at " + sensorURL + ":" + sensorPort.ToString()); ros = new ROSBridgeWebSocketConnection(sensorURL, sensorPort); client_id = uniqueID.ToString(); foreach (string subscriber in sensorSubscribers) { string subscriberTopic = ""; switch (subscriber) { case "surface_pointcloud": subscriberTopic = "/voxblox_node/" + subscriber; break; default: subscriberTopic = "/" + subscriber; break; } PointCloudVisualizer pcVisualizer = gameObject.AddComponent <PointCloudVisualizer>(); pcVisualizer.SetParentTransform(this.transform); pcVisualizers.Add(subscriberTopic, pcVisualizer); Debug.Log(" LAMP Subscribing to : " + subscriberTopic); sensorSubscriberTopicsDict.Add(subscriberTopic, true); ros.AddSubscriber(subscriberTopic, this); } Debug.Log("Lamp Connection Established"); ros.Connect(); }
public new static void CallBack(ROSBridgeMsg msg) { PointCloud2Msg pointCloudMsg = (PointCloud2Msg)msg; if (verbose) { StringBuilder sb = new StringBuilder(); sb.Append(pointCloudMsg.GetHeader().GetSeq()); sb.Append(":\n"); sb.AppendFormat("Size: {0} X {1} = {2}\n", pointCloudMsg.GetWidth(), pointCloudMsg.GetHeight(), pointCloudMsg.GetWidth() * pointCloudMsg.GetHeight()); sb.Append(pointCloudMsg.GetFieldString()); Debug.Log(sb.ToString()); } PointCloudVisualizer visualizer = GameObject.Find(rendererObjectName).GetComponent <PointCloudVisualizer>(); visualizer.SetPointCloud(pointCloudMsg.GetCloud()); Debug.Log("Updated Point Cloud"); }
// Initilize the sensor public void InitilizeSensor(int uniqueID, string sensorURL, int sensorPort, List <string> sensorSubscribers) { Debug.Log("Init PointCloud Connection at " + sensorURL + ":" + sensorPort.ToString()); // Figure out if we need secure or non secure websockets. OR better yet, make the sensorIP and sensorPort and the address header the same field that user enters. ros = new ROSBridgeWebSocketConnection(sensorURL, sensorPort); client_id = uniqueID.ToString(); foreach (string subscriber in sensorSubscribers) { string subscriberTopic = ""; subscriberTopic = "/voxblox_node/" + subscriber; PointCloudVisualizer pcVisualizer = gameObject.AddComponent <PointCloudVisualizer>(); pcVisualizer.SetParentTransform(this.transform); pcVisualizers.Add(subscriberTopic, pcVisualizer); Debug.Log("Point Cloud subscribing to: " + subscriberTopic); sensorSubscriberTopicsDict.Add(subscriberTopic, true); ros.AddSubscriber(subscriberTopic, this); } ros.Connect(); Debug.LogWarning("Connected to Sensors"); }