Jump to content

Measure line lengths


Recommended Posts

Hi.

 

I am having trouble with some coding I found elsewhere. I would appreciate it if anyone could give me an insight as to how adjust the coding so that it works.

 


[url="http://www.surveydrawing.net/wp-content/uploads/2012/06/mlin1.png"][img=http://www.surveydrawing.net/wp-content/uploads/2012/06/mlin1.png][/url]
[color=#ff0000] ([/color][color=#0000ff]vl-load-com[/color][color=#ff0000])[/color][color=#ff0000]([/color][color=#0000ff]defun[/color] c:MLin[color=#ff0000]()[/color]
[color=#ff0000] ([/color][color=#0000ff]setvar[/color][color=#ff00ff] “luprec”[/color] [color=#008000]2[/color][color=#ff0000])[/color]
[color=#ff0000] ([/color]Cre_Lay[color=#ff00ff] “dist”[/color] [color=#008000]6[/color][color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] disttot [color=#008000]0[/color][color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] lines[color=#ff0000]([/color][color=#0000ff]ssget[/color] [color=#ff0000]([/color][color=#0000ff]list[/color] [color=#ff0000]([/color][color=#0000ff]cons[/color] [color=#008000]0[/color][color=#ff00ff] “line,pline,lwpolyline”[/color][color=#ff0000]))))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] ctr [color=#008000]0[/color][color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]if[/color] [color=#ff0000]([/color][color=#0000ff]/=[/color] lines [color=#0000ff]nil[/color][color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]progn[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] len[color=#ff0000]([/color][color=#0000ff]sslength[/color] lines[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]repeat[/color] len
[color=#ff0000] ([/color][color=#0000ff]setq[/color] ent[color=#ff0000]([/color][color=#0000ff]ssname[/color] lines ctr[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] pntList[color=#ff0000]([/color]ReadPline ent[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] ptCntr [color=#008000]0[/color][color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]repeat[/color] [color=#ff0000]([/color][color=#0000ff]1-[/color] [color=#ff0000]([/color][color=#0000ff]length[/color] pntList[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] fpoint[color=#ff0000]([/color][color=#0000ff]nth[/color] ptCntr pntList[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] epoint[color=#ff0000]([/color][color=#0000ff]nth[/color] [color=#ff0000]([/color][color=#0000ff]1+[/color] ptCntr[color=#ff0000])[/color] pntList[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] thr[color=#ff0000]([/color][color=#0000ff]distance[/color] fpoint epoint))
[color=#ff0000] ([/color][color=#0000ff]setq[/color] fou[color=#ff0000]([/color][color=#0000ff]angle[/color] fpoint epoint[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] ang[color=#ff0000]([/color][color=#0000ff]*[/color] [color=#ff0000]([/color][color=#0000ff]/[/color] fou [color=#0000ff]pi[/color][color=#ff0000])[/color] [color=#008000]180[/color][color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]if[/color] [color=#ff0000]([/color][color=#0000ff]and[/color] [color=#ff0000]([/color][color=#0000ff]>=[/color] ang [color=#008000]90[/color][color=#ff0000])[/color] [color=#ff0000]([/color][color=#0000ff]<=[/color] ang [color=#008000]270[/color][color=#ff0000]))[/color] [color=#ff0000]([/color][color=#0000ff]setq [/color]ang[color=#ff0000]([/color][color=#0000ff]rtos[/color] [color=#ff0000]([/color][color=#0000ff]+[/color] ang [color=#008000]180[/color][color=#ff0000])))[/color] [color=#ff0000]([/color][color=#0000ff]setq[/color] ang[color=#ff0000]([/color][color=#0000ff]rtos[/color] ang)))
[color=#ff0000] ([/color][color=#0000ff]setq[/color] txt_ins[color=#ff0000]([/color]MidP fpoint epoint[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]command[/color] [color=#ff00ff]“._Text” “j” “bc” [color=#000000]txt_ins[/color] “1.75″ [/color]ang [color=#ff0000]([/color][color=#0000ff]rtos[/color] thr[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]command[/color] [color=#ff00ff]“._Change”[/color] [color=#ff0000]([/color][color=#0000ff]entlast[/color][color=#ff0000])[/color][color=#ff00ff] “” “p” “la” “dist” “”[/color][color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] disttot[color=#ff0000]([/color][color=#0000ff]+[/color] disttot [color=#ff0000]([/color][color=#0000ff]distance[/color] fpoint epoint[color=#ff0000])))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] ptCntr[color=#ff0000]([/color][color=#0000ff]1+[/color] ptCntr[color=#ff0000]))[/color]
[color=#ff0000] )[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] ctr[color=#ff0000]([/color][color=#0000ff]1+[/color] ctr[color=#ff0000]))[/color]
[color=#ff0000] )[/color]
[color=#ff0000] ([/color][color=#0000ff]princ[/color] [color=#ff0000]([/color][color=#0000ff]strcat[/color][color=#ff00ff] “\nTotal distance :”[/color] [color=#ff0000]([/color][color=#0000ff]rtos[/color] disttot [color=#008000]2 4[/color][color=#ff0000])))[/color]
[color=#ff0000] )[/color]
[color=#ff0000] )[/color]
[color=#ff0000] ([/color][color=#0000ff]princ[/color][color=#ff0000])[/color]
[color=#ff0000])[/color]
[color=#ff0000]([/color][color=#0000ff]princ[/color][color=#ff00ff] “\nType \”MLin\” to Measure each Segment of the Polyline.”)[/color] [color=#ff0000]([/color][color=#0000ff]princ[/color][color=#ff0000])[/color][color=#800000]; Function to find the mid point of two points.[/color]
[color=#ff0000]([/color][color=#0000ff]defun[/color] MidP[color=#ff0000]([/color]midp_fpo midp_spo[color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] midp_mpo[color=#ff0000]([/color][color=#0000ff]list[/color] [color=#ff0000]([/color][color=#0000ff]/[/color] [color=#ff0000]([/color][color=#0000ff]+[/color] [color=#ff0000]([/color][color=#0000ff]car[/color] midp_fpo[color=#ff0000])[/color] [color=#ff0000]([/color][color=#0000ff]car[/color] midp_spo[color=#ff0000]))[/color] 2) [color=#ff0000]([/color][color=#0000ff]/[/color] [color=#ff0000]([/color][color=#0000ff]+[/color] [color=#ff0000]([/color][color=#0000ff]cadr[/color] midp_fpo[color=#ff0000])[/color] [color=#ff0000]([/color][color=#0000ff]cadr[/color] midp_spo[color=#ff0000]))[/color] 2[color=#ff0000])))[/color]
[color=#ff0000])[/color][color=#800000];Function to Create a Layer with given color.[/color]
[color=#ff0000]([/color][color=#0000ff]defun[/color] Cre_Lay[color=#ff0000]([/color]lay_layn lay_laycol[color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]if[/color] [color=#ff0000]([/color][color=#0000ff]=[/color] [color=#ff0000]([/color][color=#0000ff]tblsearch[/color] [color=#ff00ff]“Layer”[/color] lay_layn[color=#ff0000])[/color] [color=#0000ff]nil[/color][color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]command[/color][color=#ff00ff] “._Layer” “n”[/color] lay_layn[color=#ff00ff] “c”[/color] lay_laycol lay_layn[color=#ff00ff] “”[/color][color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]command[/color][color=#ff00ff] “._Layer” “t”[/color] lay_layn[color=#ff00ff] “on”[/color] lay_layn[color=#ff00ff] “c” [/color]lay_laycol lay_layn[color=#ff00ff] “”[/color][color=#ff0000])[/color]
[color=#ff0000] )[/color]
[color=#ff0000] ([/color][color=#0000ff]princ[/color][color=#ff0000])[/color]
[color=#ff0000])[/color][color=#800000];Function to Read Vertices of Selected Lines.[/color]
[color=#ff0000]([/color][color=#0000ff]defun[/color] ReadPline[color=#ff0000]([/color]imp_Ent[color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] glb_obj[color=#ff0000]([/color][color=#0000ff]vlax-ename->vla-object[/color] imp_Ent[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] glb_PntCnt[color=#ff0000]([/color][color=#0000ff]vlax-curve-getEndParam[/color] glb_obj[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] returnPTList ‘[color=#ff0000]())[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] ptCntr [color=#008000]1[/color][color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] glb_oName[color=#ff0000]([/color][color=#0000ff]vlax-get-property [color=#000000]glb[/color][/color]_obj ‘ObjectName[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] glb_OClosed [color=#0000ff]ni[/color][color=#ff0000][color=#0000ff]l[/color])[/color]
[color=#ff0000] ([/color][color=#0000ff]if[/color] [color=#ff0000]([/color][color=#0000ff]=[/color] glb_oName[color=#ff00ff] “AcDbLine”[/color][color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]progn[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] glb_EnDetails[color=#ff0000]([/color][color=#0000ff]entget[/color] imp_Ent[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] big_Point3d[color=#ff0000]([/color][color=#0000ff]cdr[/color] [color=#ff0000]([/color][color=#0000ff]assoc[/color] [color=#008000]10[/color] glb_EnDetails[color=#ff0000])))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] end_Point3d[color=#ff0000]([/color][color=#0000ff]cdr[/color] [color=#ff0000]([/color][color=#0000ff]assoc[/color] [color=#008000]11[/color] glb_EnDetails[color=#ff0000])))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] returnPTList[color=#ff0000]([/color][color=#0000ff]append[/color] returnPTList [color=#ff0000]([/color][color=#0000ff]list [/color]big_Point3d[color=#ff0000])))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] returnPTList[color=#ff0000]([/color][color=#0000ff]append[/color] returnPTList [color=#ff0000]([/color][color=#0000ff]list [/color]end_point3d[color=#ff0000])))[/color]
[color=#ff0000] )[/color]
[color=#ff0000] ([/color][color=#0000ff]progn[/color]
[color=#ff0000] ([/color]setq glb_OClosed[color=#ff0000]([/color][color=#0000ff]vlax-curve-isClosed[/color] glb_obj[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] glb_2dDist 0[color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] old_Point [color=#0000ff]nil[/color][color=#ff0000])[/color]
[color=#ff0000] ([/color][color=#0000ff]repeat[/color] [color=#ff0000]([/color][color=#0000ff]1+[/color] [color=#ff0000]([/color][color=#0000ff]fix[/color] glb_PntCnt[color=#ff0000]))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] cur_Point3d[color=#ff0000]([/color]vlax-curve getPointAtParam glb_obj [color=#ff0000]([/color][color=#0000ff]1-[/color] ptCntr[color=#ff0000])))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] returnPTList[color=#ff0000]([/color][color=#0000ff]append[/color] returnPTList [color=#ff0000]([/color][color=#0000ff]list [/color]cur_Point3d[color=#ff0000])))[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] ptCntr[color=#ff0000]([/color][color=#0000ff]1+[/color] ptCntr[color=#ff0000]))[/color]
[color=#ff0000] )[/color]
[color=#ff0000] )[/color]
[color=#ff0000] )[/color]
[color=#ff0000] ([/color][color=#0000ff]setq[/color] return returnPTList)
[color=#ff0000])[/color]
[/Code]

 

Thanks in advance for your assistance.

Link to post
Share on other sites

Here's the error message I get when running this code

 

Command: mlin

._Layer

Current layer: "3 - Lockers Suggested"

Enter an option

[?/Make/Set/New/Rename/ON/OFF/Color/Ltype/LWeight/TRansparency/MATerial/Plot/Fre

eze/Thaw/LOck/Unlock/stAte/Description/rEconcile]: t

Enter name list of layer(s) to thaw: dist Enter an option

[?/Make/Set/New/Rename/ON/OFF/Color/Ltype/LWeight/TRansparency/MATerial/Plot/Fre

eze/Thaw/LOck/Unlock/stAte/Description/rEconcile]: on

Enter name list of layer(s) to turn on: dist Enter an option

[?/Make/Set/New/Rename/ON/OFF/Color/Ltype/LWeight/TRansparency/MATerial/Plot/Fre

eze/Thaw/LOck/Unlock/stAte/Description/rEconcile]: c

New color [Truecolor/COlorbook] : 6

Enter name list of layer(s) for color 6 (magenta) : dist

Enter an option

[?/Make/Set/New/Rename/ON/OFF/Color/Ltype/LWeight/TRansparency/MATerial/Plot/Fre

eze/Thaw/LOck/Unlock/stAte/Description/rEconcile]:

Command:

Select objects: 1 found

Select objects:

Error: no function definition: READPLINE; error: An error has occurred inside

the *error* functionAutoCAD variable setting rejected: CLAYER nil

 

 

 

Once I type the command MLIN it then asks to slect objects and then exits from there giving the message above.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...