SparseSpatialMapController Class¶
Description¶
在场景中控制 SparseSpatialMap 生成的地图的 MonoBehaviour 。
Enums¶
public enum SparseSpatialMapController.ActiveControlStrategy |
GameObject .active的控制策略。 |
public enum SparseSpatialMapController.DataSource |
地图数据来源类型。 |
Classes¶
public class SparseSpatialMapController.SparseSpatialMapInfo |
稀疏地图信息。 |
public class SparseSpatialMapController.MapManagerSourceData |
创建map的MapManager来源。 |
public class SparseSpatialMapController.ParticleParameter |
渲染点云粒子的参数。 |
MonoBehaviour Messages¶
protected virtual void Awake() |
protected virtual void Start() |
protected virtual void OnDestroy() |
Fields¶
PointCloudParticleSystem¶
- C#
public ParticleSystem PointCloudParticleSystem
渲染点云的 ParticleSystem 。
ActiveControl¶
- C#
public SparseSpatialMapController.ActiveControlStrategy ActiveControl
GameObject .active的控制策略。如果你打算自己控制 GameObject .active或是有其它组件在控制 GameObject .active,需要设为 SparseSpatialMapController.ActiveControlStrategy.None 。
SourceType¶
- C#
public SparseSpatialMapController.DataSource SourceType
Map数据来源。
MapManagerSource¶
- C#
public SparseSpatialMapController.MapManagerSourceData MapManagerSource
创建map的MapManager来源。在 SparseSpatialMapController.SourceType == SparseSpatialMapController.DataSource.MapManager 的时候有效。
MapInfoSource¶
- C#
public SparseSpatialMapController.SparseSpatialMapInfo MapInfoSource
创建map的MapInfo来源。在 SparseSpatialMapController.SourceType == SparseSpatialMapController.DataSource.MapInfo 的时候有效。
Properties¶
MapInfo¶
- C#
public SparseSpatialMapController.SparseSpatialMapInfo MapInfo { get; }
地图信息。可以在MapInfoAvailable event之后访问。
MapWorker¶
- C#
public SparseSpatialMapWorkerFrameFilter MapWorker { get; set; }
在 SparseSpatialMapController.MapInfoAvailable 之后加载target的 SparseSpatialMapWorkerFrameFilter 。如果设为null,map将会被从之前设置的MapWorker中卸载。可随时修改,立即生效。
PointCloudParticleParameter¶
- C#
public SparseSpatialMapController.ParticleParameter PointCloudParticleParameter { get; set; }
渲染点云粒子的参数。
PointCloud¶
- C#
public List< Vector3 > PointCloud { get; }
点云数据。
ShowPointCloud¶
- C#
public bool ShowPointCloud { get; set; }
显示或隐藏点云。
IsLocalizing¶
- C#
public bool IsLocalizing { get; }
当前map是否在定位中。
Events¶
MapInfoAvailable¶
- C#
public event Action MapInfoAvailable
SparseSpatialMapController.MapInfo 可以使用的事件。
MapLocalized¶
- C#
public event Action MapLocalized
Map 定位到的事件。
MapStopLocalize¶
- C#
public event Action MapStopLocalize
Map停止定位的事件。
MapLoad¶
- C#
public event Action< SparseSpatialMapController.SparseSpatialMapInfo , bool, string> MapLoad
Map加载完成的事件。bool值表示加载是否成功。string值表示出错时的错误信息。
MapUnload¶
- C#
public event Action< SparseSpatialMapController.SparseSpatialMapInfo , bool, string> MapUnload
Map卸载完成的事件。bool值表示卸载是否成功。string值表示出错时的错误信息。
MapHost¶
- C#
public event Action< SparseSpatialMapController.SparseSpatialMapInfo , bool, string> MapHost
Map创建上传完成的事件。bool值表示是否成功。string值表示出错时的错误信息。
Methods¶
HitTest¶
在当前点云中进行Hit Test,得到距离相机从近到远一条射线上的n(n>=0)个位置坐标。 pointInView 需要被归一化到[0, 1]^2。
Host¶
- C#
public void Host(string name, Optional< Image > preview)
创建和上传Map。 name 为地图的名字, preview 是可选的map预览图 。