坐标文本(coor)

功能

显示机床某个轴的坐标数据或轴名称

支持的数据

  • 绝对坐标、机床坐标、相对坐标、余移动量、轴名称

相对坐标、余移动量和轴名称(V2.4开始支持)
坐标coor支持设置通道号(V3.4开始支持)

参数

  • 控件地址: 轴描述字符串(可以为轴名称或描述轴号的字符串,轴名称如 X,表示全局轴名,跟通道无关;轴号用"coorN$x"表示,其中N为正整数,表示通道内轴号, $x的x为正整数,表示通道号),此参数类型为字符串,所以应写作 "X[abs]""coor1"coor3$1。辅助通道使用@符号表示,例如:coor3@1
    数据格式1 数据格式2 含义
    X[abs] coor1[abs] 绝对坐标
    X[mt] coor1[mt] 机床坐标
    X[rel] coor1[rel] 相对坐标
    X[inot] coor1[inot] 余移动量
  • 位置大小: 控件所在位置及所占空间大小,此参数类型为元组,写作 (a, b, c, d) 其中a/b/c/d都应该是正整形值分别表示控件的 起始行/起始列/所占行数/所占列数,其中c/d可以省略,省略时值均为1。
  • 坐标类型,取值可以为 绝对/机床/相对/余移动量/轴名称,此参数非字符串类型,直接将值写在此处即可,写作 机床或其英文 Coor.mt ,此参数可以省略,默认为绝对。
  • 对齐方式(不设为默认值)
  • 颜色和背景色(不设为默认值)
  • 字体大小(不设为默认值)
  • 边框格式:取值可为 隐藏/不隐藏,此参数可以省略,默认为不隐藏,此参数类型非字符串,写作 隐藏,会隐藏控件四周的线框。
  • format: 对数值的显示进行格式化,格式为format="%xxx",是C语言库函数printf的子集,目前仅支持几种简单的格式化,在下面列出。使用此参数时,必须使用data_type参数,且此时参数的格式化需要与data_type类型相对应。格式化时不会改变变量的值,但会改变其显示形式。一些情况可能会导致显示的值与变量真实值不符。(使用此参数时你需要明确知道你在做什么,并且不会给自己和用户带来困扰)。此参数在"坐标类型"参数值不为轴名称时使用。下面是目前支持的格式化形式。
    • coor(“X[abs]”, (1, 1), format="%.nf", data_type=‘float’) 此时将数据格式化为浮点型,n为正整形数值,此时控件会显示n位小数,剩余小数部分按四舍五入处理。此时必须设置data_type参数为’float’。".n"可以省略,省略时默认显示6位小数。
    • coor(“X[abs]”, (1, 2), format="%0nd", data_type=‘int’) 此时将数据格式化为带符号整形,n为正整形数值,此时控件中数据宽度最小为n,左侧用0补齐,此时必须设置data_type参数为’int’或’uint’。“0n"可以省略,省略时没有最小宽度限制。
    • coor(“X[abs]”, (1, 3), format="%0nu”, data_type=‘uint’) 此时将数据格式化为无符号整形,n为正整形数值,此时控件中数据宽度最小为n,左侧用0补齐,此时必须设置data_type参数为’uint’。“0n"可以省略,省略时没有最小宽度限制。
  • data_type: 数据的类型,可取的值共有三种类型’int’/‘uint’/‘float’,分别代表 有符号整形/无符号整形/浮点型。格式为 data_type='int', 此参数需要与format参数一起使用来实现格式化的功能,单独使用无意义。(参数为特定需求的情况设计,无特殊需求勿用,以免造成不必要的困扰。)
  • visible: 是否显示:不显示visible=0

    1.当通道不存在或轴不存在时返回空值。2.使用轴名称时,需要在轴名称后添加[轴类型]

示例

此控件用于在自定义界面中显示某一个轴的实时坐标,可以为绝对坐标或机床坐标,应该与能说明坐标类型和轴名称的text控件一起使用。 例如:下面的这种常用表现形式,text控件说明坐标类型和轴名,coor控件显示实时坐标。

coor

with page(456, 800, id="page1", text=(白色, f20x10, 居中), bg_color=(24, 24, 24)):

    # 数据格式1
    coor("X[abs]", (1, 1, 30, 150))
    coor("Y[abs]", (41, 1, 30, 150), 绝对)
    # 数据格式2
    coor("coor3", (81, 1, 30, 150), 绝对)
    # 主通道2内第一轴的轴名称
    coor("coor3$1", (121, 1, 30, 150), 轴名称)
    # 常用示例
    label("绝对坐标",(201, 10, 30, 150), 青色, 左对齐)
    coor("coor1", (241, 10, 30, 150), 轴名称, 左对齐)
    coor("coor1", (241, 20, 30, 150), 绝对, 右对齐)
    coor("coor3", (281, 10, 30, 150), 轴名称, 左对齐)
    coor("coor3", (281, 20, 30, 150), 绝对, 右对齐)
    # 示教轴的坐标,将轴1的绝对坐标示教到#500宏变量中
    teach("#500", "coor1", (1, 200, 30, 150))

    menu("第一页", "page1")
    menu("示教绝对", 示教绝对)