Similar to Mouse.X(layer) or Touch.X("layerName"), these expressions will convert object coordinates to another layer.
This would be very useful for objects like a cursor sprite, which may be controlled with a gamepad or some other input method. To get its position on any layer we could use simple CursorSprite.X("layer") and CursorSprite.Y("layer") expressions instead of these monstrosities:
CanvasToLayerX("Layer2", LayerToCanvasX(CursorSprite.LayerNumber, CursorSprite.X, CursorSprite.Y), LayerToCanvasY(CursorSprite.LayerNumber, CursorSprite.X, CursorSprite.Y)
CanvasToLayerY("Layer2", LayerToCanvasX(CursorSprite.LayerNumber, CursorSprite.X, CursorSprite.Y), LayerToCanvasY(CursorSprite.LayerNumber, CursorSprite.X, CursorSprite.Y)
Another common example is when a character in a game picks up a coin and it flies towards a coin counter located on a HUD layer with zero parallax. Again, instead of those long expressions converting to canvas and back we could use:
Coin MoveTo CoinsText.X(Coin.layerNumber), CoinsText.Y(Coin.layerNumber)