I think I know what is happening. You are working in a custom ucs, not world. I think when it grabs the points it is grabbing wcs points.
Code:
(defun c:InsertNBreak (/ Sel Ent InsPt LastEnt tmpObj tmpList)
(vl-load-com)
(if (setq Sel (entsel "\n Select object where you the block to be inserted: "))
(progn
(setq Ent (car Sel))
(setq InsPt (cadr Sel))
(initdia)
(command "_.insert")
(command InsPt)
(while (> (getvar "cmdactive") 0)
(command pause)
)
(setq LastEnt (entlast))
(setq tmpObj (vlax-ename->vla-object LastEnt))
(setq tmpList (vlax-invoke tmpObj 'Explode))
(foreach i tmpList
(if (= (vla-get-ObjectName i) "AcDbPolyline")
(setq IntPts (vlax-invoke i 'IntersectWith (vlax-ename->vla-object Ent) acExtendNone))
)
)
(command "_.break"
Ent
(trans (list (car IntPts) (cadr IntPts) (caddr IntPts)) 0 1) ; had to add trans to both points
(trans (cdddr IntPts) 0 1) ; here is the second point
)
(foreach i tmpList
(vla-Delete i)
)
(command ".ddatte" LastEnt)
)
)
(princ)
)
This should work now. I should have asked that at the beginning. Brain fart, what can I say. =D
Tim