What is best method cut up line ON 0.2 inch and OFF 0.05 inch repeated?


What is best method to divide a line up into a dashed line like stitches with the ON segment 0.2 inches long and the OFF segment (i.e. gap) 0.05 inches long. Repeated as such.
same as making a linetype but physical segments instead !
I need to do so as using dashed line just causes so many problems in layout mode, so I will make actual stitches instead !


  1. Make a line (dash) 0.2 long
  2. Array in one direction with 0.25 as spacing (number of items as needed)
  3. Group the result (optional)

understood for creating a line, however…
The line already exists at an angle in 3D space not parallel to any axis. and there are many to do this on.

Divide will do it but not the gaps.

How do I do the dash gap thing on such ?

Also how do I do that on a curving line as stitching can be as such.



Make one long enough and orient(copy) and trim it to length after.

In V7 you can also use ArrayLinear to array a single segment in any direction, not just XY.

In V8 you can apply a linetype and then use ExtractLinetypeSegments - which is the equivalent of V4’s ExplodeLinetype, discontinued in V5 and finally brought back. For V5-V7, I have scripts to do this, but I hesitate here…

Your only reasonable alternative is the V8 command as I mentioned above or a script.

If you really want to do it the neanderthal way, you can:

  1. Isolate the curve(s) (i.e. temporarily lock or hide everything else)
  2. Array a circle of 0.05 diameter along the curve(s)
  3. Call Split, select first the curve(s) as object to split, then the circles from above
  4. Use SelShortCurve and something maybe a little larger than 0.05 to select all the small split segments and delete them.

is there a script I can make a button for ?

and just what is the coding to put in the buttons coding box ?

else its primeval mode.



Hi, I draw circle 0.05 dia inch.
i run arrayCrv
select the circle, click basepoint option, place such at start of line, prompt then asks to select the curve, I do so and immediately a box appears

I choose 40 items (spacing greyed out)
I use freeform,
hit enter
and a row of circles with massive gaps appears parallel to the line, yet basepoint supposed to move the circle to the line.
try again, same problem.

what am I doing wrong ?



Yes -
ExplodeLinetypeV14.py (9.7 KB)

You need to apply the appropriate dashed linetype to your curve(s) first. There are options on the command line to delete input, group output and whether you want linetypes that include dots to represent the dots as point objects or very short line segments.

NoEcho ! _-RunPythonScript (
<open script in text editor and copy/paste the entire script in here>

Use at your own risk…

The basepoint is the center of the circle.

For cases where the line does not lie in the same plane as the circle - as a circle is a 2D object - you will need to array spheres to use as splitting tools instead.