// From returns the previous position in the light ray to the given position,
// as computed in the last VisionMap call.  If none, it returns false.
From returns the previous position in the light ray to the given position,
as computed in the last VisionMap call.  If none, it returns false.
// From returns the previous position in the light ray to the given position // as computed in the last VisionMap call . If none it returns false .
func (fov *FOV) From(lt Lighter, to gruid.Point) (LightNode, bool) {
	_, ok := fov.At(to)
	if !ok {
		return LightNode{}, false
	}
	ln := fov.from(lt, to)
	if ln.Cost == 0 {
		return LightNode{}, false
	}
	return ln, true
}
func ( fov * FOV ) From ( lt Lighter , to gruid . Point ) ( LightNode , bool ) { _ , ok := fov . At ( to ) if ! ok { return LightNode { } , false } ln := fov . from ( lt , to ) if ln . Cost == 0 { return LightNode { } , false } return ln , true }
From returns the previous position in the light ray to the given position,
as computed in the last VisionMap call.
From returns the previous position in the light ray to the given position as computed in the last VisionMap call .