<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: code to create 3DPOLY from 3D LINes in Visual LISP, AutoLISP and General Customization Forum</title>
    <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14233821#M172332</link>
    <description>&lt;P&gt;How about a different approach?&amp;nbsp; Jut trace around the Lines, starting from any one of them, adding the far end of each subsequent Line found in relation to the previous one, in a 3DPOLY command, until you get back to the beginning:&lt;/P&gt;&lt;LI-CODE lang="general"&gt;(defun C:L23DP ; Lines {to} 3DPolyline
  (/ lineA line1 p1 p2 p3 ss)
  (setq
    lineA (car (entsel "\nSelect one of the Lines to join into a 3D Polyline: ")); starting Line
    line1 lineA; working first Line
  ); setq
  (command "_.3DPOLY" ; start 3DPoly command
    (setq p1 (cdr (assoc 10 (entget line1)))); working first Line's start
    (setq p2 (cdr (assoc 11 (entget line1)))); working first Line's end
  ); leave in 3DPoly command
  (while
    (and
      (setq
        p3 p2 ; previous point for reference
        ss (ssget "_F" (list p2 p1) '((0 . "LINE"))); incl. working Line &amp;amp; Lines meeting both ends
        line1 (ssname ss 0); first in selection [meets p2 end of working Line]
      ); setq
      (not (equal line1 lineA)); not back to beginning yet
    ); and
    (setq
      p1 (cdr (assoc 10 (entget line1)))
      p2 ; far end from previous Line
        (if (equal p1 p3 1e-6) ; is this the next Line's start?
          (cdr (assoc 11 (entget line1))); then -- use its end
          p1 ; else -- use its start
        ); if
      p3 p2
    ); setq
    (command p2); feed to 3DPoly command
  ); while
  (command "_undo" "_close"); back off latest and Close [end 3DPOLY]
  (prin1)
); defun&lt;/LI-CODE&gt;&lt;P&gt;Comments:&lt;/P&gt;&lt;P&gt;You don't select all the Lines -- just one of them.&lt;/P&gt;&lt;P&gt;No&lt;FONT face="courier new,courier"&gt;&lt;STRONG&gt; (vl....)&lt;/STRONG&gt; &lt;/FONT&gt;or&lt;FONT face="courier new,courier"&gt;&lt;STRONG&gt; (function)&lt;/STRONG&gt; &lt;/FONT&gt;functions.&lt;/P&gt;&lt;P&gt;It doesn't matter what the drawn order of the Lines was, nor in which direction each was drawn. &lt;FONT color="#0000FF"&gt;*&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;It counts on the set of Lines being closed as you have said they always will be.&lt;/P&gt;&lt;P&gt;It works in the WCS, but could probably be enhanced to work in a non-World UCS.&lt;/P&gt;&lt;P&gt;It draws the 3DPolyline on the current Layer with all current property settings.&lt;/P&gt;&lt;P&gt;If you have running Osnap on, as long as ENDpoint is among the modes, it will work without the need to turn them off.&amp;nbsp; If you might have [for example] MIDpoint but &lt;EM&gt;not&lt;/EM&gt; also ENDpoint or INTersection or NEArest, it will be misled.&lt;/P&gt;&lt;P&gt;It finds three Lines based on a Fence using the "current" one's endpoints, and the setting of line1 [at line 16] seems to be reliable -- the Line off the starting end of the Fence always seems to be the first in the resulting selection -- but I'm not positive that it will always be.&amp;nbsp; [Some other possible selection approaches could get incorrect results depending on the Pickbox size and/or Zoom level, but this seems unaffected by those.]&lt;/P&gt;&lt;P&gt;In trials in your sample drawing, it &lt;EM&gt;sometimes&amp;nbsp;&lt;/EM&gt;ran into a problem down near the bottom -- some kind of backtracking on itself, always at the same location -- but it &lt;EM&gt;didn't&lt;/EM&gt; always do it, and I haven't been able to figure out what could be causing it [e.g. I couldn't find my suspicions of a non-meeting of Line ends, or an overlap, in the area].&lt;/P&gt;&lt;P&gt;It could easily be enhanced to remove the original Lines.&lt;/P&gt;&lt;P&gt;[And it could use some of the regular enhancements -- command echo suppression, Osnap and blip controls, Layer and other property settings, etc.]&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;FONT color="#0000FF"&gt;* EDIT:&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp; In further testing, I'm sometimes running into more of those hold-ups, which may be related to drawn direction.&amp;nbsp; I'll keep trying to figure out what's going on.&lt;/P&gt;</description>
    <pubDate>Fri, 14 Aug 2026 16:51:27 GMT</pubDate>
    <dc:creator>Kent1Cooper</dc:creator>
    <dc:date>2026-08-14T16:51:27Z</dc:date>
    <item>
      <title>code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227065#M172224</link>
      <description>&lt;P&gt;I have a routine that creates a series of 3d LINEs for the boundary of a group of 3DFACEs.&lt;/P&gt;&lt;P&gt;Does anyone have an autoLisp (not visual lisp, I am using R14) that would join the 3D LINEs into&amp;nbsp; a 3D POLYINE?&amp;nbsp; The 3D LINEs are not in any order.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="boundary.jpg" style="width: 999px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1655378i370026531A271622/image-size/large?v=v2&amp;amp;px=999" role="button" title="boundary.jpg" alt="boundary.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 08 Aug 2026 19:49:23 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227065#M172224</guid>
      <dc:creator>autoid374ceb4990</dc:creator>
      <dc:date>2026-08-08T19:49:23Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227151#M172226</link>
      <description>&lt;P&gt;A couple of ideas, this expects that all the lines are in same direction and in sequence.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;(defun c:wow ( / ss lst ent pt)
(setq ss (ssget '((0 . "LINE"))))
(setq lst '())
(repeat (setq x (sslength ss))
  (setq ent (entget (ssname ss (setq x (1- x)))))
  (setq  lst (cons (cdr (assoc 10 ent)) lst))
)

(entmake '((0 . "POLYLINE") (70 . 9)))
(foreach pt lst (entmake (list '(0 . "VERTEX") '(70 . 32) (cons 10 pt))))
(entmake '((0 . "SEQEND")))

(princ)
)&lt;/LI-CODE&gt;&lt;P&gt;A good idea is post a sample dwg use say WBLOCK to export your 3d lines.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 08 Aug 2026 23:30:45 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227151#M172226</guid>
      <dc:creator>Sea-Haven</dc:creator>
      <dc:date>2026-08-08T23:30:45Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227167#M172227</link>
      <description>&lt;P&gt;Well the lines are not in the same direction and not in sequence, if you define sequence as created sequentially.&amp;nbsp; drawing attached.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:09:24 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227167#M172227</guid>
      <dc:creator>autoid374ceb4990</dc:creator>
      <dc:date>2026-08-09T00:09:24Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227181#M172228</link>
      <description>&lt;P&gt;It is unfortunate that you are stuck on almost 30 year old software. The JOIN command would be able to handle it in newer versions. Have you tried the PLJOIN Bonus tool to make sure it didnt work?&lt;/P&gt;
&lt;P&gt;Couldnt you just select all the lines, obtain the list of coordinates, sort that list and the remove duplicates and start the command feeding the filtered list into it?&amp;nbsp; Or, were those functions not available in R14?&amp;nbsp; It is very difficult to look at a task like this because it cant be tested.&amp;nbsp; Maybe it works similar to lisp in LT or in MAC, so someone with one of those software might be able to write a code and test it.&lt;/P&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:55:04 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227181#M172228</guid>
      <dc:creator>chriscowgill7373</dc:creator>
      <dc:date>2026-08-09T00:55:04Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227490#M172231</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/475424"&gt;@chriscowgill7373&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;It is unfortunate that you are stuck on almost 30 year old software. The JOIN command would be able to handle it in newer versions. Have you tried the PLJOIN Bonus tool to make sure it didnt work?&lt;/P&gt;&lt;P&gt;Couldnt you just select all the lines, obtain the list of coordinates, sort that list and the remove duplicates and start the command feeding the filtered list into it?&amp;nbsp; Or, were those functions not available in R14?&amp;nbsp; It is very difficult to look at a task like this because it cant be tested.&amp;nbsp; Maybe it works similar to lisp in LT or in MAC, so someone with one of those software might be able to write a code and test it.&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;You are probably correct.&amp;nbsp; I have found several PLJOIN type lisp routines, but of course they will not work with my old R14. Guess I will have to write my own.&lt;/P&gt;</description>
      <pubDate>Sun, 09 Aug 2026 12:57:00 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227490#M172231</guid>
      <dc:creator>autoid374ceb4990</dc:creator>
      <dc:date>2026-08-09T12:57:00Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227510#M172233</link>
      <description>&lt;P&gt;Here, try these 2 variants... First one should be much faster... &lt;STRIKE&gt;Untested though (quickly written)&lt;/STRIKE&gt;...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;(defun c:lins23dpoly ( / ss i lil lix liln li lii )
  (if (setq ss (ssget (list (cons 0 "LINE"))))
    (progn
      (repeat (setq i (sslength ss))
        (setq lil (cons (list (cdr (assoc 10 (setq lix (entget (ssname ss (setq i (1- i))))))) (cdr (assoc 11 lix))) lil))
      )
      (setq liln (cons (car lil) liln))
      (while (setq li (car lil))
        (setq lil (cdr lil))
        (setq lii (vl-some (function (lambda (x) (if (or (equal (cadr li) (car x) 1e-8) (equal (cadr li) (cadr x) 1e-8)) x))) lil))
        (cond
          ( (and lii (equal (cadr li) (car lii) 1e-8))
            (setq liln (cons lii liln) lil (cons lii (vl-remove lii lil)))
          )
          (  lii
            (setq liln (cons (reverse lii) liln) lil (cons (reverse lii) (vl-remove lii lil)))
          )
        )
      )
      (entmake (list (cons 0 "POLYLINE") (cons 70 9)))
      (foreach pt (mapcar (function car) liln)
        (entmake (list (cons 0 "VERTEX") (cons 70 32) (cons 10 pt)))
      )
      (entmake (list (cons 0 "SEQEND")))
    )
  )
  (princ)
)

(defun c:lins23dpoly-vanilla ( / _reverse _vl-some _vl-remove ss i lil lix liln li lii )

  (defun _reverse ( lst / r )
    (while lst
      (setq r (cons (car lst) r))
      (setq lst (cdr lst))
    )
    r
  )

  (defun _vl-some ( fun lst / func el r )
    (setq func (eval fun)) 
    (while (setq el (car lst))
      (if (setq r (func el))
        (setq lst nil)
      )
      (setq lst (cdr lst))
    )
    r
  )

  (defun _vl-remove ( el lst / e r )
    (while (setq e (car lst))
      (if (not (equal e el))
        (setq r (cons e r))
      )
      (setq lst (cdr lst))
    )
    (_reverse r)
  )

  (if (setq ss (ssget (list (cons 0 "LINE"))))
    (progn
      (repeat (setq i (sslength ss))
        (setq lil (cons (list (cdr (assoc 10 (setq lix (entget (ssname ss (setq i (1- i))))))) (cdr (assoc 11 lix))) lil))
      )
      (setq liln (cons (car lil) liln))
      (while (setq li (car lil))
        (setq lil (cdr lil))
        (setq lii (_vl-some (function (lambda (x) (if (or (equal (cadr li) (car x) 1e-8) (equal (cadr li) (cadr x) 1e-8)) x))) lil))
        (cond
          ( (and lii (equal (cadr li) (car lii) 1e-8))
            (setq liln (cons lii liln) lil (cons lii (_vl-remove lii lil)))
          )
          (  lii
            (setq liln (cons (_reverse lii) liln) lil (cons (_reverse lii) (_vl-remove lii lil)))
          )
        )
      )
      (entmake (list (cons 0 "POLYLINE") (cons 70 9)))
      (foreach pt (mapcar (function car) liln)
        (entmake (list (cons 0 "VERTEX") (cons 70 32) (cons 10 pt)))
      )
      (entmake (list (cons 0 "SEQEND")))
    )
  )
  (princ)
)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;HTH.&lt;/P&gt;&lt;P&gt;M.R.&lt;/P&gt;</description>
      <pubDate>Sun, 09 Aug 2026 18:00:02 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227510#M172233</guid>
      <dc:creator>marko_ribar</dc:creator>
      <dc:date>2026-08-09T18:00:02Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227563#M172234</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/940934"&gt;@marko_ribar&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;Here, try these 2 variants... First one should be much faster... Untested though (quickly written)...&lt;/P&gt;&lt;P&gt;HTH.&lt;/P&gt;&lt;P&gt;M.R.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I appreciate the effort, but as stated in my original post,&amp;nbsp; I am usingR14, NO VL functions.&amp;nbsp; The AI websites have the same reaction.&lt;/P&gt;</description>
      <pubDate>Sun, 09 Aug 2026 16:12:42 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227563#M172234</guid>
      <dc:creator>autoid374ceb4990</dc:creator>
      <dc:date>2026-08-09T16:12:42Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227569#M172235</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/940934"&gt;@marko_ribar&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tested it and got&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="leeminardi_0-1786292297671.png" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1655451i33994829061CF33C/image-size/medium?v=v2&amp;amp;px=400" role="button" title="leeminardi_0-1786292297671.png" alt="leeminardi_0-1786292297671.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 09 Aug 2026 16:20:26 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227569#M172235</guid>
      <dc:creator>leeminardi</dc:creator>
      <dc:date>2026-08-09T16:20:26Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227602#M172236</link>
      <description>&lt;P&gt;Thanks for reporting bug... Now fixed...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;M.R.&lt;/P&gt;</description>
      <pubDate>Sun, 09 Aug 2026 18:00:49 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227602#M172236</guid>
      <dc:creator>marko_ribar</dc:creator>
      <dc:date>2026-08-09T18:00:49Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227655#M172237</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/940934"&gt;@marko_ribar&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;Here, try these 2 variants... First one should be much faster... &lt;STRIKE&gt;Untested though (quickly written)&lt;/STRIKE&gt;...&lt;/P&gt;&lt;P&gt;HTH.&lt;/P&gt;&lt;P&gt;M.R.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I tried the vanilla version in R14.&amp;nbsp; Seems to work correctly down to this line:&lt;/P&gt;&lt;P&gt;(setq lii (_vl-some (function (lambda (x) (if (or (equal (cadr li) (car x) 1e-8) (equal (cadr li) (cadr x) 1e-8)) x))) lil))&lt;/P&gt;&lt;P&gt;Gives me: "ACAD error: null function"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 09 Aug 2026 21:31:19 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227655#M172237</guid>
      <dc:creator>autoid374ceb4990</dc:creator>
      <dc:date>2026-08-09T21:31:19Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227778#M172239</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/940934"&gt;@marko_ribar&lt;/a&gt;&amp;nbsp;worked fine in Bricscad, is the problem (_vl-some which may not be in R14 being a VL function.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My biggest suggestion would be maybe look at upgrading software to something more current, Bricscad Lite has lisp. There are others.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="SeaHaven_0-1786328399635.png" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1655461iFA8553905E9A3E3A/image-size/medium?v=v2&amp;amp;px=400" role="button" title="SeaHaven_0-1786328399635.png" alt="SeaHaven_0-1786328399635.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 10 Aug 2026 02:20:27 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227778#M172239</guid>
      <dc:creator>Sea-Haven</dc:creator>
      <dc:date>2026-08-10T02:20:27Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227852#M172240</link>
      <description>&lt;P&gt;Here, I changed just slightly (_vl-some) function and line with (_vl-some) in routine body... It worked on my BricsCAD...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;(defun c:lins23dpoly-vanilla ( / _reverse _vl-some _vl-remove ss i lil lix liln li lii )

  (defun _reverse ( lst / r )
    (while lst
      (setq r (cons (car lst) r))
      (setq lst (cdr lst))
    )
    r
  )

  (defun _vl-some ( fun lst / el r )
    (while (setq el (car lst))
      (if (apply fun (list el))
        (setq r el lst nil)
      )
      (setq lst (cdr lst))
    )
    r
  )

  (defun _vl-remove ( el lst / e r )
    (while (setq e (car lst))
      (if (not (equal e el))
        (setq r (cons e r))
      )
      (setq lst (cdr lst))
    )
    (_reverse r)
  )

  (if (setq ss (ssget (list (cons 0 "LINE"))))
    (progn
      (repeat (setq i (sslength ss))
        (setq lil (cons (list (cdr (assoc 10 (setq lix (entget (ssname ss (setq i (1- i))))))) (cdr (assoc 11 lix))) lil))
      )
      (setq liln (cons (car lil) liln))
      (while (setq li (car lil))
        (setq lil (cdr lil))
        (setq lii (_vl-some (function (lambda (x) (or (equal (cadr li) (car x) 1e-8) (equal (cadr li) (cadr x) 1e-8)))) lil))
        (cond
          ( (and lii (equal (cadr li) (car lii) 1e-8))
            (setq liln (cons lii liln) lil (cons lii (_vl-remove lii lil)))
          )
          (  lii
            (setq liln (cons (_reverse lii) liln) lil (cons (_reverse lii) (_vl-remove lii lil)))
          )
        )
      )
      (entmake (list (cons 0 "POLYLINE") (cons 70 9)))
      (foreach pt (mapcar (function car) liln)
        (entmake (list (cons 0 "VERTEX") (cons 70 32) (cons 10 pt)))
      )
      (entmake (list (cons 0 "SEQEND")))
    )
  )
  (princ)
)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;HTH.&lt;/P&gt;&lt;P&gt;M.R.&lt;/P&gt;</description>
      <pubDate>Mon, 10 Aug 2026 11:54:41 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14227852#M172240</guid>
      <dc:creator>marko_ribar</dc:creator>
      <dc:date>2026-08-10T11:54:41Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14228371#M172246</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/940934"&gt;@marko_ribar&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;Here, I changed just slightly (_vl-some) function and line with (_vl-some) in routine body... It worked on my BricsCAD...&lt;/P&gt;&lt;P&gt;HTH.&lt;/P&gt;&lt;P&gt;M.R.&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Still getting "null function" at this line:&lt;/P&gt;&lt;P&gt;(setq lii (_vl-some (function (lambda (x) (or (equal (cadr li) (car x) 1e-8) (equal (cadr li) (cadr x) 1e-8)))) lil))&lt;/P&gt;&lt;P&gt;Not getting to the "_vl-some" routine.&lt;/P&gt;&lt;P&gt;I am no expert lisp programmer, but could it be that the "function" call is not supported in my old R14?&lt;/P&gt;&lt;P&gt;Don't worry about this problem.&amp;nbsp; I will write a "C" program that works in R14.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 10 Aug 2026 12:42:51 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14228371#M172246</guid>
      <dc:creator>autoid374ceb4990</dc:creator>
      <dc:date>2026-08-10T12:42:51Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14228401#M172247</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/11054766"&gt;@autoid374ceb4990&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/940934"&gt;@marko_ribar&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;Here, I changed just slightly (_vl-some) function and line with (_vl-some) in routine body... It worked on my BricsCAD...&lt;/P&gt;&lt;P&gt;HTH.&lt;/P&gt;&lt;P&gt;M.R.&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Still getting "null function" at this line:&lt;/P&gt;&lt;P&gt;(setq lii (_vl-some (function (lambda (x) (or (equal (cadr li) (car x) 1e-8) (equal (cadr li) (cadr x) 1e-8)))) lil))&lt;/P&gt;&lt;P&gt;Not getting to the "_vl-some" routine.&lt;/P&gt;&lt;P&gt;I am no expert lisp programmer, but could it be that the "function" call is not supported in my old R14?&lt;/P&gt;&lt;P&gt;Don't worry about this problem.&amp;nbsp; I will write a "C" program that works in R14.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;That is possible... Your AutoCAD is too old, but I prepared this mod. that may succeed... Please, test it now... It also worked on my BricsCAD...&lt;/P&gt;&lt;LI-CODE lang="general"&gt;(defun c:lins23dpoly-vanilla-foo ( / _reverse _foo _vl-remove ss i lil lix liln li lii )

  (defun _reverse ( lst / r )
    (while lst
      (setq r (cons (car lst) r))
      (setq lst (cdr lst))
    )
    r
  )

  (defun _foo ( li lst / el r )
    (while (setq el (car lst))
      (if (or (equal (cadr li) (car el) 1e-8) (equal (cadr li) (cadr el) 1e-8))
        (setq r el lst nil)
      )
      (setq lst (cdr lst))
    )
    r
  )

  (defun _vl-remove ( el lst / e r )
    (while (setq e (car lst))
      (if (not (equal e el))
        (setq r (cons e r))
      )
      (setq lst (cdr lst))
    )
    (_reverse r)
  )

  (if (setq ss (ssget (list (cons 0 "LINE"))))
    (progn
      (repeat (setq i (sslength ss))
        (setq lil (cons (list (cdr (assoc 10 (setq lix (entget (ssname ss (setq i (1- i))))))) (cdr (assoc 11 lix))) lil))
      )
      (setq liln (cons (car lil) liln))
      (while (setq li (car lil))
        (setq lil (cdr lil))
        (setq lii (_foo li lil))
        (cond
          ( (and lii (equal (cadr li) (car lii) 1e-8))
            (setq liln (cons lii liln) lil (cons lii (_vl-remove lii lil)))
          )
          (  lii
            (setq liln (cons (_reverse lii) liln) lil (cons (_reverse lii) (_vl-remove lii lil)))
          )
        )
      )
      (entmake (list (cons 0 "POLYLINE") (cons 70 9)))
      (foreach pt (mapcar (function car) liln)
        (entmake (list (cons 0 "VERTEX") (cons 70 32) (cons 10 pt)))
      )
      (entmake (list (cons 0 "SEQEND")))
    )
  )
  (princ)
)&lt;/LI-CODE&gt;&lt;P&gt;HTH.&lt;/P&gt;&lt;P&gt;M.R.&lt;/P&gt;</description>
      <pubDate>Mon, 10 Aug 2026 13:06:46 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14228401#M172247</guid>
      <dc:creator>marko_ribar</dc:creator>
      <dc:date>2026-08-10T13:06:46Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14228558#M172250</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/940934"&gt;@marko_ribar&lt;/a&gt;&amp;nbsp;wrote:&lt;P&gt;That is possible... Your AutoCAD is too old, but I prepared this mod. that may succeed... Please, test it now... It also worked on my BricsCAD...&lt;/P&gt;&lt;P&gt;HTH.&lt;/P&gt;&lt;P&gt;M.R.&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Tried it, same error.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And for everyone that has suggested upgrading my AutoCAD - NOT going to do that. I am a retired civil engineer and land surveyor and I wrote all the software starting with AC 9 that I used in my business.&amp;nbsp; I even still have an old HP 7580B pen plotter.&amp;nbsp; Got tired of having to buy a new compiler every time AutoCAD upgraded, plus I did not like their "lend-lease" pricing policy.&amp;nbsp; End rant.&lt;/P&gt;</description>
      <pubDate>Mon, 10 Aug 2026 14:44:15 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14228558#M172250</guid>
      <dc:creator>autoid374ceb4990</dc:creator>
      <dc:date>2026-08-10T14:44:15Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14229092#M172263</link>
      <description>&lt;P&gt;I run lisp code I wrote back in the 80's on current Acad and Bricscad, with no code changes. You refer to compiler did you also do some ADS coding ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Bricscad can be purchased as perpetual.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 11 Aug 2026 00:18:59 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14229092#M172263</guid>
      <dc:creator>Sea-Haven</dc:creator>
      <dc:date>2026-08-11T00:18:59Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14229604#M172274</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/6254908"&gt;@Sea-Haven&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;I run lisp code I wrote back in the 80's on current Acad and Bricscad, with no code changes. You refer to compiler did you also do some ADS coding ?&lt;/P&gt;&lt;P&gt;Bricscad can be purchased as perpetual.&amp;nbsp;&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;When I started in business I purchased an Apple II and started writing my business software in interpreted Basic.&amp;nbsp; Then Apple brought out the Macintosh, and you had to purchase a $6000 Lisa machine to program the Mac.&amp;nbsp; I switched to the IBM PC and converted all my Apple stuff to "C".&amp;nbsp; Been using it ever since, compiled the "C" code into ARX programs for R14.&lt;/P&gt;</description>
      <pubDate>Tue, 11 Aug 2026 12:52:53 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14229604#M172274</guid>
      <dc:creator>autoid374ceb4990</dc:creator>
      <dc:date>2026-08-11T12:52:53Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14229628#M172275</link>
      <description>&lt;P&gt;Try out my PEDIT3D&amp;nbsp;&lt;/P&gt;&lt;P&gt;Free download from&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.black-cad.de" target="_blank"&gt;www.black-cad.de&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Jochen&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 11 Aug 2026 13:07:40 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14229628#M172275</guid>
      <dc:creator>jochen2</dc:creator>
      <dc:date>2026-08-11T13:07:40Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14229637#M172276</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/19112981"&gt;@jochen2&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;Try out my PEDIT3D&amp;nbsp;&lt;/P&gt;&lt;P&gt;Free download from&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.black-cad.de" target="_blank" rel="noopener"&gt;www.black-cad.de&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Jochen&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Tried to load it.&amp;nbsp; Got a "Load failed' error.&amp;nbsp; Probably because I am using R14.&lt;/P&gt;</description>
      <pubDate>Tue, 11 Aug 2026 13:17:02 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14229637#M172276</guid>
      <dc:creator>autoid374ceb4990</dc:creator>
      <dc:date>2026-08-11T13:17:02Z</dc:date>
    </item>
    <item>
      <title>Re: code to create 3DPOLY from 3D LINes</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14230120#M172282</link>
      <description>&lt;P&gt;For those who have written code to do this, how about some pseudo code to explain the steps you used to convert the lines to a 3D POLY?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 11 Aug 2026 19:15:35 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/code-to-create-3dpoly-from-3d-lines/m-p/14230120#M172282</guid>
      <dc:creator>autoid374ceb4990</dc:creator>
      <dc:date>2026-08-11T19:15:35Z</dc:date>
    </item>
  </channel>
</rss>

