流_星 发表于 2015-2-4 12:31:08

帮忙调试一下程序在2013老出现stringp 错误

本帖最后由 流_星 于 2015-2-4 12:34 编辑

(DEFUN stee( )
(if (= siz3 nil)(setq siz3 375)) ;;SWSETBEA
(if (= beasiz nil)(setq beasiz 375)) ;;SWSETBEA
(if (= chasiz nil)(setq chasiz 25)) ;;SWSETCHA
(if (= angsiz nil)(setq angsiz 29)) ;;SWSETANG
(if (= tubsiz nil)(setq tubsiz 54)) ;;SWSETUB
(if (= teesiz nil)(setq teesiz 349)) ;;SWSETEE
(if (= pipsiz nil)(setq pipsiz 62)) ;;SWSETPIP
(setq def2 6)
(properties_rd_stl_aq1)
(properties_deflt_stl_aq1)
(setq cmd (getvar "cmdecho"))
(setvar "cmdecho" 0)
(setq ltyp (getvar "celtype"))
(command "._linetype" "s" "HIDDEN" "")
(command "._linetype" "s" "CENTER" "")
(command "._linetype" "s" ltyp "")
(if (= namlay nil)(setq namlay stllay))
(if (= (tblobjname "layer" namlay) nil) (setq namlay stllay))
(if (= (tblobjname "layer" stllay) nil)
   (progn
      (if (wcmatch (getvar "acadver") "14*,15*,19*")
         (if (= (getvar "tilemode") 0)
         (progn
             (command "vplayer" "newfrz" stllay "")
             (command "vplayer" "thaw" stllay "" "")
            )
            (command "-layer""new" stllay "")
          )
      )
       (if (wcmatch (getvar "acadver") "13*")
         (if (= (getvar "tilemode") 0)
         (progn
             (command "vplayer" "newfrz" stllay "")
             (command "vplayer" "thaw" stllay "" "")
         )
            (command "-layer""new" stllay "")
          )
       )
   )
))

(DEFUN PROPERTIES_DEFLT_STL_AQ1 ( )
(setq sc1_aq1 (getvar "cecolor"))
(if(or(= sc1_aq1 "BYLAYER")(= sc1_aq1 "ByLayer"))
(setq sc1_aq1 "256")
)
(if(or(= sc1_aq1 "BYBLOCK")(= sc1_aq1 "ByBlock"))
(setq sc1_aq1 "0")
)
(setq sc1_aq1(atoi sc1_aq1))
(setq hc1_aq1 (getvar "cecolor"))
(if(or(= hc1_aq1 "BYLAYER")(= hc1_aq1 "ByLayer"))
(setq hc1_aq1 "256")
)
(if(or(= hc1_aq1 "BYBLOCK")(= hc1_aq1 "ByBlock"))
(setq hc1_aq1 "0")
)
(setq hc1_aq1(atoi hc1_aq1))
(setq hlc1_aq1 (getvar "cecolor"))
(if(or(= hlc1_aq1 "BYLAYER")(= hlc1_aq1 "ByLayer"))
(setq hlc1_aq1 "256")
)
(if(or(= hlc1_aq1 "BYBLOCK")(= hlc1_aq1 "ByBlock"))
(setq hlc1_aq1 "0")
)
(setq hlc1_aq1(atoi hlc1_aq1))
(setq clc1_aq1 (getvar "cecolor"))
(if(or(= clc1_aq1 "BYLAYER")(= clc1_aq1 "ByLayer"))
(setq clc1_aq1 "256")
)
(if(or(= clc1_aq1 "BYBLOCK")(= clc1_aq1 "ByBlock"))
(setq clc1_aq1 "0")
)
(setq clc1_aq1(atoi clc1_aq1))
(setq blc1_aq1 (getvar "cecolor"))
(if(or(= blc1_aq1 "BYLAYER")(= blc1_aq1 "ByLayer"))
(setq blc1_aq1 "256")
)
(if(or(= blc1_aq1 "BYBLOCK")(= blc1_aq1 "ByBlock"))
(setq blc1_aq1 "0")
)
(setq blc1_aq1(atoi blc1_aq1))
(setq lay1_aq1(getvar "clayer"))
(setq lay1_aq1 (cdr(assoc 2(tblsearch "layer" lay1_aq1))));;checks case sensitive text
(layvis_stl_aq1)
(setq vislst13c (length liststl))
(setq vislst12c (member lay1_aq1 liststl))
(setq vislst12c (length vislst12c))
(setq vislst14c (- vislst13c vislst12c))
(setq lay1_aq1 (itoa vislst14c))
(setq lt1_type(getvar "celtype"))
(setq lt1_type(cdr(assoc 2(tblsearch "ltype" lt1_type))));;checks case sensitive text
(ltvis_stl_aq1)
(setq vislst13z (length listvis))
(setq vislst12z (member lt1_type listvis))
(setq vislst12z (length vislst12z))
(setq vislst14z (- vislst13z vislst12z))
(setq lt1_type (itoa vislst14z))
(setq lt1_typeh(getvar "celtype"))
(setq lt1_typeh(cdr(assoc 2(tblsearch "ltype" lt1_typeh))))
(lthid_stl_aq1)
(setq hidlst13y (length listhid))
(setq hidlst12y (member lt1_typeh listhid))
(setq hidlst12y (length hidlst12y))
(setq hidlst14y (- hidlst13y hidlst12y))
(setq lt1_typeh (itoa hidlst14y))
(setq hls1_aq1(getvar "celtscale"))
(setq cls1_aq1(getvar "celtscale"))
(setq lt1_scal(getvar "celtscale"))
(setq ha1_aq1(rtd(getvar "hpang")))
(setq hs1_aq1(getvar "hpscale"))
(setq hp1_aq1(getvar "hpname"))
)

