You're fine, Joe. But, come to think of it, your renaming of the @PTrans function probably subliminally reinforced my opinion about renaming. Who knows what matrix will be thrown at the function? It just transforms whatever you feed it, thus the generic name.
Of course I still have this annoying problem with the fact that the (xentselx) functions return the pick point without any meaningful Z value. I've complained about this before. Suppose you want to pick a segment of a 3DPolyline (nested or not). An (osnap pt "_quick,_near") might find a point on another nearby object. A (vlax-curve-getclosestpointto) might find a different segment because the distance is affected by the Z values. But I guess that should be in a different thread.