免费行情软件app网站下载大全安卓,南京建筑人才招聘网,台州网站建设技术支持,佛山营销网站开发怎么选本文讲解 AutoCAD 产品的图形单位功能产品设计#xff0c;没有任何代码实现。 使用的 AutoCAD 为 2020 版本 图形单位是什么#xff1f;
图形单位是用于设置 一些属性数据应该用什么格式显示 的命令#xff0c;命令标识为 un#xff08;units#xff09;。
举个例子。
…本文讲解 AutoCAD 产品的图形单位功能产品设计没有任何代码实现。 使用的 AutoCAD 为 2020 版本 图形单位是什么
图形单位是用于设置 一些属性数据应该用什么格式显示 的命令命令标识为 ununits。
举个例子。
某个圆的半径在数据上是 12.3456但我们给长度单位配置为 “科学计数法类型”精度为 2即保留两位小数在特性面板或其他显示界面上它需要显示为 1.23E01。
特性面板中的单位 动态输入框的单位 单位分为两类
线性单位长度单位角度单位 线性单位长度单位
线性单位linear units用于一些长度、坐标等线性数据。
用于在 UI 层显示对应类型单位数据层保持原来的十进制小数格式。另外UI 层修改对应格式数据会转换回十进制小数写回到数据层。
例子
比如设置线性单位的类型设置为科学计数法对应值 1精度为 2。
数据是十进制的 12.345678在 UI 上会转换为 1.23E01 进行显示。
如果在 UI 层的输入框将其改为 1.23E02在失焦时会将这个字符串转换为十进制小数格式的 123保存回数据层。
需要实现格式两大类转换算法
十进制小数转其他格式需要考虑精度其他格式转小数不需要考虑精度但要做校验补正。 需要实现两类方法
// 十进制转其他格式
convertDecimal(decimal, type, precision)
// 其他格式转小数
convertToDecimal(str, type)长度单位的可选类型linearUnits
1 :科学。1.2346E022: 小数。123.4563: 工程。123-4.564: 建筑。123-4 5/85: 分数。12 3/4
长度精度linearPrecision
0 到 8 的整数。
比如对小数来说代表保留 0 位到保留 8 位小数。
具体不同类型对应那些格式可以看去打开弹窗看看下拉选项。 角度单位
角度单位angle units用于显示像是旋转之类的角度相关的弧度数据。
中文为 “角度”那只是给用户看到。angle 本意为度不代表具体的格式。其实更准确的描述是 “度”而不是 “角度”。
该配置用于在 UI 层显示对应类型角度单位数据层保持原来的角度值并且在 UI 层修改对应格式数据也会转回弧度保存会数据层。
例子
假设角度单位的类型设置为弧度对应值 3精度为 2旋转方向为 false逆时针基准角度为 0。
数据是十进制的 180在 UI 上会转换为 3.14r 进行显示。
如果在 UI 层的输入框将其改为 3r它会在 onChange 中将这个字符串转换为角度 171.88733853924697保存回数据层。
同样需要实现两类方法但相比长度单位多了 “角度方向” 和 “基准角度” 的参数。
// 弧度 - 其他
convertRandian(radian, type, presicion, angleDir, angleBase)
// 其他 - 弧度
getToDegreeParser(AngleUnitEnum.Radian)(str, type, angleDir, angleBase)角度单位可选类型angleUnits
设定角度单位(AutoCAD 系统变量是 AUNITS)。
0十进制度数。1.23451度/分/秒。1d23.42百分度。1.2345g3弧度。1.2345r4勘测单位。N 88d5320.2 E表示以正北为起点向东方向旋转 88d5320.2 E
角度精度anglePrecision
0 到 8 之间的整数不同类型对应的精度格式不同。
特别注意的是“度/分/秒” 和 “勘探单位” 的精度 1 和 3 分别等价于 2 和 4。因为分和秒的整数部分是不补前导零的。这两个类型对应的下拉选项中也把 1 和 3 去掉了。 角度方向angleDir
角度旋转的正方向默认为逆时针false。
false 表示逆时针 true 表示顺时针。 二者区别其实就是角度转换成其他单位前是否要把数据源先用 PI * 2 减一下再标准化。 基准角度angleBase
基准度数为弧度值。
其实就是在角度转换其他单位前先把角度减一下这个 angleBase。
对于 AutoCAD默认向东的度数为 0。
插入时的缩放单位insertUnits
传入时的缩放单位有相当多范围也很广小到毫米大到光年。
首先作为图纸自己的单位。
当我们选中一个实体创建块时块有一个 “块单位” 属性。假设当前图纸单位为 “厘米”块为 “毫米”这个块就会缩小为原来的 1/10。 这里的缩放比例和数据源不相等是有一层转换的UI 层 scale 数据层 scale * 单位因子。
单位因子是一个计算属性是块单位转图纸单位的转换比。比如块单位为 mm图纸单位为 cm那单位因子就是 0.11mm 等于 0.1 cm。
如果设置的是比较特殊的单位 “无单位”图纸的单位会使用客户端首选项设置的值一般都是 “毫米”。 同时它作为外部参照插入其他图纸时的 “块单位”效果同块只是不能修改单位。
另外外部参照插入时这个块单位就写死了此时修改外部参照图纸的单位是不会影响的。
结尾
以上就是图形单位这个命令的主要逻辑了。其中的光源强度单位我不熟用的也少就不讲了。