private Vector3 GetMarkerWorldPosition(int id) { var marker = ArMarkers.Get(id); //var marker = _markers.FirstOrDefault((m) => m.id == id); //var surface = SurfaceManager.Instance.Get(SurfaceName); if (marker == null) { // should never happen, in theory Debug.Log("Unable to find marker " + id); return(Vector3.zero); } return(marker.transform.position); //var worldOffsetFromTopLeft = marker.GetUnityPosition(surface); //var localOffsetFromTopLeft = surface.Rotation * worldOffsetFromTopLeft; //return surface.GetCornerPosition(Corner.TopLeft) + localOffsetFromTopLeft; }