For every point, the row of triangles whose triangle contains it, or NA
for a point in none of them.
Details
This is what the old tri_pip() did by building one sp polygon per
triangle and calling over(). GEOS does the same job with a spatial index it
builds for you: geos::geos_intersects_matrix() puts the triangles in an
STRtree, so each point is only tested against the few whose bounding boxes it
falls in. The exact containment test is then bary_weights(), in R.