; foreach 指令 ; 取出 list 內的每一個 atom 來執行 後面的指令內容
( command " pline " ( foreach pt fish_pt_list ( command pt )))
; ----------------------------------------------------------------------------
(setq a (1 2 3 4 5))
( foreach n a ( princ n) ( terpri ))
上面的表達式將垂直列印:
1
2
3
4
5
; -----------------------------------------------------------------------------
(setq pt_list (reverse pt_list)) (setq i 0 squ (* md_divide 0.5) ) ( foreach pt pt_list (cond ((= i 0) (setq pt_arc_0 pt) ) ((= (rem i 2) 1) (setq pt_arc_1 pt) ) ((= (rem i 2) 0) (setq pt_arc_2 pt) (setvar "clayer" "white") (command "arc" pt_arc_0 pt_arc_1 pt_arc_2) (if (or (= i squ) (= i (* squ 2)) (= i (* squ 3)) ) (progn (setvar "clayer" "yellow") (setq pt_line_s (polar pt_arc_2 (* pi 0.5) 0.2)) (setq pt_line_e (polar pt_line_s (* pi 0.5) len_yellow)) (command "line" pt_line_s pt_line_e "") ) ) (setq pt_arc_0 pt_arc_2) ) ) (setq i (1+ i)) ) (setq pt_pipe_ld (nth 0 pt_list) pt_pipe_rd (nth (1- (length pt_list)) pt_list) )
; ------------------------------------------------------------------------------------
(setq folder_VLX-files_list nil) ( foreach VLX-file VLX-files_list (setq folder_VLX-file (strcat VLX_folder VLX-file)) (setq folder_VLX-files_list (cons folder_VLX-file folder_VLX-files_list ) ) ) (setq folder_VLX-files_list (reverse folder_VLX-files_list)) ; folder_VLX-files_list 包含路徑的圖塊圖檔表單
對 list 內的每一個元素, 做某些指令動作....常用多省事!