整理CADXY坐标标注AUTOLISP程序.docx

上传人:b****6 文档编号:8227684 上传时间:2023-01-30 格式:DOCX 页数:29 大小:20.16KB
下载 相关 举报
整理CADXY坐标标注AUTOLISP程序.docx_第1页
第1页 / 共29页
整理CADXY坐标标注AUTOLISP程序.docx_第2页
第2页 / 共29页
整理CADXY坐标标注AUTOLISP程序.docx_第3页
第3页 / 共29页
整理CADXY坐标标注AUTOLISP程序.docx_第4页
第4页 / 共29页
整理CADXY坐标标注AUTOLISP程序.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

整理CADXY坐标标注AUTOLISP程序.docx

《整理CADXY坐标标注AUTOLISP程序.docx》由会员分享,可在线阅读,更多相关《整理CADXY坐标标注AUTOLISP程序.docx(29页珍藏版)》请在冰豆网上搜索。

整理CADXY坐标标注AUTOLISP程序.docx

整理CADXY坐标标注AUTOLISP程序

CADX,Y坐标坐标标注AUTOLISP程序

;;(DEFUNIDPT(/ppxpypxxpyy)

(DEFUNIDPT()

(SETQXT)

(WHILEX

(SETVAR"OSMODE"(+132512))

(INITGET1)

(SETQPP(GETPOINT"\nPLEASEPICKTHEPOINT:

"))

(SETVAR"OSMODE"0)

(SETQP(OSNAPPP"INT,END,CEN"))

(IF(=PNIL)

(PROMPT"\nINVALIDPOINT,PICK!

")

(SETQXNIL)

(SETQPXX(CARP)

PYY(CADRP)

PX(RTOSPXX2PRE1)

PY(RTOSPYY2PRE1)

;;(DEFUNMAX_XY(WIPXPY/LPXPXPYPY)

(DEFUNMAX_XY()

(SETQKKK"X")

(SETQLLL"Y")

(SETQLX(STRLENPX)

LY(STRLENPY)

(IF(>LXLY)

(PROGN

(SETQW_NU(-LXLY))

(WHILE(>W_NU0)

(SETQPY(STRCAT""PY))

(SETQW_NU(-W_NU1))

(IF(

(PROGN

(SETQW_NU(-LYLX))

(WHILE(>W_NU0)

(SETQPX(STRCAT""PX))

(SETQW_NU(-W_NU1))

(SETQPYPY(STRCATKKKPY))

(SETQPXPX(STRCATLLLPX))

(SETQPXL(STRLENPXPX)

PYL(STRLENPYPY)

MAXL(FLOAT(MAXPXLPYL))

L(*WIMAXL)

;;(DEFUNTEXT_P(/WWXWY)

(DEFUNTEXT_P()

(SETVAR"OSMODE"0)

(INITGET1)

(SETQW(GETPOINT"\nINPUTX-YTEXTPOSITION:

"))

(SETQWX(CARW))

(SETQWY(CADRW))

;;(DEFUNDRLIN(CALPWL/ALPWWE)

(DEFUNDRLIN()

(SETQAL01(+PICAL))

(SETQALPW(ANGLEPW))

(SETQAG-D(-ALPWCAL))

(IF(>AG-D0)

(PROGN

(IF(AND(AG-D(*PI0)))

(SETQWE(POLARWCALL)

BZ1

(IF(AND(>AG-D(*PI0.5))(

(SETQWE(POLARWAL01L)

BZ2

(IF(AND(>AG-D(*PI1.5))(

(SETQWE(POLARWCALL)

BZ3

;>>>>>

(PROGN

;<<<<<

(IF(AND(>AG-D(*PI-0.5))(

(SETQWE(POLARWCALL)

BZ1

(IF(AND(AG-D(*PI-1.5)))

(SETQWE(POLARWAL01L)

BZ2

(IF(AND(AG-D(*PI-2)))

(SETQWE(POLARWCALL)

BZ3

;>>>>>

(COMMAND"PLINE"P"W"0.0""WWE"")

;;(DEFUNDRCORD(AL01ALPWHCALPXPXPYPY/)

(DEFUNDRCORD()

(IF(=BZ2)

(SETQWBWE)

(SETQWBW)

(SETQWBX(POLARWB(+(*PI0.5)CAL)H)

WBY(POLARWB(+(*PI1.5)CAL)H)

(SETQAL_CAL(*180(/CALPI)))

(COMMAND"TEXT""J""ML"WBXHAL_CALPYPY)

(COMMAND"TEXT""J""ML"WBYHAL_CALPXPX)

;;(DEFUNDRELEV(AL01ALPWWECALWIPRE2)

(DEFUNDRELEV()

(IF(

(SETQEPL(POLARWEAL01(*WI0.5)))

(SETQEPR(POLARWECAL(*WI0.5)))

(SETQDHH(GETREAL"\nINPUTDESIGNELEVATION:

"))

(IF(=DHHNIL)

(PROMPT"\nNOELEVATIONAVAILABLENOW!

")

(PROGN

(SETQDH(RTOSDHH2PRE2))

(SETQCLA(GETVAR"CLAYER"))

(IF(/=CLA"ELEV")

(ELA)

(IF(

(COMMAND"TEXT""J""MR"EPLHAL_CALDH)

(COMMAND"TEXT""J""ML"EPRHAL_CALDH)

(DEFUNPCR()

(SETQTS0.0)

(SETVAR"OSMODE"33)

(SETQXT)

(WHILEX

(INITGET1)

(SETQPP1(GETPOINT"\nENTERTHEFIRSTPOINT:

"))

(SETQP1(OSNAPPP1"INT,END"))

(IF(/=P1NIL)

(SETQXNIL)

(PROGN(PROMPT"\nNOINTORENDFOUND,CONTINUE?

[Y/N]")

(INITGET1)

(SETQJ(GETSTRING))

(IF(OR(=J"Y")(=J"y"))

(PROGN(SETQP1PP1)(SETQXNIL))

(PROMPT"\nRESELECTPLEASE!

")

(SETQOP1P1)

(SETQP_NUMBER1)

(SETQXT)

(WHILEX

(SETQP_NUMBER(+1P_NUMBER))

(SETQPRO_1(STRCAT"\nTHE<"(ITOAP_NUMBER)))

(SETQPRO_1(STRCATPRO_1">POINT(ENTER=ENDSELECT:

)"))

(SETQP2(GETPOINTPRO_1))

(IF(/=P2NIL)

(PROGN(SETQSS

(*(+(CADRP1)(CADRP2))(-(CARP2)(CARP1))0.5)

(SETQTS(+TSSS))

(SETQP1P2)

(PROGN(SETQSS

(*(+(CADROP1)(CADRP1))(-(CAROP1)(CARP1))0.5)

(SETQTS(+TSSS))

(SETQXNIL)

(SETQS0(ABSTS))

(SETQTSS(RTOSS02PRE3))

(SETVAR"OSMODE"0)

(INITGET1)

(SETQW(GETPOINT"\nINPUTTEXTPOSITION:

"))

(COMMAND"TEXT"WH0.0(STRCAT"S="TSS))

(DEFUNETP()

(SETQXT)

(WHILEX

(PROMPT"\nSELECTEDGEOFTHEPOLYGON:

")

(SETQS_SET(SSGET))

(IF(=S_SETNIL)

(PROMPT"\nINVALIDSELECTION,RESELECTPLEASE!

")

(SETQXNIL)

(CA_AREA)

(DEFUNLTP()

(INITGET1)

(SETQURC(GETCORNER

(SETQDLC(GETPOINT"\nENTERFIRSTCORNER:

"))

"\nTHESECONDCORNER:

"

(SETQSSET(SSGET"W"DLCURC))

(COND

((OR(=ENTP"LINE")(=ENTP"ARC"))

(COMMAND"PEDIT"(SSGETP10)"Y""J"SSET"""X")

((=ENTP"POLYLINE")

(COMMAND"PEDIT"(SSGETP10)"J"SSET"""X")

(T(PROMPT"\nINVALIDENTITYFORPEDIT!

"))

(DEFUNRETP()

(SETQSET1(SSGETP10))

(SETQENAME(SSNAMESET10))

(SETQELIST(ENTGETENAME))

(SETQENTP(CDR(ASSOC0ELIST)))

(DEFUNPLTP()

(SETQENTP2(CDR(ASSOC70ELIST)))

(DEFUNPLS()

(PLTP)

(IF(=ENTP21)

(PROGN(REDRAWENAME3)

(PROMPT"\nIT'SACLOSEDPOLYLINE")

(S)

(PROGN

(REDRAWENAME3)

(PROMPT"\nIT'SNOTACLOSEDPLINE,TRYTOCLOSEIT!

")

(LTP)

(RETP)

(PLTP)

(IF(=ENTP21)

(PROGN(PROMPT"\nNOWITHASBEENCLOSED!

")

(S)

(PROGN(REDRAWENAME3)

(SETQX

(GETSTRING

(STRCAT

"\nCAN'TBECLOSEDAUTOMATICALLY,CALCULATEISTAREA?

"

"\n<'Y'FORYESANDANYOTHERKEYFORNO>"

(IF(OR(=X"Y")(=X"y"))

(S)

(PROMPT"\nTHISONEIGNORED,CALCULATENEXTPOLYGON!

")

(DEFUNS()

(COMMAND"AREA""E"(SSGETP10))

(SETQSS(GETVAR"AREA"))

(SETQS1(RTOSSS2PRE3))

(SETVAR"OSMODE"0)

(INITGET1)

(SETQPT(GETPOINT"\nINPUTTEXTPOSITION:

"))

(COMMAND"TEXT"PTH0.0(STRCAT"S="S1))

(DEFUNTHN()

(IF(/=B0NIL)

(PROGN

(SETQBI(RTOSB021))

(INITGET6)

(SETQ

B(GETREAL

(STRCAT"\nINPUTMAPSCALEFACTOR[1:

X*1000]/<"BI">")

(IF(=BNIL)

(SETQBB0)

(SETQB0B)

(PROGN

(INITGET7)

(SETQB(GETREAL"\nINPUTMAPSCALEFACTOR[1:

X*1000]"))

(SETQB0B)

(IF(/=CAL0NIL)

(PROGN

(SETQCAL1(RTOSCAL021))

(INITGET8)

(SETQCAL2(GETREAL

(STRCAT"\nINPUTTEXTROTATEANGLE[d]/<"CAL1">")

(IF(=CAL2NIL)

(SETQCAL(/(*PICAL0)180))

(PROGN

(SETQCAL(/(*PICAL2)180))

(SETQCAL0CAL2)

(PROGN(INITGET8)

(SETQCAL2(GETREAL"\nINPUTTEXTROTATEANGLE[d]:

"))

(SETQCAL(/(*PICAL2)180))

(SETQCAL0CAL2)

(IF(/=HH0NIL)

(PROGN

(SETQHHI(RTOSHH021))

(INITGET6)

(SETQHH(GETREAL

(STRCAT"\nINPUTTEXTHEIGHT[mm]/<"HHI">")

(IF(=HHNIL)

(SETQHHHH0)

(SETQHH0HH)

(PROGN(INITGET7)

(SETQHH(GETREAL"\nINPUTTEXTHEIGHT[MM]:

"))

(SETQHH0HH)

(SETQH(*HHB))

(IF(=WFNIL)

(SETQWF1.0)

(SETQWI(*HWF))

(DEFUNPRE1N()

(IF(/=PRE10NIL)

(PROGN(SETQPRE1I(RTOSPRE1020))

(INITGET4)

(SETQ

PRE1(GETINT

(STRCAT"\nINPUTDECIMALPLACEFORX-YCOORDINATE<"

PRE1I

">:

"

(IF(=PRE1NIL)

(SETQPRE1PRE10)

(SETQPRE10PRE1)

(PROGN(INITGET5)

(SETQPRE1

(GETINT"\nINPUTDECIMALPLACEFORX-YCOORDINATE:

")

(SETQPRE10PRE1)

(DEFUNPRE2N()

(IF(/=PRE20NIL)

(PROGN(SETQPRE2I(RTOSPRE2020))

(INITGET4)

(SETQPRE2(GETINT

(STRCAT"\nINPUTDECIMALPLACEFORELEVATION<"

PRE2I

">:

"

(IF(=PRE2NIL)

(SETQPRE2PRE20)

(SETQPRE20PRE2)

(PROGN(INITGET5)

(SETQPRE2

(GETINT"\nINPUTDECIMALPLACEFORELEVATION:

")

(SETQPRE20PRE2)

(DEFUNPRE3N()

(IF(/=PRE30NIL)

(PROGN(SETQPRE3I(RTOSPRE3020))

(INITGET4)

(SETQPRE3

(GETINT

(STRCAT"\nINPUTDECIMALPLACEFORAREAIDENTIFICATION<"

PRE3I

">:

"

(IF(=PRE3NIL)

(SETQPRE3PRE30)

(SETQPRE30PRE3)

(PROGN(INITGET5)

(SETQPRE3

(GETINT"\nINPUTDECIMALPLACEFORAREAIDENTIFICATION:

")

(SETQPRE30PRE3)

(DEFUNXYZ()

(THN)

(PRE1N)

(PRE2N)

(SETQXXT)

(WHILEXX

(INITGET"ExitContinue")

(SETQZZ(GETKWORD"\nExit/Continue?

/"))

(COND

((=ZZ"Exit")

(PROMPT"\nEXITTOMAINSELECTIONS")

(SETQXXNIL)

(PRINC)

((OR(=ZZNIL)(=ZZ"Continue"))

(SETQCLA(GETVAR"CLAYER"))

(IF(/=CLA"CORD")

(XYLA)

(IDPT)

;;

(TEXT_P)

;;(MAX_XYWIPXPYL)

(MAX_XY)

;;(DRLINCALPWL)

(DRLIN)

;;(DRCORDAL01ALPWHCALPXPXPYPY)

(DRCORD)

;;(DRELEVAL01ALPWWECALWIPRE2)

(DRELEV)

(DEFUNFIX()

(THN)

(PRE1N)

(PRE2N)

(SETQXX2T)

(WHILEXX2

(SETQXX3NIL)

(IDPT)

(ALN1)

(SETQXXT)

(WHILEXX

(INITGET"HelpExitCOntinueCHangepar")

(SETQZZ(GETKWORD"\nHelp/Exit/COntinue/CHangepar?

/"))

(COND

((=ZZ"Help")

(TEXTPAGE)

(PROMPT

"\nENTERAVALUEORAPOINTTODEFINETHELENGTHOFOBLIQUALBASELINEAND"

(PROMPT

"\nENTERAPOINTINONEOFTHEFOURQAUDRANTSTOSELECTTHEDIRECTIONOFTHE"

(PROMPT

"\nOBLIQUALBASELINEORPRESS'ENTER'TOSELECTTHEDEFAULTVALUES."

((=ZZ"Exit")

(PROMPT"\nEXITTOMAINSELECTIONS")

(SETQXXNIL

XX2NIL

(PRINC)

((OR(=ZZNIL)(=ZZ"Continue"))

(SETQCLA(GETVAR"CLAYER"))

(IF(/=CLA"CORD")

(XYLA)

(IF(=XX3T)

(IDPT)

(SETQXX3T)

(CPXY)

(ALN2)

(TBL)

(CORD)

(DE)

((=ZZ"CHangepar")(SETQXXNIL))

(DEFUNAE()

(ELA)

(THN)

(PRE2N)

(SETQXXT)

(WHILEXX

(INITGET"HelpExitContinue")

(SETQZZ(GETKWORD"\nHelp/Exit/Continue?

/"))

(COND

((=ZZ"Help")

(TEXTPAGE)

(PROMPT

"\nFIRSTSELECTTHEIDPOINT,THENSELECTTHEENDOFTHE"

(PROMPT"\nHORIZONTALBASELINE;")

((=ZZ"Exit")

(PROMPT"\nEXITTOMAINSELECTIONS")

(SETQXXNIL)

(PRINC)

((OR(=ZZNIL)(=ZZ"Continue"))

(SETVAR"OSMODE"1)

(SETQPP(GETPOINT"\nSELECTTHEIDPOINT:

"))

(SETQP(OSNAPPP"END"))

(SETQPXX(CARP))

(SETQXT)

(WHILEX

(SETQWEE(GETPOINT"\nINPUTTHETEXTPOSITION:

"))

(SETQWE(OSN

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1