Provided for fun, as is, complete with warts & freckles ...
(defun c:HatchEm ( / _HatchIt ss i space )
(defun _HatchIt ( space object / hatch err )
(setq err
(vl-catch-all-apply
'(lambda ()
(setq hatch
(vlax-invoke
space
'AddHatch
acHatchStyleNormal ;; pattern type
"ANSI31" ;; pattern name
:vlax-false ;; associativity
AcHatchObject ;; hatch object type
)
)
(vlax-invoke
hatch
'AppendOuterLoop
(list object)
)
(vlax-invoke hatch 'Evaluate)
)
)
)
(if (vl-catch-all-error-p err)
(princ
(strcat
"Entity handle:"
(vla-get-handle object)
" caused this error: "
(vl-catch-all-error-message err)
)
)
)
)
(cond
( (setq ss
(ssget
'( (0 . "lwpolyline,polyline")
(-4 . "&")
(70 . 1)
)
)
)
(setq space
(vlax-get-property
(vlax-get-property
(vlax-get-acad-object)
'ActiveDocument
)
(if (eq 1 (getvar "cvport"))
'PaperSpace
'ModelSpace
)
)
)
(repeat (setq i (sslength ss))
(_HatchIt
space
(vlax-ename->vla-object
(ssname ss (setq i (1- i)))
)
)
)
)
)
(princ)
)