学习lisp的好时机。你需要通读代码,找到链测长度的变量,然后除以1000。该程序有很好的注释。我找到了几个可能的起点,特别是cd\u v1,但它在哪里转换为cd\u t4
- ; Internal Variables:
- ; ===================
- ; cd_l1 = list of groups of coordinates (x,y), chainage(s), offset(s) and level(s)
- ; cd_z1 = value of DIMZIN at start of function
- ; cd_h1 = current text height
- ; cd_c1 = count through cd_l1
- ; cd_l2 = copy of list cd_l1 but with chainages and offsets rounded to 3 decimal places
- ; cd_i1 = item in list cd_l1 or cd_l2
- [color="red"]; cd_v1 = item's chainage[/color]
- ; cd_v2 = item's offset
- ; cd_m1 = minimum chainage at start of comparison
- ; cd_m2 = minimum offset at start of comparison
- ; cd_m3 = maximum chainage
- ; cd_m4 = maximum offset
- ; cd_t1, cd_t2, cd_t3, [color="red"]cd_t4[/color], cd_t5 = text for each MTEXT object
- ; cd_n1 = next comparison chainage
- ; cd_n2 = next comparison offset
- ; cd_p1 = point at which to draw MTEXT objects
- ; cd_x1 = horizontal offset between each MTEXT object
- ; Internal Variables:
- ; ===================
- ; ck_l1 = source polyline parsed list
- ; ck_n1 = chainage at start of polyline
- ; [color="red"]ck_n2 = chainage where chainage mark is to be drawn[/color]
- ; ck_b1 = chainage mark number style (nil for CHXSECT and CHXSECTS)
- ; ck_s1 = chainage mark line length (bigger for CHXSECT and CHXSECTS)
- ; ck_c1 = count through ck_l1
- ; ck_n3 = chainage at start of segment
- ; ck_z1 = initial value of DIMZIN
- ; ck_h1 = current text height
- ; ck_i1 = item in ck_l1
- ; ck_n4 = length of segment
- ; ck_p1 = mid-point of chainage mark, then start point for text
- ; ck_a1 = angle along line or arc, then angle for chainage mark
- ; ck_t1 = text output
- ; ck_b2 = flag: T if text output is negative, nil if positive
|