public static ISpaceRenderer GetSpaceRenderer(SpaceRendererClass src, LidarVisualizer owner) { ISpaceRenderer renderer = null; switch (src) { case SpaceRendererClass.BALL: renderer = new BallRenderer(); // TODO return new implementing class of proper type break; case SpaceRendererClass.BALL_LINE: renderer = new BallLineRenderer(); break; case SpaceRendererClass.RING_MESH: renderer = owner.gameObject.AddComponent <RingMeshRenderer>(); break; } if (renderer == null) { Debug.LogError("Unsupported space renderer was asked for"); } renderer.Config(owner); return(renderer); }
public void Config(LidarVisualizer viz) { _owner = viz; _reserved = new List <float>(_owner.lidarResolution); for (int i = 0; i < _owner.lidarResolution; i++) { _reserved.Add(_owner.randomRange.y * ((float)i / (float)_owner.lidarResolution) - _owner.randomRange.x); } }
public void Config(LidarVisualizer viz) { _owner = viz; _r2l = ROS2Listener.instance; _sub = _r2l.node.CreateSubscription <LaserScan>( _owner.topic, msg => { _curScan = msg; }, ROS2.Utils.QosProfile.Profile.SensorData); }
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()); } LidarVisualizer visualizer = GameObject.Find(rendererObjectName).GetComponent <LidarVisualizer>(); visualizer.SetPointCloud(pointCloudMsg.GetCloud()); }
public void Config(LidarVisualizer viz) { _owner = viz; _reserved = new float[_owner.lidarResolution]; }
public virtual void Config(LidarVisualizer viz) { _owner = viz; _ballPrefab = _owner.ballPrefab; }
public void Config(LidarVisualizer viz) { _owner = viz; }
public static ILidarDataProvider GetLidarDataProvider(LidarDataProviderClass ldpc, LidarVisualizer owner) { ILidarDataProvider provider = null; switch (ldpc) { case LidarDataProviderClass.SIMPLE_RANDOM: provider = new SimpleRandomDataProvider(); break; case LidarDataProviderClass.ROS2: provider = new ROS2LidarSubscription(); break; } if (provider == null) { Debug.LogError("Unsupported lidar data provider was asked for"); return(null); } provider.Config(owner); return(provider); }
public static ILidarDataProvider GetLidarDataProvider(LidarDataProviderClass ldpc, LidarVisualizer owner) { ILidarDataProvider provider = null; switch (ldpc) { case LidarDataProviderClass.SIMPLE_RANDOM: provider = new SimpleRandomDataProvider(); break; case LidarDataProviderClass.ROS1: #if ROS1_MODULE_LIDAR ROS1LidarSubscription sub = owner.gameObject.AddComponent <ROS1LidarSubscription>(); sub.Config(owner); sub.Init(); provider = sub; #else Debug.LogError("ROS1 data provider classes not imported!"); #endif break; case LidarDataProviderClass.ROS2: #if ROS2_MODULE_LIDAR provider = new ROS2LidarSubscription(); #else Debug.LogError("ROS2 data provider classes not imported!"); #endif break; } if (provider == null) { Debug.LogError("Unsupported lidar data provider was asked for"); return(null); } provider.Config(owner); return(provider); }
public override void Config(LidarVisualizer viz) { base.Config(viz); _material = _owner.ballLineMaterial; }