1

I'm trying to convert some CAD maps and I was requested to make this line type look exactly the same. Normally I would make a line with arrows like that just using the line decoration or character markers but getting the groups of 3 that stay with the direction of the line is giving me a lot of trouble.

Anyone know a method to do this?

Here is what they want.

2
  • Can you create a special single marker consisting of three arrows, and then create your line as symbol-dash-symbol-dash-etc? Apr 29, 2021 at 15:14
  • I had considered that. I was hoping there would be an easier solution as making those markers is quite difficult, but I believe you are right and that is the route I will need to go.
    – D. Martin
    Apr 30, 2021 at 15:29

1 Answer 1

0

This is scale dependent solution. I will assume that at 1:2000 scale the length of 3 arrows is 25 m. I suggest to split your lines twice: a) split all the lines into same length bits and b) split every odd into 3 parts and use arrow symbol for them. For this we need 1st produce shorter version of originals. So populate new integer field (N):

max(divmod(!Shape!.length,25)[0],1)

Populate new double field (TZ) by:

min( !Shape!.length, !N! *25)

Create copy of original and shorten each shape by running this on field Shape:

!Shape!.segmentAlongLine (0,!TZ!)

enter image description here

Split shortened lines into N bits:

enter image description here

and every odd one into 3:

enter image description here

Decide what to do with portion of line beyond 25*N and end of the line.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.