The idea is to have a sequence of numbers defining the length of “on” and “off” state.
Make mass addiction > partial results and then evaluate length to get parameters, and shatter with those parameters. Then doing a dispatch will let you keep/see only the “on” state.
This part is actually the simplest, just 4 components.
To achieve your sequence of numbers you can smartly insert characters and then “translate” them using unicode.
Reverse-engineering this will explain more than words.
PS1 i wrote brown as BOWN …
PS2 the space character, i’ve translated to ‘_’ but it could have just been translated into itself in the first translation, making it " = " in the first dictionary and " =7" in the second dictionary…
Yes, many morse code tables are shown in 2 or more columns and selecting them mess up the order.
In that page the <div>s are probably in an order which made the selecting easy.
Then removing the spaces with notepad++ is a 30 sec task, using ALT+drag to edit many rows at once:
(I’m saying this just for who don’t know this … notepad++ should be built-in on windows!)
whoa!
Please double… triple check if the dictionary i’ve used is correct! (I’ve just copy-pasted from a random google result).
Check that everything is correct and translate back to counter proof the correct-ness of everything.
Just as an aside, there’s a great book “The Victorian Internet” by Tom Standage that makes the case the telegraph was a more world-shaking development than the WWW. I tend to agree.
no idea about 6 years ago, but most likely yes, it’s just I did not know all grasshopper components.
And… I still discover new commands in Rhino and new components in Grasshopper…
… can we say dots (circles) radius is equal to half-width of the strokes?
If so, dispatch your dot and dashes:
for dots, create a circle from the center of the dot line segment
for dashes, shrink the segment ends by radius (negative extend) and then make both-sides offset and cap with half-circle arcs
Yes… but no? If the dots are circles, the radius must be both the half-length of the dot in the chain and the half-width of the stroke. So either the base width unit for the dots/dashes and the spaces inbetween them are decided with the stroke size resultant, or you pick a stroke size and it determines the domain of the target curve used to show the Morse code.
This is a passable solution. It will result in variable spacing between the dots and dashes. I am reminded of this thread, where Divide Distance with semi-circles was discussed, and am considering appoaching this problem as pearls on a thread?
My previous comment was wrong, I edited it.
2 circles in a high curvature path can result to look like too close each-other. You are right, to solve this you might want to solve this with a chord-based solution.
See my questions above in the edited comment.
No, they do not have to be lines, or rather they shouldn’t be lines.
Well, it’s three, but yes, I imagined measuring internally by 3 chords.
So, basically, you find the total number of chord units, use Daniel’s Kangaroo method to spread these chords evenly across the curve. Center points on the chords for circles. Cull circles that are gaps. Somehow merge three circles into a deformed oblong… This is also just an appoximation then though as centerpoint(s) of the figures do not lie on the curve anymore.This doesn’t work.
@laurent_delrieu 's Nautilus has a String of Pearls component, but it doesn’t scale the pearls to the length of the curve: