OK, that’s strange, it’s reporting that there is an intersection (insec[0] returns as True) even though there is none. So, I modified the script to check if there were any curves or points that actually resulted from the intersection:

```
import rhinoscriptsyntax as rs
import scriptcontext as sc
import Rhino
def SelObjsIntersectPlane(objIDs,plane,tol):
breps=[rs.coercebrep(objID) for objID in objIDs]
yes_intersect=[]
for i,brep in enumerate(breps):
if brep:
insec=Rhino.Geometry.Intersect.Intersection.BrepPlane(brep,plane,tol)
if insec and insec[0]:
if insec[1] or insec[2]:
yes_intersect.append(objIDs[i])
return yes_intersect
def TestFunction():
tol=sc.doc.ModelAbsoluteTolerance
plane=Rhino.Geometry.Plane.WorldXY
objIDs=rs.ObjectsByType(8+16+1073741824,state=1)
if objIDs:
to_select=SelObjsIntersectPlane(objIDs,plane,tol)
rs.SelectObjects(to_select)
TestFunction()
```

Let me know if that works… late here, I’ll check tomorrow.