<?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: Arraypath with various step values in Visual LISP, AutoLISP and General Customization Forum</title>
    <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835126#M68263</link>
    <description>&lt;P&gt;Here you go. Also added a second version for even more fun!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;
(vl-load-com)

(defun c:ArrayOfCircles ( / r d i p1 p2 d1 d2 o1 o2)
  
  (setq r 2.  				; radius
	d '(10. 8. 5. 3.5 3.5)		; distances
	i -1)
  
  (if (and (setq p1 (getpoint "\nPlace initial circle: "))
	   (setq p2 (getpoint p1 "\nPlace last circle: "))
	   (or (setq pl (car (nentselp p1)))
	       (setq pl (car (nentselp p2))))
	   (setq p1 (vlax-curve-getClosestPointTo pl p1))
	   (setq d1 (vlax-curve-getDistAtPoint pl p1))
	   (setq p2 (vlax-curve-getClosestPointTo pl p2))
	   (setq d2 (vlax-curve-getDistAtPoint pl p2))
	   (if (&amp;lt; d1 d2)
	     (setq o1 &amp;lt; o2 +)
	     (setq d (reverse d) o1 &amp;gt; o2 -))
	   (entmake (list (cons 0 "CIRCLE") (cons 10 p2) (cons 40 r)))
	   )
    (while (o1 d1 d2)
      (entmake (list (cons 0 "CIRCLE") (cons 10 (vlax-curve-getPointAtDist pl d1)) (cons 40 r)))
      (setq d1 (o2 d1 (cond ((nth (setq i (1+ i)) d))
			    ((nth (setq i 0) d)))))))
  (princ)
  )



(vl-load-com)

