(defun C:draw sin(/left point left pointx left pointy N x step)(init get 1);1到8位二進制為0000001,設置0位為1意味著禁止用戶按回車鍵響應輸入請求。
(setq left point(getpoint " \ n left point:")left pointx(car left point)left pointy(cadr left point))(init get 7);7到8位二進制是00000111。將位1設置為1意味著禁止用戶輸入零值來響應輸入請求,將位2設置為1意味著禁止用戶輸入負值來響應輸入請求。
(setq N(getint " \ N cycles number:"))(setq x 0 step 0.1)(命令" pline ")(While(& lt;x(* 2nπ))
(command(list(+left pointx x)(+left pointy(sin x)));以LeftPoint為原點,逐點繪制正弦曲線(setq x(+x step));x = x+步長,橫坐標增加步長值)
(command(list(+left pointx x)(+left pointy(sin x)))(list(+left pointx(* 2n pi))left pointy)" ")
(命令“line”left point(list(+left pointx(* 2n pi))left pointy)”);畫X軸(命令“line”(list left pointx(+left point y2))" ");繪制y軸)
保存為drawsine.lsp文件,按Ctrl+Alt+E,Visual LISP控制臺會顯示類似於:";1表格來自# AutoCAD 2004/sample/visual lisp/draw sine . LSP " >;Load”文本,焦點自動切換到Visual LISP控制臺。在CAD中輸入(C:drawsin)或輸入drawsin命令來運行該功能。如果函數定義中沒有“c:”就只能在Visual LISP控制臺中調用。函數運行後,用鼠標在CAD的活動窗口中指定坐標原點,然後在控制臺中輸入要繪制的正弦曲線的循環數來繪制這條曲線。
我在壹個教程裏改了壹個有bug的程序,就是這個。中文筆記和操作步驟都是我自己寫的。我感覺這個程序很典型,很有用,因為妳可以用其他函數代替sin(x)來畫出它們的圖像。