hi kevin
not sure but i reckon the tolerance is needed to compensate for autocad's abstract accuracy in calculating coordinates in space down to the xth position. logically it may be obvious that two linear non-parallels cross exactly once but calculating db coords to high precision and finding an exact equal is something different. (i think one tolerance part is for length deviation, the other for vector deviation.)
you may want to try the curvecurveintersector, which has a .numberofintersections property and may feel easier to work with.
felix
can you tell, if it's faster than Curve.IntersetWith method? also are the operations with virtual geometry objects faster than with the database geometry objects?
honest, no, i can't, i haven't used it anywhere near a scale where it would be noticable, however...
virtual geometry is, from what i know, by nature faster than working with database objects, i.e. the former leaves the latter 'virtually' untouched.
felix