(defun c:ArrayOfCirclesRandom ( / r d i p1 p2 d1 d2 o1 o2)
  
  ;; Rand  -  Lee Mac
  ;; PRNG implementing a linear congruential generator with
  ;; parameters derived from the book 'Numerical Recipes'
  
  (defun LM:rand ( / a c m )
    (setq m   4294967296.0
	  a   1664525.0
	  c   1013904223.0
	  $xn (rem (+ c (* a (cond ($xn) ((getvar 'date))))) m))
    (/ $xn m))
  
  (defun LM:randrange ( a b )
    (+ (min a b) (fix (* (LM:rand) (1+ (abs (- a b)))))))
  
  ; ----------------------------------------------------------------------
  
  (setq r 2.  				; radius
	d '(10. 8. 5. 3.5 3.5)		; distances
	i -1)
  
  (if (and (setq p1 (getpoint "\nPlace initial circle: "))
	   (setq p2 (getpoint p1 "\nPlace last circle: "))
	   (or (setq pl (car (nentselp p1)))
	       (setq pl (car (nentselp p2))))
	   (setq p1 (vlax-curve-getClosestPointTo pl p1))
	   (setq d1 (vlax-curve-getDistAtPoint pl p1))
	   (setq p2 (vlax-curve-getClosestPointTo pl p2))
	   (setq d2 (vlax-curve-getDistAtPoint pl p2))
	   (if (&amp;lt; d1 d2)
	     (setq o1 &amp;lt; o2 +)
	     (setq o1 &amp;gt; o2 -))
	   (entmake (list (cons 0 "CIRCLE") (cons 10 p2) (cons 40 r)))
	   )
    (while (o1 d1 d2)
      (entmake (list (cons 0 "CIRCLE") (cons 10 (vlax-curve-getPointAtDist pl d1)) (cons 40 r)))
      (setq d1 (o2 d1 (nth (LM:randrange 0 (1- (length d))) d)))))
  (princ)
  )
&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 30 Oct 2020 14:52:16 GMT</pubDate>
    <dc:creator>ВeekeeCZ</dc:creator>
    <dc:date>2020-10-30T14:52:16Z</dc:date>
    <item>
      <title>Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9833560#M68252</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I would create a LISP that draw a circle at the starting or ending point (depends where I click) of a existing line.&lt;/P&gt;&lt;P&gt;Then with this circle I would do an ARRAYPATH but with different value of distance between the circles. The value of the distance should be taken from a fixed pool of values.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Example&lt;/P&gt;&lt;P&gt;1. I click on the line in the side where I want the circle (with fixed radius)&lt;/P&gt;&lt;P&gt;2. LISP command draws the circle&lt;/P&gt;&lt;P&gt;3. LIPS command draws a second circle "VAR1" unit far from the first circle,&amp;nbsp;LIPS command draws a third circle "VAR2" unit far from the&amp;nbsp;second circle, and so on until the end of the line/path.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;"VAR1" "VAR2" "VAR3"... are fixed values that the command should take randomly.&lt;/P&gt;&lt;P&gt;It could be plus if I could edit manually some values of distance (maybe with something like a input text box between the circles).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is it possible to do this? Maybe at the least without the random distance value?&lt;/P&gt;&lt;P&gt;Where I could find guide of the ARRAYPATH parameters?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;PS: I would change the default distance of the arraypath command. There isn't any system variable to change? I see only solutions with "actions recording" or "lisp" for this...and it can't be!!!&lt;span class="lia-unicode-emoji" title=":grinning_face_with_sweat:"&gt;😅&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 29 Oct 2020 23:05:28 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9833560#M68252</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2020-10-29T23:05:28Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9833633#M68253</link>
      <description>&lt;P&gt;I don't think there's anything out-of-the-box that can do that.&amp;nbsp; It may be possible with a custom routine, for which you would be better off posting in the &lt;A href="https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/bd-p/130" target="_blank" rel="noopener"&gt;Customization Forum&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;But I have a question [you could say something about it if you post there]:&amp;nbsp; Does "random" selection of distance values from a fixed list mean &lt;EM&gt;really random&lt;/EM&gt;, or "controlled" random in some way?&amp;nbsp; For example, should it not use any value more than once?&amp;nbsp;&amp;nbsp;&lt;SPAN style="font-family: inherit;"&gt;A truly random selection, let's say 5 times, of values from a list could result in repeats of some value(s), or even [however unlikely] the &lt;EM&gt;same&lt;/EM&gt;&amp;nbsp; value being drawn for all 5 selections.&amp;nbsp; Should a value that has been used be removed from the list before the next selection?&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;Of course, if the length of the path and the typical distances mean there will need to be &lt;EM&gt;more Circles than there are distances&lt;/EM&gt;, it would be unavoidable to have repeats.&amp;nbsp; But should there be some attempt to have all the different values used, and spread the repeats around?&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 29 Oct 2020 23:57:20 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9833633#M68253</guid>
      <dc:creator>Kent1Cooper</dc:creator>
      <dc:date>2020-10-29T23:57:20Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9834400#M68254</link>
      <description>&lt;P&gt;Thank you for your reply, I will follow your suggest.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;About your question on the "random mode", yes, I should have 5 times the same value.&lt;BR /&gt;&lt;BR /&gt;About the attempts to fill the path completly using all the allowed distance value, it could be a nice feature but I think too much advanced for my case.&lt;BR /&gt;&lt;BR /&gt;Can you help me about the default arraypath distance? There is a system variable to set?&lt;/P&gt;&lt;P&gt;Where a I could find a guide to make a custom LISP for the arraypath?&lt;BR /&gt;&lt;BR /&gt;Thank you&lt;/P&gt;</description>
      <pubDate>Fri, 30 Oct 2020 09:56:46 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9834400#M68254</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2020-10-30T09:56:46Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9834460#M68255</link>
      <description>&lt;P&gt;Not sure if I follow you... but give it a try.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;(vl-load-com)

(defun c:ArrayOfCircles ( / r d u p1 p2 d1 d2)

  (setq r 2.  				; &lt;STRONG&gt;radius&lt;/STRONG&gt;
	d '(10. 8. 5. 3.5 3.5)		; &lt;STRONG&gt;distances&lt;/STRONG&gt;
	i -1)

  (if (and (setq p1 (getpoint "\nPlace initial circle: "))
	   (setq p2 (getpoint p1 "\nPlace last circle: "))
	   (or (setq pl (car (nentselp p1)))
	       (setq pl (car (nentselp p2))))
	   (setq p1 (vlax-curve-getClosestPointTo pl p1))
	   (setq d1 (vlax-curve-getDistAtPoint pl p1))
	   (setq p2 (vlax-curve-getClosestPointTo pl p2))
	   (setq d2 (vlax-curve-getDistAtPoint pl p2))
	   (or (&amp;lt; d1 d2)
	       (prompt "\nError: Wrong direction."))
	   (entmake (list (cons 0 "CIRCLE") (cons 10 p2) (cons 40 r)))
	   )
    (while (&amp;lt; d1 d2)
      (entmake (list (cons 0 "CIRCLE") (cons 10 (vlax-curve-getPointAtDist pl d1)) (cons 40 r)))
      (setq d1 (+ d1 (cond ((nth (setq i (1+ i)) d))
			   ((nth (setq i 0) d)))))))
  (princ)
  )
&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;And to answer your question - the is no such variable. It's calculated somehow according to the actual length of the path.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 30 Oct 2020 10:26:02 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9834460#M68255</guid>
      <dc:creator>ВeekeeCZ</dc:creator>
      <dc:date>2020-10-30T10:26:02Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9834537#M68256</link>
      <description>&lt;P&gt;@Anonymous&amp;nbsp; hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Check this one. it call ARPTH (Array Path)&lt;/P&gt;&lt;P&gt;this program is base on Lee's Mac (LM:randrange) function to get a random value so thank you very much &lt;STRONG&gt;Lee Mac&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;it works in a loop letting you pick a line path (actually it's a curve which lets you also select a polylines and splines) each one in a row.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;the next code line defined the fix distances. you can changes these numbers as you like to meet your requirements.&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000FF"&gt;(setq FIXVAL '(5.35 6.68 4.59 7.51 8.23 9.15 5.35 6.75 7.45))&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;also there is a constant defines the circle radius you can set it with your radius&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000FF"&gt;(setq RADIUS 2)&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;another constant refers to the randomize value. there must be a limit for trying to get a random value otherwise the program might enter an infinite loop&amp;nbsp;&lt;span class="lia-unicode-emoji" title=":grinning_face:"&gt;😀&lt;/span&gt;&amp;nbsp; if 96 is a low value, you can increase (or decrease) it to speed the program.&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000FF"&gt;(setq RANDTRY 96)&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;the program make sure there will not be an overlapping circles if you did not mind this i can remove this check.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;and last:&lt;/P&gt;&lt;P&gt;the circles in each line path (curve) is collected and put in a group, giving the feel of array path (it's totally static you can not edit it, only select to move\copy\rotate or delete)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;enjoy&lt;/P&gt;&lt;P&gt;Moshe&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;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;;; Rand  -  Lee Mac
;; PRNG implementing a linear congruential generator with
;; parameters derived from the book 'Numerical Recipes'

(defun LM:rand ( / a c m )
    (setq m   4294967296.0
          a   1664525.0
          c   1013904223.0
          $xn (rem (+ c (* a (cond ($xn) ((getvar 'date))))) m)
    )
    (/ $xn m)
)

;; Random in Range  -  Lee Mac
;; Returns a pseudo-random integral number in a given range (inclusive)

(defun LM:randrange ( a b )
    (+ (min a b) (fix (* (LM:rand) (1+ (abs (- a b))))))
)

(defun c:arpth (/ wcs-&amp;gt;ucs randomize ; local functions
                  RADIUS FIXVAL ss0 ss1 pick ename p0 p1 d0 d1 d2 seg len rnd dirMode bool)

 (defun wcs-&amp;gt;ucs (pt)
  (trans pt 0 1)
 )
  
 (defun randomize (/ n r)
  (setq n 0)
  (while (and
           (&amp;lt; n RANDTRY) ; make sure not enter infinite loop
           (&amp;lt; (setq r (nth (LM:randrange 0 (length FIXVAL)) FIXVAL)) (* RADIUS 2))
         )
   (setq n (1+ n)) 
  )

  (if (= n RANDTRY)
   (alert "radomize fail to generate a reasonable number.")  
   r)
 ); radomize


 ; here start c:arpth 
 (setvar "cmdecho" 0)
 (command "._undo" "_begin")

 ; constant declaration
 (setq RANDTRY 96)   ; max radomize tries
 (setq RADIUS 2)     ; fix circle radius
 ; fix dist values 
 (setq FIXVAL '(5.35 6.68 4.59 7.51 8.23 9.15 5.35 6.75 7.45))
  
 (while (setq ss0 (ssget ":s:e+." '((0 . "*line")))) ; line,polyline,lwpolyline,spline can be picked here
  (setq pick (ssnamex ss0))
  (setq ename (cadar pick))
  (setq p0 (cadr (last (car pick))))

  (setq d0 0.0)
  (setq d1 (vlax-curve-getDistAtParam ename (vlax-curve-getParamAtPoint ename (vlax-curve-getClosestPointTo ename p0))))
  (setq d2 (vlax-curve-getDistAtParam ename (vlax-curve-getEndParam ename)))

  (if (setq dirMode (&amp;lt; d1 (- d2 d1)))
   (setq bool '&amp;lt; seg 0.0 upto d2)
   (setq bool '&amp;gt; seg d2 upto 0.0)
  )
   
  (setq rnd t len d2)
  (setq ss1 (ssadd)) ; for group

  (while (and rnd (eval (list bool seg upto)))
   (setq p1 (wcs-&amp;gt;ucs (vlax-curve-getPointAtDist ename seg)))
   (command "._circle" p1 RADIUS)
   (ssadd (entlast) ss1) 

   (if (setq rnd (randomize))
    (if dirMode 
     (setq seg (+ seg rnd))
     (setq seg (- len (setq d0 (+ d0 rnd))))
    ); if
   ); if
  ); while

  (command "._group" "" "*" "" "_si" ss1)
  (setq ss1 nil) 
 ); while

 (command "._undo" "_end") 
 (setvar "cmdecho" 1) 
 (princ)  
); c:arpth

 &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;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>Fri, 30 Oct 2020 11:07:10 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9834537#M68256</guid>
      <dc:creator>Moshe-A</dc:creator>
      <dc:date>2020-10-30T11:07:10Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9834639#M68257</link>
      <description>&lt;P&gt;Also, I remember&amp;nbsp;&lt;A href="https://www.youtube.com/watch?v=mEMRHbt_t8g" target="_blank" rel="noopener"&gt;THIS&lt;/A&gt;&amp;nbsp; video referring to&amp;nbsp;&lt;A href="https://www.cadforum.cz/cadforum/download.asp?file=scatter&amp;amp;sort=" target="_blank" rel="noopener"&gt;SCATTER&lt;/A&gt;&amp;nbsp; routine. See if you find it helpful.&lt;/P&gt;</description>
      <pubDate>Fri, 30 Oct 2020 11:42:18 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9834639#M68257</guid>
      <dc:creator>ВeekeeCZ</dc:creator>
      <dc:date>2020-10-30T11:42:18Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9834999#M68258</link>
      <description>&lt;P&gt;Thank you!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;of course I gave it a chance. The idea is correct but I need to select arcs too.&lt;BR /&gt;&lt;BR /&gt;Do you think it can works with some edit?&lt;/P&gt;</description>
      <pubDate>Fri, 30 Oct 2020 14:09:12 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9834999#M68258</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2020-10-30T14:09:12Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835046#M68259</link>
      <description>&lt;P&gt;Thank you for your time.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I've tried with this&lt;/P&gt;&lt;LI-CODE lang="general"&gt; ; constant declaration
 (setq RANDTRY 20)   ; max radomize tries
 (setq RADIUS 3)     ; fix circle radius
 ; fix dist values 
 (setq FIXVAL '(20 30 40))&lt;/LI-CODE&gt;&lt;P&gt;but i got this (see picture below)&lt;BR /&gt;There is maybe something I've not understood.&lt;BR /&gt;&lt;BR /&gt;What I meant is that the command must randomly choose between the values ​​"20" "30" "40" and draw the circle.&lt;BR /&gt;Does your LISP works with arcs too? It seems not on my tries.&lt;BR /&gt;&lt;BR /&gt;Sorry, maybe I has not been enought clear on my question.&lt;BR /&gt;Do you think your command are "fixable" in this way?&lt;BR /&gt;&lt;BR /&gt;Thank you in advance again&lt;/P&gt;</description>
      <pubDate>Fri, 30 Oct 2020 14:28:09 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835046#M68259</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2020-10-30T14:28:09Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835062#M68260</link>
      <description>&lt;P&gt;@Anonymous&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;HR /&gt;@Anonymous&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;Thank you!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;of course I gave it a chance. The idea is correct but I need to select arcs too.&lt;BR /&gt;&lt;BR /&gt;Do you think it can works with some edit?&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;FONT color="#0000FF"&gt;change this line&lt;/FONT&gt;&lt;/P&gt;&lt;LI-CODE lang="general"&gt; (while (setq ss0 (ssget ":s:e+." '((0 . "*line")))) ; line,polyline,lwpolyline,spline can be picked here&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000FF"&gt;to this line&lt;/FONT&gt;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;(while (setq ss0 (ssget ":s:e+." '((0 . "*line,arc")))) ; line,polyline,lwpolyline,spline + ARCs can be picked here&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 30 Oct 2020 14:33:21 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835062#M68260</guid>
      <dc:creator>Moshe-A</dc:creator>
      <dc:date>2020-10-30T14:33:21Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835078#M68261</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;@Anonymous&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Sorry, maybe I has not been enought clear on my question.&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="3"&gt;Indeed, the surprise is killing me, how is it supposed to look anyway?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 30 Oct 2020 14:35:53 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835078#M68261</guid>
      <dc:creator>pbejse</dc:creator>
      <dc:date>2020-10-30T14:35:53Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835103#M68262</link>
      <description>&lt;P&gt;&lt;SPAN&gt;What I meant is that the command must randomly choose between the values ​​"20" "30" "40" and draw the circle.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000FF"&gt;of course it picks distance randomly, you did not specifies enough values to look it selects varies value&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 30 Oct 2020 14:43:22 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835103#M68262</guid>
      <dc:creator>Moshe-A</dc:creator>
      <dc:date>2020-10-30T14:43:22Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835126#M68263</link>
      <description>&lt;P&gt;Here you go. Also added a second version for even more fun!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;
(vl-load-com)

(defun c:ArrayOfCircles ( / r d i p1 p2 d1 d2 o1 o2)
  
  (setq r 2.  				; radius
	d '(10. 8. 5. 3.5 3.5)		; distances
	i -1)
  
  (if (and (setq p1 (getpoint "\nPlace initial circle: "))
	   (setq p2 (getpoint p1 "\nPlace last circle: "))
	   (or (setq pl (car (nentselp p1)))
	       (setq pl (car (nentselp p2))))
	   (setq p1 (vlax-curve-getClosestPointTo pl p1))
	   (setq d1 (vlax-curve-getDistAtPoint pl p1))
	   (setq p2 (vlax-curve-getClosestPointTo pl p2))
	   (setq d2 (vlax-curve-getDistAtPoint pl p2))
	   (if (&amp;lt; d1 d2)
	     (setq o1 &amp;lt; o2 +)
	     (setq d (reverse d) o1 &amp;gt; o2 -))
	   (entmake (list (cons 0 "CIRCLE") (cons 10 p2) (cons 40 r)))
	   )
    (while (o1 d1 d2)
      (entmake (list (cons 0 "CIRCLE") (cons 10 (vlax-curve-getPointAtDist pl d1)) (cons 40 r)))
      (setq d1 (o2 d1 (cond ((nth (setq i (1+ i)) d))
			    ((nth (setq i 0) d)))))))
  (princ)
  )



(vl-load-com)

(defun c:ArrayOfCirclesRandom ( / r d i p1 p2 d1 d2 o1 o2)
  
  ;; Rand  -  Lee Mac
  ;; PRNG implementing a linear congruential generator with
  ;; parameters derived from the book 'Numerical Recipes'
  
  (defun LM:rand ( / a c m )
    (setq m   4294967296.0
	  a   1664525.0
	  c   1013904223.0
	  $xn (rem (+ c (* a (cond ($xn) ((getvar 'date))))) m))
    (/ $xn m))
  
  (defun LM:randrange ( a b )
    (+ (min a b) (fix (* (LM:rand) (1+ (abs (- a b)))))))
  
  ; ----------------------------------------------------------------------
  
  (setq r 2.  				; radius
	d '(10. 8. 5. 3.5 3.5)		; distances
	i -1)
  
  (if (and (setq p1 (getpoint "\nPlace initial circle: "))
	   (setq p2 (getpoint p1 "\nPlace last circle: "))
	   (or (setq pl (car (nentselp p1)))
	       (setq pl (car (nentselp p2))))
	   (setq p1 (vlax-curve-getClosestPointTo pl p1))
	   (setq d1 (vlax-curve-getDistAtPoint pl p1))
	   (setq p2 (vlax-curve-getClosestPointTo pl p2))
	   (setq d2 (vlax-curve-getDistAtPoint pl p2))
	   (if (&amp;lt; d1 d2)
	     (setq o1 &amp;lt; o2 +)
	     (setq o1 &amp;gt; o2 -))
	   (entmake (list (cons 0 "CIRCLE") (cons 10 p2) (cons 40 r)))
	   )
    (while (o1 d1 d2)
      (entmake (list (cons 0 "CIRCLE") (cons 10 (vlax-curve-getPointAtDist pl d1)) (cons 40 r)))
      (setq d1 (o2 d1 (nth (LM:randrange 0 (1- (length d))) d)))))
  (princ)
  )
&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 30 Oct 2020 14:52:16 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835126#M68263</guid>
      <dc:creator>ВeekeeCZ</dc:creator>
      <dc:date>2020-10-30T14:52:16Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835179#M68264</link>
      <description>&lt;P&gt;@Anonymous&amp;nbsp;,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;here is a modified version supporting arcs plus adopting your distance list.&lt;/P&gt;&lt;P&gt;also i add a prompt for the circle radius so you can set a new value each&amp;nbsp;&lt;SPAN&gt;invocation.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;make sure you select a large curve to accept your distance list.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Moshe&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;;; Rand  -  Lee Mac
;; PRNG implementing a linear congruential generator with
;; parameters derived from the book 'Numerical Recipes'

(defun LM:rand ( / a c m )
    (setq m   4294967296.0
          a   1664525.0
          c   1013904223.0
          $xn (rem (+ c (* a (cond ($xn) ((getvar 'date))))) m)
    )
    (/ $xn m)
)


;; Random in Range  -  Lee Mac
;; Returns a pseudo-random integral number in a given range (inclusive)

(defun LM:randrange ( a b )
    (+ (min a b) (fix (* (LM:rand) (1+ (abs (- a b))))))
)

(defun c:arpth (/ initialization askdist wcs-&amp;gt;ucs randomize ; local functions
                  defrad RANDTRY RADIUS FIXVAL ss0 ss1 pick ename p0 p1 d0 d1 d2 seg len rnd dirMode bool)

 (defun initialization ()
  ; constant declaration
  (setq RANDTRY 96)   ; max radomize tries
  ; fix dist values 
  (setq FIXVAL '(20.0 30.0 40.0 50.0 60.0)) 

  (if (= (getvar "userr4") 0.0)
   (setq defrad (setvar "userr4" 2.0))
   (setq defrad (getvar "userr4")) 
  )
 ); initialization

 (defun askdist (def / ask)
  (initget (+ 2 4))
  (if (not (setq ask (getdist (strcat "\nCircle radius &amp;lt;" (rtos def 2 2) "&amp;gt;: "))))
   (setq ask def)
   (setq def ask)
  )
 ); askdist
  
 (defun wcs-&amp;gt;ucs (pt)
  (trans pt 0 1)
 )
  
 (defun randomize (/ n r)
  (setq n 0)
  (while (and
           (&amp;lt; n RANDTRY) ; make sure not enter infinite loop
           (&amp;lt; (setq r (nth (LM:randrange 0 (length FIXVAL)) FIXVAL)) (* RADIUS 2))
         )
   (setq n (1+ n)) 
  )

  (if (= n RANDTRY)
   (alert "randomize fail to generate a reasonable number.")  
   r)
 ); randomize

 ; here start c:arpth 
 (setvar "cmdecho" 0)
 (command "._undo" "_begin")

 (initialization)
 (setvar "userr4" (setq radius (askdist defrad)))

 (while (setq ss0 (ssget ":s:e+." '((0 . "*line,arc")))) ; line,polyline,lwpolyline,spline + ARCs can be picked here
  (setq pick (ssnamex ss0))
  (setq ename (cadar pick))
  (setq p0 (cadr (last (car pick))))

  (setq d0 0.0)
  (setq d1 (vlax-curve-getDistAtParam ename (vlax-curve-getParamAtPoint ename (vlax-curve-getClosestPointTo ename p0))))
  (setq d2 (vlax-curve-getDistAtParam ename (vlax-curve-getEndParam ename)))

  (if (setq dirMode (&amp;lt; d1 (- d2 d1)))
   (setq bool '&amp;lt; seg 0.0 upto d2)
   (setq bool '&amp;gt; seg d2  upto 0.0)
  )
   
  (setq rnd t len d2)
  (setq ss1 (ssadd)) ; for group

  (while (and rnd (eval (list bool seg upto)))
   (setq p1 (wcs-&amp;gt;ucs (vlax-curve-getPointAtDist ename seg)))
   (command "._circle" p1 RADIUS)
   (ssadd (entlast) ss1) 

   (if (setq rnd (randomize))
    (if dirMode 
     (setq seg (+ seg rnd))
     (setq seg (- len (setq d0 (+ d0 rnd))))
    ); if
   ); if
  ); while

  (command "._group" "" "*" "" "_si" ss1)
  (setq ss1 nil) 
 ); while

 (command "._undo" "_end") 
 (setvar "cmdecho" 1) 
 (princ)  
); c:arpth
  &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;</description>
      <pubDate>Fri, 30 Oct 2020 15:14:28 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835179#M68264</guid>
      <dc:creator>Moshe-A</dc:creator>
      <dc:date>2020-10-30T15:14:28Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835605#M68265</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/1779365"&gt;@ВeekeeCZ&lt;/a&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/52747"&gt;@Moshe-A&lt;/a&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Thank you VERY much! &lt;span class="lia-unicode-emoji" title=":blue_heart:"&gt;💙&lt;/span&gt;&lt;span class="lia-unicode-emoji" title=":smiling_face_with_smiling_eyes:"&gt;😊&lt;/span&gt;&lt;span class="lia-unicode-emoji" title=":clinking_beer_mugs:"&gt;🍻&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 30 Oct 2020 18:48:45 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9835605#M68265</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2020-10-30T18:48:45Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9836343#M68266</link>
      <description>&lt;P&gt;Another&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="lisp"&gt;(defun c:Crayon ( / LM:rand LM:randrange _DistList rad ss en eLent sym d)
  
  ;; Rand  -  Lee Mac
  ;; PRNG implementing a linear congruential generator with
  ;; parameters derived from the book 'Numerical Recipes'
  
  (defun LM:rand ( / a c m )
    (setq m   4294967296.0
	  a   1664525.0
	  c   1013904223.0
	  $xn (rem (+ c (* a (cond ($xn) ((getvar 'date))))) m))
    (/ $xn m))
  
  (defun LM:randrange ( a b )
    (+ (min a b) (fix (* (LM:rand) (1+ (abs (- a b)))))))
  
(Defun _DistList (data / opt d)
(setq inc 0)(initget "Yes New")
(cond
 ( (and data
     (eq (setq opt (Getkword (strcat  "\nUse Previous data :[Yes/New]"
				      (vl-prin1-to-string data) "&amp;lt;New&amp;gt;?"))) "Yes"))
    data
  )
 ( (and data (/= opt "Yes"))
  	(_DistList nil)
  )
 ( (null data)
   (while (and (null (initget 6))
	       (setq d (getdist (strcat "\nEnter Distance " (itoa (setq inc (1+ inc)))))))
  	(print (reverse (setq data (cons d data))))
  	)
     )
  )
 )
(and
	(setq rad 2.0 values ( _DistList values))		 
	(while 	(setq ss (ssget "_+.:S:E" '((0 . "*LINE,ARC"))))
		(setq en (cadar (ssnamex ss)))
		(setq nsp (vlax-curve-getClosestPointTo en (cadr (last (car (ssnamex ss))))))
	  	(setq eLent (vlax-curve-getDistAtPoint en (Vlax-curve-GetEndpoint en)))  			
	  	(setq sym (if (&amp;lt; (vlax-curve-getDistAtPoint en nsp) (* eLent 0.5))
			    (progn (setq eLent 0) +) -))

	  	(while (and (setq d (nth (LM:randrange 0 (1- (length values))) values))
			 	(setq pt (vlax-curve-getPointAtDist en (setq eLent (sym eLent d)))))
	  	 	 (entmake (list (cons 0 "CIRCLE") (cons 10 pt) (cons 40 rad)))
		  )
	  )
	)
  (princ)
  )&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Similar approach as&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/1779365"&gt;@ВeekeeCZ&lt;/a&gt;&amp;nbsp;: added extra features like prompting for distance values&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="lisp"&gt;Command: CRAYON
Enter Distance 18
(8.0)
Enter Distance 26.3
(8.0 6.3)
Enter Distance 35.2
(8.0 6.3 5.2);&amp;lt; shows current listing
Enter Distance 4
Select objects: 
Select objects: &amp;lt;- continue selection

Command:  CRAYON
Use Previous data :[Yes/New](8.0 6.3 5.2)&amp;lt;New&amp;gt;? Y ;&amp;lt;--- Shows current data
Select objects:

Command:  CRAYON
Use Previous data :[Yes/New](8.0 6.3 5.2)&amp;lt;New&amp;gt;?N &amp;lt;--- type in new data
Enter Distance 14
(4.0)
Enter Distance 28
(4.0 8.0)
Enter Distance 35.2
(4.0 8.0 5.2)
Enter Distance 4
Select objects:&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;HTH&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 31 Oct 2020 05:23:55 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9836343#M68266</guid>
      <dc:creator>pbejse</dc:creator>
      <dc:date>2020-10-31T05:23:55Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9836491#M68267</link>
      <description>&lt;P&gt;Thank you.&lt;BR /&gt;In my case I don't need to change the values, but sure it's useful see the code and keep it for the future. &lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 31 Oct 2020 08:54:22 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9836491#M68267</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2020-10-31T08:54:22Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9836750#M68268</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;@Anonymous&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Thank you.&lt;BR /&gt;In my case I don't need to change the values, but sure it's useful see the code and keep it for the future. &lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;No worries mega-mini, was just thinking since you mention it needs to be random, whats more random than the capability to provide diffferent distance.&amp;nbsp; We can however set the initial values?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Anyways, glad you like it.&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;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 31 Oct 2020 13:01:47 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9836750#M68268</guid>
      <dc:creator>pbejse</dc:creator>
      <dc:date>2020-10-31T13:01:47Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9839675#M68269</link>
      <description>&lt;P&gt;In my case, a really improved could be the possibility to edit manually some distance after the circles have been drawed.&lt;BR /&gt;&lt;BR /&gt;Example (setted distances: 15 18 21 24).&lt;BR /&gt;Command drawed four circle with distances 21, 18, 18, 24. Distance between the first and the last circle is 81 (21+18+18+24). I would be able di change the second distance (maybe with an input textbox) moving all the follwing&amp;nbsp; step. So i could manually change distances 21,&lt;FONT color="#FF0000"&gt;&lt;STRONG&gt; 15&lt;/STRONG&gt;&lt;/FONT&gt;, 18, 24 and moving the third and the fourth circles, distance between the first and the last circle should be &lt;STRONG&gt;&lt;FONT color="#FF0000"&gt;78&lt;/FONT&gt;&lt;/STRONG&gt; now.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 02 Nov 2020 11:23:48 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9839675#M68269</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2020-11-02T11:23:48Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9839748#M68270</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;@Anonymous&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;In my case, a really improved could be the possibility to edit manually some distance after the circles have been drawed.&lt;BR /&gt;&lt;BR /&gt;Example (setted distances: 15 18 21 24).&lt;BR /&gt;Command drawed four circle with distances 21, 18, 18, 24. Distance between the first and the last circle is 81 (21+18+18+24). I would be able di change the second distance (maybe with an input textbox) moving all the follwing&amp;nbsp; step. So i could manually change distances 21,&lt;FONT color="#FF0000"&gt;&lt;STRONG&gt; 15&lt;/STRONG&gt;&lt;/FONT&gt;, 18, 24 and moving the third and the fourth circles, distance between the first and the last circle should be &lt;STRONG&gt;&lt;FONT color="#FF0000"&gt;78&lt;/FONT&gt;&lt;/STRONG&gt; now.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Did you end up with my random version of routine? Or which one?&lt;/P&gt;
&lt;P&gt;The described process...&lt;/P&gt;
&lt;P&gt;- are you doing this fine-tuning right away with every single 'array placement'?&lt;/P&gt;
&lt;P&gt;- if the routine zoom-in to your segment and pop-up list of actual values to you to edit... would that be ok? Or do you need to make some kind of measurements before the edits?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I'm thinking of this "edit" screen at the end of the routine... there would be listed the actual values.. you'll set what you want and it will be applied on the circles. But it's a modal dialog.&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="Z9E3zK5E_0-1604318309477.png" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/839309i4A4698333944D2BA/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Z9E3zK5E_0-1604318309477.png" alt="Z9E3zK5E_0-1604318309477.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Edit: Do you need to see those circles drawn at all? Won't be enough to give you just numbers - you know, overall length and randomly generated numbers...&amp;nbsp; &amp;nbsp;That might be easier to do...&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 02 Nov 2020 12:25:19 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9839748#M68270</guid>
      <dc:creator>ВeekeeCZ</dc:creator>
      <dc:date>2020-11-02T12:25:19Z</dc:date>
    </item>
    <item>
      <title>Re: Arraypath with various step values</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9839875#M68271</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;@Anonymous&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;&lt;BR /&gt;Example (setted distances: 15 18 21 24).&lt;BR /&gt;Command drawed four circle with distances 21, 18, 18, 24. Distance between the first and the last circle is 81 ....should be &lt;STRONG&gt;&lt;FONT color="#FF0000"&gt;78&lt;/FONT&gt;&lt;/STRONG&gt; now.&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="3"&gt;I guess "random" means any order of the four given distance [ 15 18 21 24 ] but no repeats Yes? what about the next group after that? or does it mean when you reach the total of the distance list, the program terminates regardless how long the selected object is?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="3"&gt;Please show us how it really should look&amp;nbsp;&amp;nbsp;@Anonymous&amp;nbsp; &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/FONT&gt;&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, 02 Nov 2020 13:09:09 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/arraypath-with-various-step-values/m-p/9839875#M68271</guid>
      <dc:creator>pbejse</dc:creator>
      <dc:date>2020-11-02T13:09:09Z</dc:date>
    </item>
  </channel>
</rss>

