(defun c:chkopen (/ a ep f olst sp ss NOTOPEN)
  (setq	f '((0 . "*line,arc,ellipse")
	    (-4 . "<NOT")
	    (0 . "XLINE")
	    (-4 . "NOT>")
	   )
  )
  (defun notopen (pt en / ss)
    (if	(setq ss (ssget "C" pt pt f))
      (ssdel en ss)
    )
    (and ss (ssname ss 0))
  )
  (or (setq ss (ssget f)) (fsxm-silenceexit))
  (foreach en (fsxm-ss->enlist ss)
    (setq sp (trans (vlax-curve-getStartPoint en) 0 1))
    (setq ep (trans (vlax-curve-getEndPoint en) 0 1))
    (cond ((not (equal sp ep 1e-8))
	   (or (notopen sp en) (setq olst (cons sp olst)))
	   (or (notopen ep en) (setq olst (cons ep olst)))
	  )
    )
  )
  (mapcar '(lambda (a) (fsxm-pt-grdraw a 1)) olst)
  (setq olst (itoa (length olst)))
  (princ (strcat "\n　●本次共找到开口点<" olst ">个....."))
  (princ)
)