(DEFUN PROPERTIES_RD_STL_AQ1 ( )
(setq steelprop (open (findfile "steel.txt") "r"))
(setq lt_type (read-line steelprop));; sets default shape linetype
(setq lt_type(cdr(assoc 2(tblsearch "ltype" lt_type))));;checks case sen
(setq lt_scal (atof (read-line steelprop)));; sets default shape ltype scale
(setq sc_aq1 (atoi (read-line steelprop))) ;; sets default shape color
(setq ha_aq1 (atof (read-line steelprop))) ;; sets hatch angle
(setq hs_aq1 (atof (read-line steelprop))) ;; sets default hatch scale
(setq hp_aq1 (atoi (read-line steelprop))) ;; set default hatch pattern value
(setq hc_aq1 (atoi (read-line steelprop))) ;; sets default hatch color
(setq hls_aq1 (atof (read-line steelprop)));; sets default hidden line scale
(setq hlc_aq1 (atoi (read-line steelprop)));; sets default hidden line color
(setq cls_aq1 (atof (read-line steelprop)));; sets default center line scale
(setq clc_aq1 (atoi (read-line steelprop)));; sets default center line color
(setq blc_aq1 (atoi (read-line steelprop)));; sets default break line color
(setq stllay (strcase (read-line steelprop)))
(setq lt_typeh (read-line steelprop));; sets default shape linetype hidden
(setq lt_typeh(cdr(assoc 2(tblsearch "ltype" lt_typeh))));;checks case sen
(setq retdf (close steelprop))
)在cad2013
中报错 steel.txt内容是
CONTINUOUS
0.50
1
0.00
1.00
1
2
0.50
4
1.00
4
1
STEEL
HIDDEN

lostbalance 发表于 2015-2-4 22:30:11

好长啊。。。估计是某个参数的格式有问题吧,用rtos或者atof之类的转化下就好了。可以用添加(princ "ok")之类的命令行提示判断定位下,看看具体是哪一行出了问题
页: [1]
查看完整版本: 帮忙调试一下程序在2013老出现stringp 错误