autolisp源代码实用程序.docx
- 文档编号:4846526
- 上传时间:2022-12-10
- 格式:DOCX
- 页数:9
- 大小:15.89KB
autolisp源代码实用程序.docx
《autolisp源代码实用程序.docx》由会员分享,可在线阅读,更多相关《autolisp源代码实用程序.docx(9页珍藏版)》请在冰豆网上搜索。
autolisp源代码实用程序
本页仅作为文档封面,使用时可以删除Thisdocumentisforreferenceonly-rar21year.March
AutoLisp源代码实用程序2_rev3(总6页)
;****************************************************
(defunvslout()
(setqpt1'(000))
(setqpt2(getpoint"\nSpecifythecenterofvessel:
"))
(setqdix(-(carpt2)(carpt1)))
(setqdiy(-(cadrpt2)(cadrpt1)))
(setqwfile(open"c:
/public/""w"))
(setqdi(strcattyp","(rtosdixunitprec)","(rtosdiyunitprec)))
(write-linediwfile)
(closewfile)
(princ(strcat"\nX="(rtosdixunitprec)))
(princ(strcat"\nY="(rtosdiyunitprec)))
)
;***************************************************
(defunpipeout()
(setqpt1(getpoint"\nSpecifytheBasepoint:
"))
(setqpt2(getpoint"\nSpecifythecenterofpiping:
"))
(setqpip(getstring"\nSpecifythediameterofpipe:
"))
(setqdiz(abs(-(caddrpt1)(caddrpt2))))
(setqwfile(open"c:
/public/""w"))
(setqdi(strcattyp","pip","(rtosdizunitprec)))
(write-linediwfile)
(closewfile)
(princ(strcat"\nZ="(rtosdizunitprec)))
(princ(strcat"\nPipeSize="pip))
)
;*******************************************************
(defunpsout()
(setqpt1(getpoint"\nSpecifythebasepoint:
"))
(setqpt2(getpoint"\nSpecifythetopofPs:
"))
(setqdiz(abs(-(caddrpt1)(caddrpt2))))
(setqwfile(open"c:
/public/""w"))
(setqdi(strcattyp","(rtosdizunitprec)))
(write-linediwfile)
(closewfile)
(princ(strcat"\nZ="(rtosdizunitprec)))
)
;=======================================================
(defunc:
2(/unittyppt1pt2dixdiydizwfilediprectypip)
(setqunit(getvar"lunits")prec(getvar"LUPREC"))
(if(=unit2)(setqprec0))
(setqty(getstring"\nInputthetypeofequip:
PipeorVesselorpipeSupport
:
"))
(command"ucs""w")
(if(=tynil)(setqty"v"))
(if(or(=ty"p")(=ty"P"))
(progn
(setqtyp"pipe")
(pipeout)
)
)
(if(or(=ty"v")(=ty"V"))
(progn
(setqtyp"vessel")
(vslout)
)
)
(if(or(=ty"s")(=ty"S"))
(progn
(setqtyp"pipesupport")
(psout)
)
)
(princ)
)
;=======================================================
;********************************************************
(defuninpstr(str0m)
(setqsstr0str0)
(setqstrlong(strlensstr0))
(setqtotaln1)
(setqk0)
(setqlist0nil)
(while(<=totalnstrlong)
(setqstrdot(substrsstr0totaln1))
(if(=strdot",")
(progn
(setqk(+k1))
(setqdotloc(consktotaln))
(setqlist0(consdotloclist0))
)
)
(setqtotaln(1+totaln))
)
(if(>m1)
(setqfirstn(+(cdr(assoc(1-m)list0))1))
(setqfirstn1)
)
(if(<=mk)
(setqendn(cdr(assocmlist0)))
(setqendn(+strlong1))
)
(setqfinals(substrsstr0firstn(-endnfirstn)))
)
;********************************************************
;;;(defunvslin()
;;;(setqdix(distof(inpstrsline2)4))
;;;(setqdiy(distof(inpstrsline3)4))
;;;(setvar"osmode"os)
;;;(setqpt0(getpoint"\nSpecifytheOriginalpointofskid:
"))
;;;(setvar"osmode"1024)
;;;(setqpt1(polar(polarpt00dix)(/pi2)diy))
;;;(command"circle"pt1"d"do_c2)
;;;(command"chprop"(entlast)"""la""Defpoints""")
;;;(setqpt2(polarpt1(*pido_c))
;;;(setqpt3(polarpt1(*pido_c))
;;;(command"line"pt2pt3"")
;;;(command"chprop"(entlast)"""la""Defpoints""")
;;;(setqpt2(polarpt1(*pido_c))
;;;(setqpt3(polarpt1(*pido_c))
;;;(command"line"pt2pt3"")
;;;(command"chprop"(entlast)"""la""Defpoints""")
;;;(princ(strcat"\nX="(rtosdixunitprec)))
;;;(princ(strcat"\nY="(rtosdiyunitprec)))
;;;)
(defunvslin()
(setqdix(distof(inpstrsline2)2))
(setqdiy(distof(inpstrsline3)2))
(setvar"osmode"os)
(setqpt0(getpoint"\nSpecifytheOriginalpointofskid:
"))
(setvar"osmode"1024)
(command"text"pt0"3""0"(inpstrsline3))
(setqpt0(polarpt0(*pi5))
(command"text"pt0"3""0"(inpstrsline2))
)
;********************************************************
(defunpipein()
(setqdix(inpstrsline2))
(setqdiz(inpstrsline3))
(setqdix(distofdix4))
(setqdiz(distofdiz4))
(if(=unit2)
(progn
(if(=dix1)(setqcir33))(if(=dix(setqcir48))(if(=dix2)(setqcir60))(if(=dix3)(setqcir89))
(if(=dix4)(setqcir114))(if(=dix5)(setqcir141))(if(=dix6)(setqcir168))(if(=dix8)(setqcir219))
(if(=dix10)(setqcir273))(if(=dix12)(setqcir324))(if(=dix14)(setqcir356))(if(=dix16)(setqcir406))
)
(progn
(if(=dix1)(setqcir)(if(=dix(setqcir)(if(=dix2)(setqcir)(if(=dix3)(setqcir)
(if(=dix4)(setqcir)(if(=dix5)(setqcir)(if(=dix6)(setqcir)(if(=dix8)(setqcir)
(if(=dix10)(setqcir)(if(=dix12)(setqcir)(if(=dix14)(setqcir14))(if(=dix16)(setqcir16))
)
)
(setvar"osmode"os)
(setqpt0(getpoint"\nSpecifythebasepoint:
"))
(setvar"osmode"1024)
(setqpt1(polarpt0(/pi2)diz))
(command"circle"pt1"d"cir)
(command"chprop"(entlast)"""la""0""")
(setqdiz(rtosdizunitprec))
(princ(strcat"\nZ="diz))
)
;********************************************************
(defunpsin()
(setvar"osmode"os)
(setqdiz(distof(inpstrsline2)4))
(setqpt0(getpoint"\nSpecifytheOriginalpointofskid:
"))
(setvar"osmode"1024)
(setqpt1(polarpt0(/pi2)diz))
(command"circle"pt1"d"do_c2)
(command"chprop"(entlast)"""la""Defpoints""")
(setqpt2(polarpt1(*pido_c))
(setqpt3(polarpt1(*pido_c))
(command"line"pt2pt3"")
(command"chprop"(entlast)"""la""Defpoints""")
(setqpt2(polarpt1(*pido_c))
(setqpt3(polarpt1(*pido_c))
(command"line"pt2pt3"")
(command"chprop"(entlast)"""la""Defpoints""")
(princ(strcat"\nZ="(rtosdizunitprec)))
)
;********************************************************
(defunchk_lay()
(setqchklay(tblsearch"layer""Defpoints"))
(if(nullchklay)
(command"layer""n""Defpoints""c""white""Defpoints""")
)
)
;========================================================
(defunc:
22(/str0msstr0strlongtotalnklist0strdotdotlocfirstnendnfinalsos
pt0wfileslinenamedixdiydizpt1pt2unitprecchklaypt3do_ccir)
(chk_lay)
(setqos(getvar"osmode"))
(setqunit(getvar"lunits")prec(getvar"LUPREC"))
(if(=unit2)
(progn(setqprec0)(setqdo_c75))
(progn(setqdo_c3))
)
(setqwfile(open"c:
/public/""r"))
(setqsline(read-linewfile))
(setqname(inpstrsline1))
(if(=name"vessel")
(progn
(princ"\nSpecifythepositionofvessel")
(vslin)
)
)
(if(=name"pipe")
(progn
(princ"\nSpecifythepositionofpipe")
(pipein)
)
)
(if(=name"pipesupport")
(progn
(princ"\nSpecifytheheightofpipesupport")
(psin)
)
)
(setvar"osmode"os)
(prin1)
)
;=============================================================
(defunc:
222()
(chk_lay)
(setqunit(getvar"lunits")
)
(if(=unit2)
(progn(setqdo_c75))
(progn(setqdo_c3))
)
(setqpt0(getpoint"\nSecpifythebasepoint:
"))
(setqdst(getdist"\nSecpifythedistance:
"))
(setvar"osmode"1024)
(setqpt1(polarpt0(/pi2)dst))
(command"circle"pt1"d"do_c2)
(command"chprop"(entlast)"""la""Defpoints""")
(setqpt2(polarpt1(*pido_c))
(setqpt3(polarpt1(*pido_c))
(command"line"pt2pt3"")
(command"chprop"(entlast)"""la""Defpoints""")
(setqpt2(polarpt1(*pido_c))
(setqpt3(polarpt1(*pido_c))
(command"line"pt2pt3"")
(command"chprop"(entlast)"""la""Defpoints""")
)
(defunc:
ee(/unitosclstldld_osld_oelsxlsylexleyld_nsld_nep0p01p1p2ra)
(setqunit(getvar"lunits"))
(setqos(getvar"osmode"))
(if(=unit2)(setqra3)(setqra)
;(SETQcl(getvar"CLAYER"))
(princ"\nSelectthecircle")
(setqcir(entget(car(entsel))))
(princ"\nSelecttheline")
(setqlin(entget(car(entsel))))
(if(=(cdr(assoc0cir))"CIRCLE")(setqp0(cdr(assoc10cir))))
(if(=(cdr(assoc0cir))"TEXT")(setqp0(cdr(assoc11cir))))
(if(=(cdr(assoc0lin))"LINE")
(progn
(setqp1(cdr(assoc10lin)))
(setqleo(assoc11lin))
)
)
(setqang(anglep0p1))
(setqlen(cons11(polarp0angra)))
(entmod(substlenleolin))
(princ)
);enddefun
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- autolisp 源代码 实用程序