Re: [心得] AutoCAD 物件鎖點之鬼打牆事件…
/*
視標註型式的設定而定,會自動產生直徑標註與半徑標註的中心標記與中心線。只有標註
線被置於圓或弧的外部時,才會建立它們。您可以使用 DIMCENTER 指令,直接建立中心
線與中心標記。
您可以在「修改標註型式」對話方塊的「符號與箭頭」頁籤上,於「中心標記」下,控制
中心線與中心標記的大小與可見性。您還可以使用 DIMCEN 系統變數存取此設定。
*/
以上,是AutoCAD 2010, 關於 系統變數 DIMCEN 的說明,
你可以參考以下。
在 任何一個版本裡面,在 AUTOCAD 裡面,按F1 即可進入
AUTOCAD 所提供的說明。
我有測試你提供的程式,原則上OK.
有機會的話,我可以免費提供你 第二次的教學,
我想以數個實際的範例,闡述 海龜畫圖的概念,
應用在 程式設計上的實際範例。
※ 引述《phragmite (Θ.Θ)》之銘言:
: 仍在迷惑當中的新手一點小小心得:
: 這篇文章原本是要來求助的,不過字打著打著,想起高老師有句原本讓我
: 以為無關緊要的話…一個動作,問題解決了八成。故事是這樣的:一星期
: 前三小時的課讓人了解到在 acad 中使用 lisp、script 配合高階語言的
: 魅力,所以趕緊買了書回來看。可是才剛練習寫個簡單的中心線的程式,
: 馬上就遇到鬼打牆。有興趣往下看的板友,可以先載入程式試試看。原先
: 用意是想在點擊圓後可以畫出突出圓周2單位長的十字線:
: (defun c:cline(/ dat rad cpt len ept wpt spt npt)
: (setvar "cmdecho" 0)
: (setq dat (entget (car (entsel "\nSelect a circle to draw centerlines..."))))
: (setq rad (cdr (assoc 40 dat)))
: (setq cpt (cdr (assoc 10 dat)))
: (setq rad (+ rad 2))
: ; ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄here is still in modifying by ph.
: (setq ept (polar cpt 0 rad))
: (setq wpt (polar cpt pi rad))
: (setq spt (polar cpt (* pi 1.5) rad))
: (setq npt (polar cpt (* pi 0.5) rad))
: (command "line" ept wpt "" "line" spt npt "")
: (prin1)
: )
: 仔細檢查過一切ok,可是執行的時侯卻只看到圓心上一個光點,並且回應
: 訊息:「建立了長度為零的線」。我取消區域變數宣告,把每個變數值都
: 查過了,想破了頭還是找不出問題。更離奇的是若在命令列下:
: (command "line" '(0 0 0) ept) 或 (command "circle" wpt [任意值])
: 原本以為會出現在 ept wpt spt npt位置的,變成跑到圓心位置上。最後
: 索性把底線那一行改成 (setq rad (* rad 1.4)) 居然就可以執行。
: 用加的不行、用乘的就可以,一點道理也沒有…。忽然想起 sjgau 說過:
: 「有很多錯誤都是因為物件鎖點使用不當造成的」看見我的物件鎖點果然
: 開著,半信半疑地按了F3……BINGO!!! 雖然現在還是不曉得為什麼選了
: 鎖中心點會產生這樣的結果、也不曉得為什麼用乘的就可以執行,不過就
: 問題本身而言算是解決了。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.231.84.22
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Cad_Cae 近期熱門文章
PTT數位生活區 即時熱門文章