(defun bikintabel (PointList / ActiveDocument mSpace pt myTable
obj)
(setq ActiveDocument (vla-get-activedocument
(vlax-get-acad-object)))
(setq mSpace(vla-get-modelspace ActiveDocument))
(setq pt (vlax-make-safearray vlax-vbDouble
'(0 . 2)))
;insertion point for the table
(vlax-safearray-fill pt PointList)
;Mebuat table dengan jumlah column 5 dan row 5. Dengan ketinggian cell 5 dan lebar 30
;Pola pembuatan table (row column height width)
(setq myTable
(vla-addtable mSpace pt 2 13 10 30))
(setq obj (vlax-ename->vla-object (entlast)))
);defun
(defun ulang (Peng_1 Peng_2 PTX PTY PTZ i_1 i_2 TableFunction / Point_List ss_table table)
(repeat Peng_1
(setq Point_List (list (+ PTX i_1) (+ PTY i_2) PTZ))
(setq TableFunction "bikintabel")
;read function bikin tabel
(list (eval (read TableFunction)) Point_List)
(setq ss_table (ssget "X" (list (cons 0 "ACAD_TABLE") (cons 10 Point_List))))
;merubah ename menjadi object
(setq table (vlax-ename->vla-object(ssname ss_table 0)))
(repeat Peng_2
(vla-insertrows table (1+ (vla-get-rows table)) 1 1)
);repeat
(setq i_2 (+ i_2 310))
);repeat
);defun ulang
(ulang 3 IsiBaris PT1 PT2 PT3 i j bikintable)
(list (eval (read TableFunction)) Point_List)
But this code is can't work.(load filename)
(apply (read filename) NIL)
(progn
(defun example (ptlst / )
(print ptlst)
(terpri)
(princ)
)
(defun callingfun (pt1 pt2 fun / )
(princ "here we go with: ")
(princ fun)
(princ "\neval it to get this: ")
(princ (eval fun))
(princ " <--- *operator*")
(princ "\nthen use it as an operator:")
(princ "(*operator* arg1 arg2)\n")
;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
((eval fun) (list pt1 pt2))
;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
)
;;USE IT LIKE:
(callingfun '(0 0 0) '(1 2 3) example)
(princ "OR\n")
(callingfun '(0 0 0) '(1 2 3) 'example)
(princ "OR\n")
(callingfun '(0 0 0) '(1 2 3) '(lambda (a / ) (alert (vl-princ-to-string a))))
(princ "OR\n")
(callingfun '(0 0 0) '(1 2 3) (function (lambda (a / ) (alert (vl-princ-to-string a)))))
(princ "OR\n")
(callingfun '(0 0 0) '(1 2 3) (lambda (a / ) (alert (vl-princ-to-string a))))
)