十五年专注于
液压缸筒生产

全国咨询热线:
400-086-9833

   热门关键词修理 加工 活塞杆 缸筒 不锈钢

无标题文档

天圆液压产品中心

当前位置:主页 > 行业资讯 >

AutoCAD中特定缸筒角度及长度捕捉的实现方法(3)

时间:2016-10-02 08:00来源:天圆网站 作者:admin 点击:
以下三种装载方法,用户任选一种即可: 在AutoCAD情形下,将OS.LSP拷至当前目次,再执行(LOAD"OS")即可装载OS.LSP。也可先将OS.LSP拷至\ACAD\SUPPORT\子目次下,再在\ACAD\SUPPORT\ACADR12.LSP或ACADR13.LSP中插部

以下三种装载方法,用户任选一种即可: 在AutoCAD情形下,将OS.LSP拷至当前目次,再执行(LOAD"OS")即可装载OS.LSP。也可先将OS.LSP拷至\ACAD\SUPPORT\子目次下,再在\ACAD\SUPPORT\ACADR12.LSP或ACADR13.LSP中插部下面一句语句实现启动AutoCAD时自动装载:

  (cond

 );for defun

  (grdraw pend pframe -1 0)

  ((= b 4);点取下拉菜单时

  (if (>= (distance plast pframe) 0.1)

四、措施的安装与行使

 ) ;for defun endp

  ((= c1 139) (leng)) ;F3

  (endp pstart pframe ang2)

 (setq *error* olderr)

 (defun leng ( / leng0 leng1 )

 (defun init ( / )

  (setq pend (polar ps ang0 dist))

  (setq ang1 (getreal))

  (setvar "coords" 0) ;不表现坐标

 OA = n XL ; OB = (n + 1) XL

  (if (= b 3)

  ((= b 2);键盘输入

  (setq *error* olderr)

  dist scmd ccoords olderr cosmode )

  (T (princ "\n 未界说的菜单"))

  ) ;for (= c1 6011)

  (grdraw pstart polde -1 0)

  (princ "\n 第一参考点:")

 ;; endp(), 十字光标投影到响应的捕获角度上后,以用户设定的长度

  (setq a (grread 2 nil))

  按上述步调依次对FF4、F5键的返回码举办核实,笔者的呆板该三键的返回码别离为137、138、139。

  (T (princ "\n 未界说的键"))

  (field pstart pframe an0)

  (princ "n\n\t --多谢行使角度捕获2.0版,措施非正常竣事--!\n")

 ) ;for defun lent

  实现特定角度和长度捕获的要害点是:当十字光标(即十字交*线)移动时,措施要随时跟踪其交*点的位置,并将该位置与用户所设定的捕获角度与长度对应起来,从而计较出在该角度上的落点。

  (princ (strcat "\n 请输入捕获长度间隔:<" (rtos leng0) ">_"))

  (command pause)

  在应用 AutoCAD 举办计划制图的操纵中, LINE 和POLYLINE 是行使频率最高的两个呼吁, 常常要碰着在某些特定角度上绘制特定长度的简朴线或复合线的环境,因而实现这两个捕获对进步AutoCAD 作图服从很有适用代价。

  (setq olderr *error* *error* err) ;堕落处理赏罚

  ((= c1 6008)

 ((=c1 139);

 ((=c1 6008)--此处6008改为用户的Zoom All菜单项返回码;

  (setq b 0 b1 1)

 ) ;for defun drag

  (field pstart pframe an0)

  (command"pan")

  )

  ) ;for (= c1 6005)

  (setq pframe (cadr a))

 ) ;for defun os

 ((=c1 6007)--此处6007改为用户的Zoom Previous菜单项返回码;

  ) ;for (= c1 141)

  ( (= b 3);用鼠标在屏幕上点取一点时

  (setq dis (distance ps pe))

  )

  以下举例声名该两个捕获的实现进程:

  ((= c1 140) ;F4

  (progn

 n: 非负整数。

  (progn

  (setq ccoords (getvar "coords"));保存原坐标表现方法

 ;; coord(), 在屏幕的最上一行的坐标栏表现长度和角度

  其详细涵义为:第一个数字"2"暗示适才是键盘输入;第二个数字"136"暗示本呆板的"F2"键的返回码。

 (defun c:os ( / b b1 b2 c pstart pend pframe plast ang2

  当十字光标在恣意的某一区间内移动时,好比在第5区间(120°~150 °)内移动时,此时,落点只能在120°或150°线上(该线在图中并不直接表现),该两根角度线的中心线为135°。当十字光标的中心点处在120°~135°之间时, 则落点应在120°线上,该落点的详细位置为由十字光标的中心点向120°线作垂线来得到,其交点D(称为垂点)即为落点,为直观起见,此时由基准点(此处为O点)向落点作一橡筋拖曳线,该橡筋拖曳线随十字光标的移动而响应移动,表现出拖动进程(见图1);同样,当十字光标的中心点处在135°~150°之间时,则落点应在150°线上,并表现响应的橡筋拖曳线。该橡筋拖曳线并不是真正的线段, 只是用XOR墨水绘制的一个向量,当用XOR墨水从头绘制一遍该向量时,该向量将从屏幕上消散,这就是本措施实现光标拖动的道理。

  (command pause)

  ((= c1 27) (home))

 ) ;for defun coord

  (setq c1 (cadr a))

 ;; 捕获计较落点

  ) ;for cond1

  (setq b (car a))

 (defun err ( msg)

  (if (>= (distance plast pframe) 0.1)

  (setq b 3)

  (princ "\n 第一角点:")

  (if (or (null len0 ) (< len0 0) (not (numberp len0)))

 (defun drag ( pold1 pold2 pold3 / )

  (setq p1 ps

  (princ "\n 第二参考点:")

第一步:Command:(grread)回车

第二步:按下F2键

  )

 (princ "\n\n\t**宁波大学构筑计划研究院--程建华,1996**\n")

  (command pause)

 ((=c1 6011)--另外6011改为用户的Pan菜单项返回码;

  (setq an0 (* ang1 (/ pi 180)))

  ((or (= b 5) (= b 12) );只移动十字光标时

  (setq str (strcat (rtos dist) ">" (rtos ang0)))

 -- --

  (command"zoom" "w")

  (setq leng1 (getreal))

  (progn

  ((= c1 13) (home))

  (setq plast pframe polde pend)

  (progn

  command pause)

 (princ "\n")

  (setvar "osmode" 0 ) ;打消捕获

 ) ;for defun draw

  (if ( / = b2 4)

  ) ;for progn

  (setq pstart pend)

① 按F2键从头设定捕获角度;

 ;; 并绘制下一次拖曳线

④ 按F5键窗口放大1.4倍;

(责任编辑:admin)
分享按钮
------分隔线----------------------------