<?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: Lisp for T+G Boards (modifying existing lisp required) in Visual LISP, AutoLISP and General Customization Forum</title>
    <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13272657#M4148</link>
    <description>&lt;P&gt;Have a look at this can be used as a front end when doing multiple value inputs, note returns string values but use atof etc to convet to real or atoi for integer.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Example code at top of code. Can be used in any code. Replaces this and can set default values.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;boards_number (getint "\nEnter number of boards: ")
          board_thickness (getreal "\nEnter board_thickness: ")           ; 22
          tongue_thickness (getreal "\nEnter tongue thickness: ")   ;   6
          tongue_setback (getreal "\nEnter tongue setback: ")           ;   8
          tongue_length (getreal "\nEnter tongue_length: ")           ; 12
          boards_gap_chamfer (getreal "\nEnter boards_gap_chamfer: ")           ;   3&lt;/LI-CODE&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;LI-CODE lang="general"&gt;(setq boards_number (atoi (nth 0 ans))  ; 8
    board_thickness (atof (nth 1 ans))  ; 22
    tongue_thickness (atof (nth 2 ans)) ; 6
    tongue_setback (atof (nth 3 ans))   ; 8
    tongue_length (atof (nth 4 ans))    ; 12
    boards_gap_chamfer (atof (nth 5 ans))  ; 3
)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 21 Jan 2025 03:29:55 GMT</pubDate>
    <dc:creator>Sea-Haven</dc:creator>
    <dc:date>2025-01-21T03:29:55Z</dc:date>
    <item>
      <title>Lisp for T+G Boards (modifying existing lisp required)</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13272042#M4146</link>
      <description>&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;I have a lisp that someone was kind enough to do where it plots tounge and grooved boards&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I could ideally do with it being modified slightly&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have attached a sample drawing as to what I want to achieve&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Basically I need it to be able to ask if a bevel is required or not and whether a tongue is required on the ends or not&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So I have the options to draw as per the options on the left hand side of the attached (I have the option currently to draw as per the right hand side)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have attached the current lisp below&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This would be much appreciated&lt;/P&gt;</description>
      <pubDate>Mon, 20 Jan 2025 18:03:06 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13272042#M4146</guid>
      <dc:creator>paul9ZMBV</dc:creator>
      <dc:date>2025-01-20T18:03:06Z</dc:date>
    </item>
    <item>
      <title>Re: Lisp for T+G Boards (modifying existing lisp required)</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13272044#M4147</link>
      <description>&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;defun&lt;/SPAN&gt; &lt;SPAN&gt;c:t_g_board&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;/ &lt;/SPAN&gt;&lt;SPAN&gt;total_width_dim _redraw total_width boards_number tongue_thickness tongue_setback tongue_length tongue_overlap insertion_point &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; board_thickness boards_gap_chamfer one_board_width board_start_geom_list board_end_geom_list vertices_list&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;setq&lt;/SPAN&gt;&lt;SPAN&gt; total_width_dim (&lt;/SPAN&gt;&lt;SPAN&gt;car&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;entsel&lt;/SPAN&gt; &lt;SPAN&gt;"\nPick dimension for total width: "&lt;/SPAN&gt;&lt;SPAN&gt;))&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;_redraw (&lt;/SPAN&gt;&lt;SPAN&gt;redraw&lt;/SPAN&gt;&lt;SPAN&gt; total_width_dim &lt;/SPAN&gt;&lt;SPAN&gt;3&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;total_width (&lt;/SPAN&gt;&lt;SPAN&gt;cdr&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;assoc&lt;/SPAN&gt; &lt;SPAN&gt;42&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;entget&lt;/SPAN&gt;&lt;SPAN&gt; total_width_dim)))&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; boards_number (&lt;/SPAN&gt;&lt;SPAN&gt;getint&lt;/SPAN&gt; &lt;SPAN&gt;"\nEnter number of boards: "&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; board_thickness (&lt;/SPAN&gt;&lt;SPAN&gt;getreal&lt;/SPAN&gt; &lt;SPAN&gt;"\nEnter board_thickness: "&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;; 22&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tongue_thickness (&lt;/SPAN&gt;&lt;SPAN&gt;getreal&lt;/SPAN&gt; &lt;SPAN&gt;"\nEnter tongue thickness: "&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 6&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tongue_setback (&lt;/SPAN&gt;&lt;SPAN&gt;getreal&lt;/SPAN&gt; &lt;SPAN&gt;"\nEnter tongue setback: "&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 8&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tongue_length (&lt;/SPAN&gt;&lt;SPAN&gt;getreal&lt;/SPAN&gt; &lt;SPAN&gt;"\nEnter tongue_length: "&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;; 12&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; boards_gap_chamfer (&lt;/SPAN&gt;&lt;SPAN&gt;getreal&lt;/SPAN&gt; &lt;SPAN&gt;"\nEnter boards_gap_chamfer: "&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 3&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; insertion_point (&lt;/SPAN&gt;&lt;SPAN&gt;getpoint&lt;/SPAN&gt; &lt;SPAN&gt;"\nPick insertion point: "&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;insertion_point_list '((&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt; &lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;))&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;tongue_overlap (&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;tongue_length boards_gap_chamfer) &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;one_board_width (&lt;/SPAN&gt;&lt;SPAN&gt;/ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;total_width (&lt;/SPAN&gt;&lt;SPAN&gt;* &lt;/SPAN&gt;&lt;SPAN&gt;boards_gap_chamfer (&lt;/SPAN&gt;&lt;SPAN&gt;1- &lt;/SPAN&gt;&lt;SPAN&gt;boards_number))) boards_number)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;board_start_geom_list (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; one_board_width (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback)) &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;; 1&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; one_board_width (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) boards_gap_chamfer)) &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 2&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;one_board_width boards_gap_chamfer) (&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness)) &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 3&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; boards_gap_chamfer (&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness)) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; &amp;nbsp; &amp;nbsp; 4&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt; &lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) boards_gap_chamfer)) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 5&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt; &lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback)) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 6&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;tongue_length) (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback)) &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 7&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;tongue_length) (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback tongue_thickness)) &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 8&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt; &lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback tongue_thickness)) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 9&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt; &lt;SPAN&gt;0&lt;/SPAN&gt; &lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 10&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; one_board_width &lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 11&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; one_board_width (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback tongue_thickness)) &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 12&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;one_board_width tongue_overlap) (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback tongue_thickness)) &lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 1&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;one_board_width tongue_overlap boards_gap_chamfer) (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback tongue_thickness)) &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 2&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;one_board_width tongue_overlap boards_gap_chamfer) (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback)) &lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 3&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;one_board_width tongue_overlap) (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback)) &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 4&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; board_end_geom_list (&lt;/SPAN&gt;&lt;SPAN&gt;append&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;car&lt;/SPAN&gt;&lt;SPAN&gt; board_start_geom_list) &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;one_board_width tongue_length) (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback tongue_thickness))) &lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 13&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;one_board_width tongue_length) (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback))) &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 14&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;repeat&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;1- &lt;/SPAN&gt;&lt;SPAN&gt;boards_number) (&lt;/SPAN&gt;&lt;SPAN&gt;setq&lt;/SPAN&gt;&lt;SPAN&gt; insertion_point_list (&lt;/SPAN&gt;&lt;SPAN&gt;append&lt;/SPAN&gt;&lt;SPAN&gt; insertion_point_list (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;mapcar&lt;/SPAN&gt;&lt;SPAN&gt; '+ (&lt;/SPAN&gt;&lt;SPAN&gt;last&lt;/SPAN&gt;&lt;SPAN&gt; insertion_point_list) (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;+ &lt;/SPAN&gt;&lt;SPAN&gt;one_board_width boards_gap_chamfer) &lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;)))))) &amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;foreach&lt;/SPAN&gt;&lt;SPAN&gt; insertion (&lt;/SPAN&gt;&lt;SPAN&gt;vl-remove&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;last&lt;/SPAN&gt;&lt;SPAN&gt; insertion_point_list) insertion_point_list) &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;foreach&lt;/SPAN&gt;&lt;SPAN&gt; pline board_start_geom_list&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;vla-addlightweightpolyline&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;vla-get-block&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;vla-get-activelayout&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;vla-get-activedocument&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;vlax-get-acad-object&lt;/SPAN&gt;&lt;SPAN&gt;))))&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;vlax-safearray-fill&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;vlax-make-safearray&lt;/SPAN&gt; &lt;SPAN&gt;vlax-vbdouble&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;cons&lt;/SPAN&gt; &lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;length&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;setq&lt;/SPAN&gt;&lt;SPAN&gt; vertices_list &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;apply&lt;/SPAN&gt;&lt;SPAN&gt; 'append &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;mapcar&lt;/SPAN&gt;&lt;SPAN&gt; '(&lt;/SPAN&gt;&lt;SPAN&gt;lambda&lt;/SPAN&gt;&lt;SPAN&gt; (vertex) (&lt;/SPAN&gt;&lt;SPAN&gt;mapcar&lt;/SPAN&gt;&lt;SPAN&gt; '+ insertion_point insertion vertex)) &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;pline&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;vertices_list&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;vlax-put&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;vla-addlightweightpolyline&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;vla-get-block&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;vla-get-activelayout&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;vla-get-activedocument&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;vlax-get-acad-object&lt;/SPAN&gt;&lt;SPAN&gt;))))&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;vlax-safearray-fill&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;vlax-make-safearray&lt;/SPAN&gt; &lt;SPAN&gt;vlax-vbdouble&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;cons&lt;/SPAN&gt; &lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;length&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;setq&lt;/SPAN&gt;&lt;SPAN&gt; vertices_list &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;apply&lt;/SPAN&gt;&lt;SPAN&gt; 'append &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;mapcar&lt;/SPAN&gt;&lt;SPAN&gt; '(&lt;/SPAN&gt;&lt;SPAN&gt;lambda&lt;/SPAN&gt;&lt;SPAN&gt; (vertex) (&lt;/SPAN&gt;&lt;SPAN&gt;mapcar&lt;/SPAN&gt;&lt;SPAN&gt; '+ insertion_point &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;last&lt;/SPAN&gt;&lt;SPAN&gt; insertion_point_list) &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;vertex&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;board_end_geom_list&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;vertices_list&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;'closed&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;redraw&lt;/SPAN&gt;&lt;SPAN&gt; total_width_dim &lt;/SPAN&gt;&lt;SPAN&gt;4&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;princ&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Mon, 20 Jan 2025 18:03:37 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13272044#M4147</guid>
      <dc:creator>paul9ZMBV</dc:creator>
      <dc:date>2025-01-20T18:03:37Z</dc:date>
    </item>
    <item>
      <title>Re: Lisp for T+G Boards (modifying existing lisp required)</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13272657#M4148</link>
      <description>&lt;P&gt;Have a look at this can be used as a front end when doing multiple value inputs, note returns string values but use atof etc to convet to real or atoi for integer.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Example code at top of code. Can be used in any code. Replaces this and can set default values.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;boards_number (getint "\nEnter number of boards: ")
          board_thickness (getreal "\nEnter board_thickness: ")           ; 22
          tongue_thickness (getreal "\nEnter tongue thickness: ")   ;   6
          tongue_setback (getreal "\nEnter tongue setback: ")           ;   8
          tongue_length (getreal "\nEnter tongue_length: ")           ; 12
          boards_gap_chamfer (getreal "\nEnter boards_gap_chamfer: ")           ;   3&lt;/LI-CODE&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;LI-CODE lang="general"&gt;(setq boards_number (atoi (nth 0 ans))  ; 8
    board_thickness (atof (nth 1 ans))  ; 22
    tongue_thickness (atof (nth 2 ans)) ; 6
    tongue_setback (atof (nth 3 ans))   ; 8
    tongue_length (atof (nth 4 ans))    ; 12
    boards_gap_chamfer (atof (nth 5 ans))  ; 3
)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 21 Jan 2025 03:29:55 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13272657#M4148</guid>
      <dc:creator>Sea-Haven</dc:creator>
      <dc:date>2025-01-21T03:29:55Z</dc:date>
    </item>
    <item>
      <title>Re: Lisp for T+G Boards (modifying existing lisp required)</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13272946#M4149</link>
      <description>&lt;P&gt;This sounds amazing it would good if someone would be so kind as to incorporate this into this into a complete working lisp, im quite new to this and this is beyond my skills currently.&lt;/P&gt;</description>
      <pubDate>Tue, 21 Jan 2025 07:11:44 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13272946#M4149</guid>
      <dc:creator>paul9ZMBV</dc:creator>
      <dc:date>2025-01-21T07:11:44Z</dc:date>
    </item>
    <item>
      <title>Re: Lisp for T+G Boards (modifying existing lisp required)</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13273069#M4150</link>
      <description>&lt;P&gt;Ok part 2. I posted already what to do once you fill in values. Have a go at using it.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="SeaHaven_0-1737448507461.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1457216i2ABBA1E71E9B3771/image-size/medium?v=v2&amp;amp;px=400" role="button" title="SeaHaven_0-1737448507461.png" alt="SeaHaven_0-1737448507461.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;(if (not AH:getvalsm)(load "Multi Getvals.lsp"))
(setq ans (AH:getvalsm (list "Enter values" 
  "Enter number of boards: "  5 4 "10"
  "Enter board_thickness: " 5 4 "22"
  "Enter tongue thickness: " 5 4 "6"
  "Enter tongue setback: " 5 4 "8"
  "Enter tongue_length: " 5 4 "12"
  "Enter boards_gap_chamfer: " 5 4 "3"
  )
)
)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 21 Jan 2025 08:36:24 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13273069#M4150</guid>
      <dc:creator>Sea-Haven</dc:creator>
      <dc:date>2025-01-21T08:36:24Z</dc:date>
    </item>
    <item>
      <title>Re: Lisp for T+G Boards (modifying existing lisp required)</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13273098#M4151</link>
      <description>&lt;P&gt;sorry a little confused could this be added to the lisp below please so its a complete working lisp&lt;/P&gt;&lt;P&gt;but i like the look of it a lot&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;defun&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;c:t_g_board&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;/&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;total_width_dim _redraw total_width boards_number tongue_thickness tongue_setback tongue_length tongue_overlap insertion_point&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; board_thickness boards_gap_chamfer one_board_width board_start_geom_list board_end_geom_list vertices_list&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;setq&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;total_width_dim (&lt;/SPAN&gt;&lt;SPAN&gt;car&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;entsel&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"\nPick dimension for total width: "&lt;/SPAN&gt;&lt;SPAN&gt;))&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;_redraw (&lt;/SPAN&gt;&lt;SPAN&gt;redraw&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;total_width_dim&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;3&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;total_width (&lt;/SPAN&gt;&lt;SPAN&gt;cdr&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;assoc&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;42&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;entget&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;total_width_dim)))&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; boards_number (&lt;/SPAN&gt;&lt;SPAN&gt;getint&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"\nEnter number of boards: "&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; board_thickness (&lt;/SPAN&gt;&lt;SPAN&gt;getreal&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"\nEnter board_thickness: "&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; 22&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tongue_thickness (&lt;/SPAN&gt;&lt;SPAN&gt;getreal&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"\nEnter tongue thickness: "&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 6&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tongue_setback (&lt;/SPAN&gt;&lt;SPAN&gt;getreal&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"\nEnter tongue setback: "&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 8&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tongue_length (&lt;/SPAN&gt;&lt;SPAN&gt;getreal&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"\nEnter tongue_length: "&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; 12&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; boards_gap_chamfer (&lt;/SPAN&gt;&lt;SPAN&gt;getreal&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"\nEnter boards_gap_chamfer: "&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 3&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; insertion_point (&lt;/SPAN&gt;&lt;SPAN&gt;getpoint&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;"\nPick insertion point: "&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;insertion_point_list '((&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;))&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;tongue_overlap (&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;tongue_length boards_gap_chamfer)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;one_board_width (&lt;/SPAN&gt;&lt;SPAN&gt;/&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;total_width (&lt;/SPAN&gt;&lt;SPAN&gt;*&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;boards_gap_chamfer (&lt;/SPAN&gt;&lt;SPAN&gt;1-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;boards_number))) boards_number)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;board_start_geom_list (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;one_board_width (&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback)) &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; 1&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;one_board_width (&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) boards_gap_chamfer)) &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 2&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;one_board_width boards_gap_chamfer) (&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness)) &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 3&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;boards_gap_chamfer (&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness)) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; &amp;nbsp; &amp;nbsp; 4&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) boards_gap_chamfer)) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 5&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback)) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 6&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;tongue_length) (&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback)) &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 7&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;tongue_length) (&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback tongue_thickness)) &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 8&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback tongue_thickness)) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 9&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 10&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;one_board_width&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 11&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;one_board_width (&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback tongue_thickness)) &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 12&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;one_board_width tongue_overlap) (&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback tongue_thickness))&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 1&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;one_board_width tongue_overlap boards_gap_chamfer) (&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback tongue_thickness)) &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 2&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;one_board_width tongue_overlap boards_gap_chamfer) (&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback))&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 3&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;one_board_width tongue_overlap) (&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback)) &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 4&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; board_end_geom_list (&lt;/SPAN&gt;&lt;SPAN&gt;append&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;car&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;board_start_geom_list)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;one_board_width tongue_length) (&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback tongue_thickness)))&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 13&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;one_board_width tongue_length) (&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;board_thickness) tongue_setback))) &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;; &amp;nbsp; 14&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;repeat&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;1-&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;boards_number) (&lt;/SPAN&gt;&lt;SPAN&gt;setq&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;insertion_point_list (&lt;/SPAN&gt;&lt;SPAN&gt;append&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;insertion_point_list (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;mapcar&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;'+ (&lt;/SPAN&gt;&lt;SPAN&gt;last&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;insertion_point_list) (&lt;/SPAN&gt;&lt;SPAN&gt;list&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;+&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;one_board_width boards_gap_chamfer)&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;)))))) &amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;foreach&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;insertion (&lt;/SPAN&gt;&lt;SPAN&gt;vl-remove&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;last&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;insertion_point_list) insertion_point_list)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;foreach&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;pline board_start_geom_list&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;vla-addlightweightpolyline&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;vla-get-block&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;vla-get-activelayout&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;vla-get-activedocument&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;vlax-get-acad-object&lt;/SPAN&gt;&lt;SPAN&gt;))))&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;vlax-safearray-fill&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;vlax-make-safearray&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;vlax-vbdouble&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;cons&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;length&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;setq&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;vertices_list&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;apply&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;'append&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;mapcar&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;'(&lt;/SPAN&gt;&lt;SPAN&gt;lambda&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(vertex) (&lt;/SPAN&gt;&lt;SPAN&gt;mapcar&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;'+ insertion_point insertion vertex))&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;pline&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;vertices_list&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;vlax-put&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;vla-addlightweightpolyline&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;vla-get-block&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;vla-get-activelayout&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;vla-get-activedocument&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;vlax-get-acad-object&lt;/SPAN&gt;&lt;SPAN&gt;))))&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;vlax-safearray-fill&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;vlax-make-safearray&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;vlax-vbdouble&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;cons&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;length&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN&gt;setq&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;vertices_list&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;apply&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;'append&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;mapcar&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;'(&lt;/SPAN&gt;&lt;SPAN&gt;lambda&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(vertex) (&lt;/SPAN&gt;&lt;SPAN&gt;mapcar&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;'+ insertion_point&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;last&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;insertion_point_list)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;vertex&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;board_end_geom_list&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;vertices_list&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;'closed&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;redraw&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;total_width_dim&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;4&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;princ&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 21 Jan 2025 08:50:46 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13273098#M4151</guid>
      <dc:creator>paul9ZMBV</dc:creator>
      <dc:date>2025-01-21T08:50:46Z</dc:date>
    </item>
    <item>
      <title>Re: Lisp for T+G Boards (modifying existing lisp required)</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13273122#M4152</link>
      <description>&lt;P&gt;Your lucky in a good mood and had time. Look at how code is used for future programs with lots of value entries. The Multi getvals.lsp needs to be saved in a support path or edit the (load "c:\\yourdirectorypath\\Multi getvals.lsp")&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;(defun c:t_g_board (/ total_width_dim _redraw total_width boards_number tongue_thickness tongue_setback tongue_length tongue_overlap insertion_point
              board_thickness boards_gap_chamfer one_board_width board_start_geom_list board_end_geom_list vertices_list
           )
(setq total_width_dim (car (entsel "\nPick dimension for total width: "))
 _redraw (redraw total_width_dim 3)
 total_width (cdr (assoc 42 (entget total_width_dim)))
)

(if (not AH:getvalsm)(load "Multi Getvals.lsp"))
(setq ans (AH:getvalsm (list "Enter values" 
  "Enter number of boards: "  5 4 "10"
  "Enter board_thickness: " 5 4 "22"
  "Enter tongue thickness: " 5 4 "6"
  "Enter tongue setback: " 5 4 "8"
  "Enter tongue_length: " 5 4 "12"
  "Enter boards_gap_chamfer: " 5 4 "3"
  )
)
)
		  
(setq boards_number (atoi (nth 0 ans))
    board_thickness (atof (nth 1 ans))
    tongue_thickness (atof (nth 2 ans))
    tongue_setback (atof (nth 3 ans))
    tongue_length (atof (nth 4 ans))
    boards_gap_chamfer (atof (nth 5 ans))
)
	  
(setq insertion_point (getpoint "\nPick insertion point: ")
insertion_point_list '((0 0))
tongue_overlap (- tongue_length boards_gap_chamfer)
one_board_width (/ (- total_width (* boards_gap_chamfer (1- boards_number))) boards_number)
board_start_geom_list (list (list (list one_board_width (+ (- board_thickness) tongue_setback))   ; 1
    (list one_board_width (+ (- board_thickness) boards_gap_chamfer))       ;   2
    (list (- one_board_width boards_gap_chamfer) (- board_thickness))   ;   3
    (list boards_gap_chamfer (- board_thickness))                           ;       4
    (list 0 (+ (- board_thickness) boards_gap_chamfer))             ;   5
    (list 0 (+ (- board_thickness) tongue_setback))             ;   6
    (list (- tongue_length) (+ (- board_thickness) tongue_setback))     ;   7
    (list (- tongue_length) (+ (- board_thickness) tongue_setback tongue_thickness))    ;   8
    (list 0 (+ (- board_thickness) tongue_setback tongue_thickness))            ;   9
    (list 0 0)  ;   10
    (list one_board_width 0)    ;   11
    (list one_board_width (+ (- board_thickness) tongue_setback tongue_thickness))  ;   12
    )
    (list (list (- one_board_width tongue_overlap) (+ (- board_thickness) tongue_setback tongue_thickness)) ;   1
    (list (- one_board_width tongue_overlap boards_gap_chamfer) (+ (- board_thickness) tongue_setback tongue_thickness))    ;   2
    (list (- one_board_width tongue_overlap boards_gap_chamfer) (+ (- board_thickness) tongue_setback)) ;   3
    (list (- one_board_width tongue_overlap) (+ (- board_thickness) tongue_setback))    ;   4
    )
    )
    board_end_geom_list (append (car board_start_geom_list)
    (list (list (+ one_board_width tongue_length) (+ (- board_thickness) tongue_setback tongue_thickness))) ;   13
    (list (list (+ one_board_width tongue_length) (+ (- board_thickness) tongue_setback)))  ;   14
    )
    )
(repeat (1- boards_number) (setq insertion_point_list (append insertion_point_list (list (mapcar '+ (last insertion_point_list) (list (+ one_board_width boards_gap_chamfer) 0))))))  (foreach insertion (vl-remove (last insertion_point_list) insertion_point_list)
(foreach pline board_start_geom_list
(vla-addlightweightpolyline (vla-get-block (vla-get-activelayout (vla-get-activedocument (vlax-get-acad-object))))
(vlax-safearray-fill (vlax-make-safearray vlax-vbdouble
(cons 1 (length (setq vertices_list
(apply 'append
(mapcar '(lambda (vertex) (mapcar '+ insertion_point insertion vertex))
pline
)
)
)
)
)
)
vertices_list
)
)
)
)
(vlax-put (vla-addlightweightpolyline (vla-get-block (vla-get-activelayout (vla-get-activedocument (vlax-get-acad-object))))
(vlax-safearray-fill (vlax-make-safearray vlax-vbdouble
(cons 1 (length (setq vertices_list
(apply 'append
(mapcar '(lambda (vertex) (mapcar '+ insertion_point
(last insertion_point_list)
vertex
)
)
board_end_geom_list
)
)
)
)
)
)
vertices_list
)
)
'closed
1
)
(redraw total_width_dim 4)
(princ)
)
(c:t_g_board)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Pretty cool answer&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="SeaHaven_0-1737450175056.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1457224i3420C625A4896916/image-size/medium?v=v2&amp;amp;px=400" role="button" title="SeaHaven_0-1737450175056.png" alt="SeaHaven_0-1737450175056.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 21 Jan 2025 09:02:59 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13273122#M4152</guid>
      <dc:creator>Sea-Haven</dc:creator>
      <dc:date>2025-01-21T09:02:59Z</dc:date>
    </item>
    <item>
      <title>Re: Lisp for T+G Boards (modifying existing lisp required)</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13273165#M4153</link>
      <description>&lt;P&gt;Hi Sea-Haven&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks so much for that its very much appreciated and works seamlessly&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The only thing that i need changed to make it perfect is that if i don't want a bevel it doesn't work ie i enter 0 value for the bevel&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In an ideal world i could do with a separate input for the bevel and a separate input for the gap between (and if the bevel input was 0 it would just draw as square edged rather than a bevel)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I fully understand if you don't have the time for this&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What you have done is greatly appreciated.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 21 Jan 2025 09:24:22 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13273165#M4153</guid>
      <dc:creator>paul9ZMBV</dc:creator>
      <dc:date>2025-01-21T09:24:22Z</dc:date>
    </item>
    <item>
      <title>Re: Lisp for T+G Boards (modifying existing lisp required)</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13274087#M4154</link>
      <description>&lt;P&gt;i have managed to add the gap input and chamfer input separately and set variables, (&lt;STRONG&gt;board_gap&lt;/STRONG&gt; and &lt;STRONG&gt;board_chamfer&lt;/STRONG&gt;)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I just need help making the t+g boards draw with the separate variables&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;for example if the &lt;STRONG&gt;board_chamfer&lt;/STRONG&gt; is 0 it draws the t+g boards with square edges&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;(defun c:t_g_board (/ total_width_dim _redraw total_width boards_number tongue_thickness tongue_setback tongue_length tongue_overlap insertion_point&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; board_thickness boards_gap_chamfer one_board_width board_start_geom_list board_end_geom_list vertices_list&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;)&lt;/DIV&gt;&lt;DIV&gt;(setq total_width_dim (car (entsel "\nPick dimension for total width: "))&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;_redraw (redraw total_width_dim 3)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;total_width (cdr (assoc 42 (entget total_width_dim)))&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;(if (not AH:getvalsm)(load "Multi Getvals.lsp"))&lt;/DIV&gt;&lt;DIV&gt;(setq ans (AH:getvalsm (list "Enter values"&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; "Enter number of boards: "&amp;nbsp; 5 4 "10"&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; "Enter board_thickness: " 5 4 "22"&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; "Enter tongue thickness: " 5 4 "6"&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; "Enter tongue setback: " 5 4 "8"&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; "Enter tongue_length: " 5 4 "12"&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; "Enter boards_gap: " 5 4 "3"&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; "Enter board_chamfer: " 5 4 "3"&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; )&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;(setq boards_number (atoi (nth 0 ans))&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; board_thickness (atof (nth 1 ans))&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; tongue_thickness (atof (nth 2 ans))&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; tongue_setback (atof (nth 3 ans))&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; tongue_length (atof (nth 4 ans))&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; boards_gap (atof (nth 5 ans))&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; board_chamfer (atof (nth 6 ans))&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;(setq insertion_point (getpoint "\nPick insertion point: ")&lt;/DIV&gt;&lt;DIV&gt;insertion_point_list '((0 0))&lt;/DIV&gt;&lt;DIV&gt;tongue_overlap (- tongue_length boards_gap_chamfer)&lt;/DIV&gt;&lt;DIV&gt;one_board_width (/ (- total_width (* boards_gap_chamfer (1- boards_number))) boards_number)&lt;/DIV&gt;&lt;DIV&gt;board_start_geom_list (list (list (list one_board_width (+ (- board_thickness) tongue_setback))&amp;nbsp; &amp;nbsp;; 1&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list one_board_width (+ (- board_thickness) boards_gap_chamfer))&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;;&amp;nbsp; &amp;nbsp;2&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list (- one_board_width boards_gap_chamfer) (- board_thickness))&amp;nbsp; &amp;nbsp;;&amp;nbsp; &amp;nbsp;3&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list boards_gap_chamfer (- board_thickness))&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;4&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list 0 (+ (- board_thickness) boards_gap_chamfer))&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;;&amp;nbsp; &amp;nbsp;5&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list 0 (+ (- board_thickness) tongue_setback))&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;;&amp;nbsp; &amp;nbsp;6&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list (- tongue_length) (+ (- board_thickness) tongue_setback))&amp;nbsp; &amp;nbsp; &amp;nbsp;;&amp;nbsp; &amp;nbsp;7&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list (- tongue_length) (+ (- board_thickness) tongue_setback tongue_thickness))&amp;nbsp; &amp;nbsp; ;&amp;nbsp; &amp;nbsp;8&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list 0 (+ (- board_thickness) tongue_setback tongue_thickness))&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ;&amp;nbsp; &amp;nbsp;9&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list 0 0)&amp;nbsp; ;&amp;nbsp; &amp;nbsp;10&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list one_board_width 0)&amp;nbsp; &amp;nbsp; ;&amp;nbsp; &amp;nbsp;11&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list one_board_width (+ (- board_thickness) tongue_setback tongue_thickness))&amp;nbsp; ;&amp;nbsp; &amp;nbsp;12&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; )&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list (list (- one_board_width tongue_overlap) (+ (- board_thickness) tongue_setback tongue_thickness)) ;&amp;nbsp; &amp;nbsp;1&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list (- one_board_width tongue_overlap boards_gap_chamfer) (+ (- board_thickness) tongue_setback tongue_thickness))&amp;nbsp; &amp;nbsp; ;&amp;nbsp; &amp;nbsp;2&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list (- one_board_width tongue_overlap boards_gap_chamfer) (+ (- board_thickness) tongue_setback)) ;&amp;nbsp; &amp;nbsp;3&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list (- one_board_width tongue_overlap) (+ (- board_thickness) tongue_setback))&amp;nbsp; &amp;nbsp; ;&amp;nbsp; &amp;nbsp;4&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; )&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; )&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; board_end_geom_list (append (car board_start_geom_list)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list (list (+ one_board_width tongue_length) (+ (- board_thickness) tongue_setback tongue_thickness))) ;&amp;nbsp; &amp;nbsp;13&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; (list (list (+ one_board_width tongue_length) (+ (- board_thickness) tongue_setback)))&amp;nbsp; ;&amp;nbsp; &amp;nbsp;14&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; )&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; )&lt;/DIV&gt;&lt;DIV&gt;(repeat (1- boards_number) (setq insertion_point_list (append insertion_point_list (list (mapcar '+ (last insertion_point_list) (list (+ one_board_width boards_gap_chamfer) 0))))))&amp;nbsp; (foreach insertion (vl-remove (last insertion_point_list) insertion_point_list)&lt;/DIV&gt;&lt;DIV&gt;(foreach pline board_start_geom_list&lt;/DIV&gt;&lt;DIV&gt;(vla-addlightweightpolyline (vla-get-block (vla-get-activelayout (vla-get-activedocument (vlax-get-acad-object))))&lt;/DIV&gt;&lt;DIV&gt;(vlax-safearray-fill (vlax-make-safearray vlax-vbdouble&lt;/DIV&gt;&lt;DIV&gt;(cons 1 (length (setq vertices_list&lt;/DIV&gt;&lt;DIV&gt;(apply 'append&lt;/DIV&gt;&lt;DIV&gt;(mapcar '(lambda (vertex) (mapcar '+ insertion_point insertion vertex))&lt;/DIV&gt;&lt;DIV&gt;pline&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;vertices_list&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;(vlax-put (vla-addlightweightpolyline (vla-get-block (vla-get-activelayout (vla-get-activedocument (vlax-get-acad-object))))&lt;/DIV&gt;&lt;DIV&gt;(vlax-safearray-fill (vlax-make-safearray vlax-vbdouble&lt;/DIV&gt;&lt;DIV&gt;(cons 1 (length (setq vertices_list&lt;/DIV&gt;&lt;DIV&gt;(apply 'append&lt;/DIV&gt;&lt;DIV&gt;(mapcar '(lambda (vertex) (mapcar '+ insertion_point&lt;/DIV&gt;&lt;DIV&gt;(last insertion_point_list)&lt;/DIV&gt;&lt;DIV&gt;vertex&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;board_end_geom_list&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;vertices_list&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;'closed&lt;/DIV&gt;&lt;DIV&gt;1&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;(redraw total_width_dim 4)&lt;/DIV&gt;&lt;DIV&gt;(princ)&lt;/DIV&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;DIV&gt;(c:t_g_board)&lt;/DIV&gt;</description>
      <pubDate>Tue, 21 Jan 2025 17:29:41 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13274087#M4154</guid>
      <dc:creator>paul9ZMBV</dc:creator>
      <dc:date>2025-01-21T17:29:41Z</dc:date>
    </item>
    <item>
      <title>Re: Lisp for T+G Boards (modifying existing lisp required)</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13276114#M4155</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/4499694"&gt;@paul9ZMBV&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;someone, eh) you've gotta be kidding)&lt;/P&gt;&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/6254908"&gt;@Sea-Haven&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Alan, nothing personal, but for me you really act like a certain sausage seller with this multi... of yours)&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="komondormrex_0-1737557773239.gif" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1457914i6B0E8FBB9AC5A34A/image-size/medium?v=v2&amp;amp;px=400" role="button" title="komondormrex_0-1737557773239.gif" alt="komondormrex_0-1737557773239.gif" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Jan 2025 14:58:07 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13276114#M4155</guid>
      <dc:creator>komondormrex</dc:creator>
      <dc:date>2025-01-22T14:58:07Z</dc:date>
    </item>
    <item>
      <title>Re: Lisp for T+G Boards (modifying existing lisp required)</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13276137#M4156</link>
      <description>&lt;P&gt;thanks @komondormex&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;No offence intended I couldn't remember who done the t+g lisp originally&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The lisp you show in the video is perfect any chance of the coding please, it would be very much appreciated&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jan 2025 17:37:14 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-for-t-g-boards-modifying-existing-lisp-required/m-p/13276137#M4156</guid>
      <dc:creator>paul9ZMBV</dc:creator>
      <dc:date>2025-01-23T17:37:14Z</dc:date>
    </item>
  </channel>
</rss>

