第六章交互式输入函数和屏幕输出.ppt
《第六章交互式输入函数和屏幕输出.ppt》由会员分享,可在线阅读,更多相关《第六章交互式输入函数和屏幕输出.ppt(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第六章交互式输入函数和屏幕输出函数6.1坐标系与角度测量6.1.1坐标系WCS 世界坐标系:即参考坐标系。所有其他坐标系均相对于 WCS 定义,该坐标系恒定不变。相对于 WCS 所测量的值可以稳定地转换到其他坐标系中。UCS 用户坐标系:即工作坐标系。用户可以设置 UCS 以使图形编辑工作更为方便。所有传入 AutoCAD 命令的点,包括 AutoLISP 程序和外部函数返回的点,都是当前 UCS 中的点(除非用户在命令提示中输入的点前加上“*”,前缀为WCS坐标系)。如果应用程序需要将 WCS、OCS 或 DCS 中的坐标传送给 AutoCAD 命令,那么必须先调用函数 trans 将它们转
2、换到 UCS 中。(当AutoCAD等待用户输入一个三维点时,若用户输入一个二维点,或用定标设备拾取一个点时,取当前高度作为Z坐标。当前高度见ELEV命令和ELEVATION系统变量。具有当前高度的XY平面角构造平面。)OCS 对象坐标系:由 entget 返回的点以此坐标系表示,即相对于对象本身的坐标。根据该对象的用途,这些点常常被转换到 WCS、当前 UCS 或当前 DCS 中。反过来,在调用 entmod 或 entmake 将这些点写入数据库之前,它们也必须被转换为 OCS。该坐标系也称为图元坐标系。DCS 显示坐标系:在显示图形前,先将对象转换到此坐标系中。DCS 的原点存储在 Au
3、toCAD 系统变量 TARGET 中,并且以 Z 轴作为观察方向。换句话说,视口总是 DCS 的一个平面视图。这些坐标可以决定显示给 AutoCAD 用户的画面的位置。.。PSDCS 图纸空间 DCS:此坐标系仅能与当前激活的模型空间视口进行转换。它实质上是一个二维的转换,如果参数 disp 是 0,那么 X 坐标和 Y 坐标总是按比例缩放和平移。Z 坐标仅按比例缩放,但不作平移,因此,它可以用于确定两个坐标系之间的比例因子。6.1.2角度的测量在AutoCAD中,测量角度有方位角(或称绝对角度)和相对角度。1、方位角角度0表示正右方,逆时针转为正。2、相对角度角度的测量基准由系统变量ANG
4、BASE和ANGDIR决定,ANGBASE表示零度位置,相对当前UCS的X轴正向测量,ANGDIR决定角度的正向方向(1 顺时针,0 逆时针),对ANGBASE的解释为逆时针为正,UCS的X轴正向为0。(setvar 系统变量 值)设置系统变量(getvar 系统变量)获得系统变量值UNITS命令确定角度单位 例题 假设UCS是绕Z轴转90度,然后用下式设置零度方向和增加方向(setvar angbase 45)单位总是度,不随AUNITS变(setvar angdir 1)顺时针为正若方位角为180度,则相对角度为45度。只决定CAD的输入和显示单位,许多LISP函数总是返回弧度值6.2 交
5、互输入函数getxxx及初始化函数initget函数例题(initget(+1 2)Type Exit)1 非空 2 非零 (setq n(getint nType/Exit/正整数:)6.2.1 initget函数(initget bits string)总是返回nil为随后的用户输入函数getxxx调用创建关键字并控制其输入范围。getstring 函数是唯一不接受关键字的用户输入函数。在随后调用用户输入函数时,如果用户输入的不是相应的数据类型(例如与 getpoint 函数相对应的类型是一个点),该函数将检索关键字表来确定用户是否键入了一个关键字。如果用户的输入和表中的一个关键字相匹配,
6、函数将以字符串的形式返回该关键字。应用程序可以对返回的关键字进行检测,并对每一个关键字执行相应动作。如果用户的输入不是相应类型且和表中任何一个关键字都不匹配,AutoCAD 将要求用户再次输入。initget 函数的位编码值与关键字表仅对紧随其后的那个用户输入函数有效。如果 initget 函数设置了一个控制位,而该控制位对应用程序随后调用的那个用户输入函数来说没有意义,则忽略该控制位。如果用户的输入不满足一个或多个指定条件(例如在不允许输入零值时输入了零值),AutoCAD 将显示信息要求用户再次输入bits 按位编码的整数,用于控制是否允许某些类型的用户输入。这些控制位可以任意组合(即把各
7、位加起来),构成 0 到 225 之间的值。如果没有指定 bits 参数,则假定它是 0。各位的值如下:1(位0)非空非空2(位1)非零非零4(位2)非负非负8(位3)无界。无界。允许用户在当前图形界限之外输入一个点,即使 AutoCAD 的系统变量 LIMCHECK 当前被设置为开(ON),本条件也照样对随后调用的用户输入函数有效。16(位4)(目前不使用)(目前不使用)。32(位5)用虚线绘制拖引线或拉伸方框用虚线绘制拖引线或拉伸方框。对于那些可以由用户在图形屏幕上通过选择位置来指定一个点的函数,设置该控制位将使拖引线和拉伸方框显示为虚线而不是实线(某些显示驱动程序用颜色醒目的线来代替虚线
8、)。如果系统变量 POPUPS 设为 0,AutoCAD 将忽略该控制位。64(位6)二维距离二维距离。128(位7)任意输入,优先级最高任意输入,优先级最高。例如,如果同时设置了位 7 和位 0,那么用户仅键入 ENTER 键时,将返回空字符串。注意 AutoLISP 的后续版本中可能会使用其他 initget 控制位,所以不要设置此处未提及的位。函数识别关键字控制位之值非空1非零2非负4无界8使用虚线32二维距离64任意输入128getintyyyyygetrealyyyyygetdistyyyyyyygetangleyyyyygetorientyyyyygetpointyyyyygetc
9、oneryyyyygetwordyyygetstringentselynentselynentselpy用户输入函数控制位和关键词string 代表关键字表的字符串。关键字规范关键字用一个或多个空格分隔。例如,“Width Height Depth”关键字只能由字母、数值和连字符(-)组成。关键字有如下两种缩写办法:关键字有如下两种缩写办法:关键字的必需部分用大写字母表示,而其余部分用小写字母表示。大写的缩写部分可以位于关键字的任何位置(例如,LType、eXit或或toP)。整个关键字用大写字母表示,其后紧跟一个逗号,然后再跟随其必需部分(例如,LTYPE,LT)。这种情况下,关键字的必需部
10、分必须包含关键字的第一个字符,这意味着“EXIT,X”是无效的。“LType”和“LTYPE,LT”这两种关键字缩写方式是等价的。如果用户输入关键字不分LT大小写。用户还可以输入关键字缩写部分之后的字符。在本例中,用户可以输入LT、LTY、LTYP或LTYPE,但只输入 L 是不够的。如果 string 参数完全以大写或小写字符给出,其后没有逗号,也没有跟随必需部分,则只有用户完整输入这个关键字时 AutoCAD 才能识别。initget 函数支持本地化的关键字。函数支持本地化的关键字。下列关键字字符串语法允许输入本地化的关键字,而返回与语言无关的关键字:local1 local2 local
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第六 交互式 输入 函数 屏幕 输出
限制150内