好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

绘图及屏幕操作函数.ppt

30页
  • 卖家[上传人]:壹****1
  • 文档编号:577329711
  • 上传时间:2024-08-21
  • 文档格式:PPT
  • 文档大小:323.60KB
  • / 30 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • CAD 程序设计方法程序设计方法教师:李敬敏 三、绘图及屏幕操作函数三、绘图及屏幕操作函数§引言1 交互的必要性 3.1 get族交互式输入函数族交互式输入函数§1 输入整型数函数 getint§2 输入实型数函数 getreal§3 输入字符串函数 getstring§4 输入点函数 getpoint§5 输入窗口点函数 getcorner§6 输入距离函数 getdist§7 输入角度函数 getangle§8 输入方位角函数 getorient§10 输入关键字函数 getkword§9 限制输入类型和关键字函数 initget§11 命令暂停函数 pause 3.1 get族交互式输入函数族交互式输入函数§ getint getreal getstring and getpoint((getint [[<提示提示>]])) 输入一整型数 ((getreal [[<提示提示>]])) 输入一实型数((getstring [T] [[<提示提示>]])) 输入一个字符串 ( (getpoint [<提示提示> >] ]) ) 输入一个点格式:<提示>原样显示的任选字符串注意:若不输入任何数,而直接回车或空格键,返回NIL\n:在屏幕下一行显示<提示>可选项可选项T:有T,输入的字符串中可含有空格,回车表示输入结束,无T,输入的字符串中不能有空格,空格或回车表示输入结束 3.1 get族交互式输入函数族交互式输入函数§getint getreal and getstring getpoint(getint)(getint ”请输入一个整数:”)(setq a (getint ”\n请输入一个整数:”))(getreal)(getreal ”请输入一个实型数:”)(setq a (getreal ”\n请输入一个实型数:”))(getstring)(getstring ”\n what’s your name ”)(setq a (getstring T ”\n what’s your name ”))(setq P0 (getpoint "\n输入左下角点:")) 3.1 get族交互式输入函数族交互式输入函数§ getdist getangle getcorner and getorient(getdist [<点>] [<提示>]) 等待用户输入距离函数(getangle [<点>][<提示>]) 等待用户输入角度函数(getcorner <点> [<提示>]) 等待用户输入窗口点函数(getorient [<点>] [<提示>]) 等待用户输入方位角函数格式:(函数名+ [<点>] [<提示>])点的输入:(setq a (getdist)) (setq dist (getdist '(100.0 350.0))) (setq ang (getangle)) (getcorner '(100.0 100.0)) 3.1 get族交互式输入函数族交互式输入函数§ 输入方位角函数((getorientgetorient [[<点点>]] [[<提示提示>]])) 功能:等待用户输入一个角度,返回一个方位角的弧度值注意: 1)当角度零度方向为东方,角度增加为逆时针(AUTOCAD缺省设置),getangle 和getorient功能一样; 2)getorient总是以东方为零度方向,逆时针为角度增加方向 3)getangle的零度方向和角度增加方向可以进行设置 3.1 get族交互式输入函数族交互式输入函数§ 限制输入类型和关键字函数((initgetinitget [[<控制码控制码>]] [[<限制字符限制字符>]])) <控制码>:控制紧跟其后的get族函数输入的类型和范围;1——拒绝接受空输入2——拒绝接受零值4——拒绝接受负值8——不检查作图限定范围16——返回三维点32——用虚线(或醒目线)画橡皮筋(setq a (getreal "a=")) (initget 2)(setq b (getreal "b=")) (/ a b)(initget (+ 1 2 4))(setq age (getint "How old you are?")) 3.1 get族交互式输入函数族交互式输入函数§ 限制输入类型和关键字函数((initgetinitget [[<控制码控制码>]] [[<限制字符限制字符>]])) 1、缩写的字符用大写字母表示,其余字符用小写表示 2、把缩写的字符(大写)放在整个关键字的后面,用逗号分开<限制字符>:简化字符串的输入和保证输入的字符串为规定的字符串两种格式:(initget “Yes No”)(initget “Yes,Y No,N”)注意:缩写字符的个数应能代表匹配关键字的最少字符个数 (initget "LTScale LTYpe") 3.1 get族交互式输入函数族交互式输入函数§输入关键字函数((getkwordgetkword [[<提示提示>]])) 功能:必须与initget配对使用,等待用户输入的字符只能是initget函数<限制字符>中的字符串。

      注意:getkword不能单独使用;一个initget函数仅对其后的一个get函数起作用(initget “Yes No”)(setq k (getkword “Are you sure?(Y/N )”)) 3.1 get族交互式输入函数族交互式输入函数§命令暂停函数((pausepause)) 功能:用在command函数的参数表中,使正在执行的AutoCAD命令暂停,以等用户输入(command "circle" "100,100" pause "line" "100,100" "100,800" "") 3.2 command 函数函数((commandcommand <自自变量量>…)) 功能: Autolisp程序调用AutoCAD命令进行绘图的唯一途径和接口,<自变量>表示 AutoCAD的命令、子命令和命令所需要的参数规定:1、AutoCAD的命令、子命令和命令选择项用字符串表示(加双引号),不分大小写(command “pline” “80,100” “w” 0.4 0.4 “150,250” “100,600” “c”)2、数值常数(整、实型)可以是数字本身,或字符串(command “pline” “80,100” “w” “0.4” “0.4” “250,300” “100,600” “c”) 3.2 command 函数函数((commandcommand <自自变量量>…)) 功能:<自变量>表示 和AutoCAD的命令、子命令和命令所需要的参数。

      规定:3、点常数采用表的形式或字符串形式表示(command “pline” ‘(80 100) “w” 0.4 0.4 ‘(150 250) ‘(100 600) “c”)(command "pline" (list 50 100) "w" "0.4" "0.4" "250,180" '(100 500) "c")(command "pline" "80,100" "w" 0.4 0.4 "150,250" "100,600" "c") 3.2 command 函数函数§Autolisp程序调用AutoCAD命令进行绘图的唯一途径和接口((commandcommand <自自变量量>…)) 功能:<自变量>表示 和AutoCAD的命令、子命令和命令所需要的参数规定:4、command函数调用参数中,空字符串“” 等效键盘上按一次空格或回车(command “pline” “80,100” “w” 0.4 0.4 “150,250” “100,600” “”)5、 (command)不带任何参数的command,相当于一次Esc键,来取消当前的AutoCAD命令,两个,则返回命令状态,也可用符号^代替6、 command函数中不能使用GET族函数 3.2 command 函数函数§Command函数 讨论与练习(command "layer" "n" "1, 2, 3, 4, 5" "s" 1 "" )1、设5个新层,并把1层置为当前层2、设置新当前层,并把红色、中心线赋给新层3、用LIMITS设置4号图幅,并置为全屏幕 (command "layer" "m" 1 "c" 1 1 "l" "center" 1 "") (command "limits" '(0 0) '(297 210) "zoom" "a") 3.2 command 函数函数§Command函数 讨论与练习(command "pline" '(150 150) "w" 0.4 0.4 "a" "ce" '(50 150) "a" 180 "cl")4、用PLINE画粗实线圆5、写文字,用^^保证从命令状态下开始6、采用缺省值标尺寸 (command ^ ^ "text" "c" (list 300 200) 10 0 "XEMAPLE") (command "dim" "hor" '(50.0 150.0) '(200.0 150.0) '(120.0 160.0) "<>" "exit") 3.2 command 函数函数§Command函数 讨论与练习 (command "polygon" 6 '(320 320) "i" 50)7、采用内接圆方式画正多边形8、把窗口内的目标阵列为两行四列,行距为30,列距为25 (command "array" "w" pw1 pw2 "" "r" 2 4 30 25) (command "array" "w" '(0 0) '(1024 780) "" "r" 2 4 200 250) (command "array" (entlast) "" "r" 2 4 300 350) 3.2 command 函数函数§Command函数 讨论与练习 (command "mirror" "w" pw1 pw2 "" p1 p2 "n") 9、图形的镜象(command "mirror" "w" '(0 0) '(1024 780) "" ‘(450 100) ‘(450 600) “n” ) 在使用command时,一定要知道所调用子命令的相关参数或子命令 命令,数据和坐标点一定要按照command函数要求的格式进行书写 3.3 屏幕操作函数屏幕操作函数1 1((graphscr))文本屏幕转换成图形屏幕函数,返回NIL 2((textscr)) 图形屏幕转换成文本屏幕函数,返回NIL 相当于按一次功能键F2,两个屏幕互换3 ((redraw [[<实体名实体名>][][<方式方式>]])) 重画屏幕上的图形4 ((grclear))对当前视窗的清屏5 ((vports))返回当前工作的视窗说明,给出视窗的标号 和视窗的左下角和右上角坐标 3.4 其他输入输出函数其他输入输出函数§1 文件装入函数((loadload <文件名文件名>[[<错误提示串错误提示串>]])) 功能:装入一个AutoLisp文件<文件名>:是包括驱动器、目录名和文件名的字符串;返回:若成功,返回文件中的最后一个函数名;如果失败,返回<错误提示串>,若没有,则返回“文件名”字符串(load “D:/CAD/ifxt.lsp”)(load “D:\\CAD\\ifxt” “load error!”) 3.4 其他输入输出函数其他输入输出函数§2 字符串显示函数((promptprompt <信息信息>)) 功能:将<信息>显示在屏幕上,返回:显示时不换行,显示后不留空格。

      <信息>是一个字符串,但屏幕上显示的不带引号§3 换行函数((trepritrepri)) 功能:控制换行,把光标移至下一行的行首,与(princ “\n”)的作用相同 3.4 其他输入输出函数其他输入输出函数§4 打开文件函数((openopen <文件名文件名><方式方式>)) 功能:打开文件,会返回一个文件描述符,供其他I/O函数使用文件名:为包括驱动器、目录和文件名的字符串,扩展名不能省,同样,“\\”才得到一个“\”r——以读方式打开文件,若不存在,返回NILw——以写方式打开,若不存在,新建a——以追加方式打开,若不存在,新建,若存在,指针移至文件尾方式:为读写标志, 必须用小写的字符串来表示 (setq f (open "D:/CAD/samp2.txt" "w")) 3.4 其他输入输出函数其他输入输出函数§5 关闭文件函数((closeclose <文件描述符文件描述符>)) 功能:关闭指定的文件,返回NIL文件描述符:open函数产生的,关闭后失效 (setq f (open "D:/CAD/samp2.txt" "w")) (close f ) 3.4 其他输入输出函数其他输入输出函数1 1((print <表达式表达式>[[<文件描述符文件描述符>]]))2 ((prin1 <表达式表达式>[[<文件描述符文件描述符>]])) 3((princ <表达式表达式>[[<文件描述符文件描述符>]])) 把表达式求值后的值显示在屏幕上或写入文件中§6 打印、显示函数print prin1 princ 3.4 其他输入输出函数其他输入输出函数§6 打印、显示函数((printprint <表达式表达式>[[<文件描述符文件描述符>]])) 1)print 总是在显示前自动换行到新一行的行首,显示后还要再输出一空格2)若<表达式>值为字符串,结果是带有双引号的字符串3)若表达式值含有控制字符,不起作用4)print 无<表达式>参数时,起控制换行的作用5)若有<文件描述符>,将值写入相应的文件 3.4 其他输入输出函数其他输入输出函数§6 打印、显示函数小结:PRINT 函数总是在显示前自动换行到新一行的行首, 而显示后还要再输出一个空格。

      如果是字符串,则原样显示,就是带有双引号,当字符串中有控制符时,不起作用PRIN1的显示特点: 显示时不换行,总是从当前光标处开始显示, 显示后不留空格字符串也是原样显示,当字符串中有控制符时,不起作用PRINC 显示与prin1相似,显示字符串时, 不带定界符双引号,当字符串中有控制符时,显示时将起控制作用 3.4其他输入输出函数其他输入输出函数§Print、prin1、princ函数 讨论与练习 3.4其他输入输出函数其他输入输出函数§Print、prin1、princ函数 讨论与练习 3.4 其他输入输出函数其他输入输出函数1((read-line [[<文件描述符文件描述符>]]))从键盘或从<文件描述符>所指的文件中读入一行字符串,并返回所读的字符串2 ((read-char [[<文件描述符文件描述符>]]))从键盘或从<文件描述符>所指的文件中读入一个单字符,并返回该字符的ASCII码3((write-line <字符串字符串> [[<文件描述符文件描述符>]]))将<字符串>写到屏幕或写到<文件描述符>所指的文件中,返回用双引号引起的<字符串>4((write-char <数数> [[<文件描述符文件描述符>]]))将一个字符写到屏幕或写到<文件描述符>所指的文件中,<数>是要写字符的ASCII码,也是函数的返回值§Read-line、read-char、write-line and write-char 3.5 系统变量存取函数系统变量存取函数§1 查看系统变量函数((getvargetvar <系系统变量名量名>)) 功能:获取AutoCAD系统变量的当前值,<系统变量名>是用字符串表示的合法的系统变量名(getvar "filletrad")(setq p1 (getvar "extmin") )§2 设置系统变量函数((setvarsetvar <系系统变量名量名> <值>)) 功能:设置AutoCAD系统变量的新当前值(setvar “filletrad“ 0.5) 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.