discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Better Braille

JH
John Heim
Sat, Aug 13, 2022 7:03 PM

Hi, I have a goal of creating a system to generate 3D floor maps for the
blind. I want to take a hotel floor plan and generate a 3D version of it
for conventions. To start, I just want to be able to put braille on a
surface. There are several projects on github to generate braille but I
found them inadequate mainly because they don't do the translation from
plain text to braille well. I think I've written code to do that.

I've attached a python script and a OpenScad file. The python program
takes plain text, converts it to ASCII braille, and forks an OpenScad
process to create a plaque with the braille on it. Well, that's what it
is supposed to do.

I am looking for feedback on what I've written so far.

To try the system, download the 2 attached files and make the python
script executable. You will need some standard python libraries most
notably louis which is the ASCII braille translation library. "pip
install louis" ought to do it.

Then do this:

$ brailleSign.py -t"Hello, world!"

You can change the text to anything you want.

The OpenScad code contains a function that converts an ASCII braille
code to a number. That number represents the dots needed to generate the
character in braille. The letter 'a' is just dot 1. Therefore, the
function returns a 1 for the character 'a'.  The letter 'c' is dots 1
and 4. The function therefore returns the number 9 (1 + 2^4) for the
letter 'c'.

Then there is another function that takes a number and generates dots
based on that number.

The python script doesn't really have any interesting code in it. But
here is the function that takes an ASCII braille character and returns a
number representing the dots required to generate it:

function brailleCode(character) = search(character,"
a1b'k2l@cif/msp"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\0z7(_?w]#y)=")[0];

Note: The character string in the function came from the wikipedia page
on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII

Hi, I have a goal of creating a system to generate 3D floor maps for the blind. I want to take a hotel floor plan and generate a 3D version of it for conventions. To start, I just want to be able to put braille on a surface. There are several projects on github to generate braille but I found them inadequate mainly because they don't do the translation from plain text to braille well. I think I've written code to do that. I've attached a python script and a OpenScad file. The python program takes plain text, converts it to ASCII braille, and forks an OpenScad process to create a plaque with the braille on it. Well, that's what it is supposed to do. I am looking for feedback on what I've written so far. To try the system, download the 2 attached files and make the python script executable. You will need some standard python libraries most notably louis which is the ASCII braille translation library. "pip install louis" ought to do it. Then do this: $ brailleSign.py -t"Hello, world!" You can change the text to anything you want. The OpenScad code contains a function that converts an ASCII braille code to a number. That number represents the dots needed to generate the character in braille. The letter 'a' is just dot 1. Therefore, the function returns a 1 for the character 'a'.  The letter 'c' is dots 1 and 4. The function therefore returns the number 9 (1 + 2^4) for the letter 'c'. Then there is another function that takes a number and generates dots based on that number. The python script doesn't really have any interesting code in it. But here is the function that takes an ASCII braille character and returns a number representing the dots required to generate it: function brailleCode(character) = search(character," a1b'k2l@cif/msp\"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\\0z7(_?w]#y)=")[0]; Note: The character string in the function came from the wikipedia page on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII
FH
Father Horton
Sat, Aug 13, 2022 10:04 PM

What sort of feedback do you want? What you've written seems to work. I
might have written it differently, but your style is your style.

On Sat, Aug 13, 2022 at 2:04 PM John Heim sconnie.johnnie@gmail.com wrote:

Hi, I have a goal of creating a system to generate 3D floor maps for the
blind. I want to take a hotel floor plan and generate a 3D version of it
for conventions. To start, I just want to be able to put braille on a
surface. There are several projects on github to generate braille but I
found them inadequate mainly because they don't do the translation from
plain text to braille well. I think I've written code to do that.

I've attached a python script and a OpenScad file. The python program
takes plain text, converts it to ASCII braille, and forks an OpenScad
process to create a plaque with the braille on it. Well, that's what it
is supposed to do.

I am looking for feedback on what I've written so far.

To try the system, download the 2 attached files and make the python
script executable. You will need some standard python libraries most
notably louis which is the ASCII braille translation library. "pip
install louis" ought to do it.

Then do this:

$ brailleSign.py -t"Hello, world!"

You can change the text to anything you want.

The OpenScad code contains a function that converts an ASCII braille
code to a number. That number represents the dots needed to generate the
character in braille. The letter 'a' is just dot 1. Therefore, the
function returns a 1 for the character 'a'.  The letter 'c' is dots 1
and 4. The function therefore returns the number 9 (1 + 2^4) for the
letter 'c'.

Then there is another function that takes a number and generates dots
based on that number.

The python script doesn't really have any interesting code in it. But
here is the function that takes an ASCII braille character and returns a
number representing the dots required to generate it:

function brailleCode(character) = search(character,"
a1b'k2l@cif/msp"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\0z7(_?w]#y)=")[0];

Note: The character string in the function came from the wikipedia page
on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

What sort of feedback do you want? What you've written seems to work. I might have written it differently, but your style is your style. On Sat, Aug 13, 2022 at 2:04 PM John Heim <sconnie.johnnie@gmail.com> wrote: > Hi, I have a goal of creating a system to generate 3D floor maps for the > blind. I want to take a hotel floor plan and generate a 3D version of it > for conventions. To start, I just want to be able to put braille on a > surface. There are several projects on github to generate braille but I > found them inadequate mainly because they don't do the translation from > plain text to braille well. I think I've written code to do that. > > I've attached a python script and a OpenScad file. The python program > takes plain text, converts it to ASCII braille, and forks an OpenScad > process to create a plaque with the braille on it. Well, that's what it > is supposed to do. > > I am looking for feedback on what I've written so far. > > To try the system, download the 2 attached files and make the python > script executable. You will need some standard python libraries most > notably louis which is the ASCII braille translation library. "pip > install louis" ought to do it. > > Then do this: > > > $ brailleSign.py -t"Hello, world!" > > > You can change the text to anything you want. > > The OpenScad code contains a function that converts an ASCII braille > code to a number. That number represents the dots needed to generate the > character in braille. The letter 'a' is just dot 1. Therefore, the > function returns a 1 for the character 'a'. The letter 'c' is dots 1 > and 4. The function therefore returns the number 9 (1 + 2^4) for the > letter 'c'. > > Then there is another function that takes a number and generates dots > based on that number. > > > > The python script doesn't really have any interesting code in it. But > here is the function that takes an ASCII braille character and returns a > number representing the dots required to generate it: > > > function brailleCode(character) = search(character," > a1b'k2l@cif/msp\"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\\0z7(_?w]#y)=")[0]; > > > Note: The character string in the function came from the wikipedia page > on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
FH
Father Horton
Sat, Aug 13, 2022 10:16 PM

From a practical aspect, you might be better off using spheres (distorted
if necessary) for the dots. I'd think the rough edges would be hard on
finger.

On Sat, Aug 13, 2022 at 5:04 PM Father Horton fatherhorton@gmail.com
wrote:

What sort of feedback do you want? What you've written seems to work. I
might have written it differently, but your style is your style.

On Sat, Aug 13, 2022 at 2:04 PM John Heim sconnie.johnnie@gmail.com
wrote:

Hi, I have a goal of creating a system to generate 3D floor maps for the
blind. I want to take a hotel floor plan and generate a 3D version of it
for conventions. To start, I just want to be able to put braille on a
surface. There are several projects on github to generate braille but I
found them inadequate mainly because they don't do the translation from
plain text to braille well. I think I've written code to do that.

I've attached a python script and a OpenScad file. The python program
takes plain text, converts it to ASCII braille, and forks an OpenScad
process to create a plaque with the braille on it. Well, that's what it
is supposed to do.

I am looking for feedback on what I've written so far.

To try the system, download the 2 attached files and make the python
script executable. You will need some standard python libraries most
notably louis which is the ASCII braille translation library. "pip
install louis" ought to do it.

Then do this:

$ brailleSign.py -t"Hello, world!"

You can change the text to anything you want.

The OpenScad code contains a function that converts an ASCII braille
code to a number. That number represents the dots needed to generate the
character in braille. The letter 'a' is just dot 1. Therefore, the
function returns a 1 for the character 'a'.  The letter 'c' is dots 1
and 4. The function therefore returns the number 9 (1 + 2^4) for the
letter 'c'.

Then there is another function that takes a number and generates dots
based on that number.

The python script doesn't really have any interesting code in it. But
here is the function that takes an ASCII braille character and returns a
number representing the dots required to generate it:

function brailleCode(character) = search(character,"
a1b'k2l@cif/msp"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\0z7(_?w]#y)=")[0];

Note: The character string in the function came from the wikipedia page
on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

From a practical aspect, you might be better off using spheres (distorted if necessary) for the dots. I'd think the rough edges would be hard on finger. On Sat, Aug 13, 2022 at 5:04 PM Father Horton <fatherhorton@gmail.com> wrote: > What sort of feedback do you want? What you've written seems to work. I > might have written it differently, but your style is your style. > > On Sat, Aug 13, 2022 at 2:04 PM John Heim <sconnie.johnnie@gmail.com> > wrote: > >> Hi, I have a goal of creating a system to generate 3D floor maps for the >> blind. I want to take a hotel floor plan and generate a 3D version of it >> for conventions. To start, I just want to be able to put braille on a >> surface. There are several projects on github to generate braille but I >> found them inadequate mainly because they don't do the translation from >> plain text to braille well. I think I've written code to do that. >> >> I've attached a python script and a OpenScad file. The python program >> takes plain text, converts it to ASCII braille, and forks an OpenScad >> process to create a plaque with the braille on it. Well, that's what it >> is supposed to do. >> >> I am looking for feedback on what I've written so far. >> >> To try the system, download the 2 attached files and make the python >> script executable. You will need some standard python libraries most >> notably louis which is the ASCII braille translation library. "pip >> install louis" ought to do it. >> >> Then do this: >> >> >> $ brailleSign.py -t"Hello, world!" >> >> >> You can change the text to anything you want. >> >> The OpenScad code contains a function that converts an ASCII braille >> code to a number. That number represents the dots needed to generate the >> character in braille. The letter 'a' is just dot 1. Therefore, the >> function returns a 1 for the character 'a'. The letter 'c' is dots 1 >> and 4. The function therefore returns the number 9 (1 + 2^4) for the >> letter 'c'. >> >> Then there is another function that takes a number and generates dots >> based on that number. >> >> >> >> The python script doesn't really have any interesting code in it. But >> here is the function that takes an ASCII braille character and returns a >> number representing the dots required to generate it: >> >> >> function brailleCode(character) = search(character," >> a1b'k2l@cif/msp\"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\\0z7(_?w]#y)=")[0]; >> >> >> Note: The character string in the function came from the wikipedia page >> on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> >
AM
Adrian Mariano
Sat, Aug 13, 2022 10:20 PM

I didn't get the original post, so I can't take a look at what was
done, but I must admit some confusion about why Python is involved in
this process.  I can't imagine why it would be necessary, and it
would be cleaner to do the whole thing end-to-end in OpenSCAD and have
a function like braille("Hello world") that produces the desired
result.

On Sat, Aug 13, 2022 at 6:05 PM Father Horton fatherhorton@gmail.com wrote:

What sort of feedback do you want? What you've written seems to work. I might have written it differently, but your style is your style.

On Sat, Aug 13, 2022 at 2:04 PM John Heim sconnie.johnnie@gmail.com wrote:

Hi, I have a goal of creating a system to generate 3D floor maps for the
blind. I want to take a hotel floor plan and generate a 3D version of it
for conventions. To start, I just want to be able to put braille on a
surface. There are several projects on github to generate braille but I
found them inadequate mainly because they don't do the translation from
plain text to braille well. I think I've written code to do that.

I've attached a python script and a OpenScad file. The python program
takes plain text, converts it to ASCII braille, and forks an OpenScad
process to create a plaque with the braille on it. Well, that's what it
is supposed to do.

I am looking for feedback on what I've written so far.

To try the system, download the 2 attached files and make the python
script executable. You will need some standard python libraries most
notably louis which is the ASCII braille translation library. "pip
install louis" ought to do it.

Then do this:

$ brailleSign.py -t"Hello, world!"

You can change the text to anything you want.

The OpenScad code contains a function that converts an ASCII braille
code to a number. That number represents the dots needed to generate the
character in braille. The letter 'a' is just dot 1. Therefore, the
function returns a 1 for the character 'a'.  The letter 'c' is dots 1
and 4. The function therefore returns the number 9 (1 + 2^4) for the
letter 'c'.

Then there is another function that takes a number and generates dots
based on that number.

The python script doesn't really have any interesting code in it. But
here is the function that takes an ASCII braille character and returns a
number representing the dots required to generate it:

function brailleCode(character) = search(character,"
a1b'k2l@cif/msp"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\0z7(_?w]#y)=")[0];

Note: The character string in the function came from the wikipedia page
on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

I didn't get the original post, so I can't take a look at what was done, but I must admit some confusion about why Python is involved in this process. I can't imagine why it would be necessary, and it would be cleaner to do the whole thing end-to-end in OpenSCAD and have a function like braille("Hello world") that produces the desired result. On Sat, Aug 13, 2022 at 6:05 PM Father Horton <fatherhorton@gmail.com> wrote: > > What sort of feedback do you want? What you've written seems to work. I might have written it differently, but your style is your style. > > On Sat, Aug 13, 2022 at 2:04 PM John Heim <sconnie.johnnie@gmail.com> wrote: >> >> Hi, I have a goal of creating a system to generate 3D floor maps for the >> blind. I want to take a hotel floor plan and generate a 3D version of it >> for conventions. To start, I just want to be able to put braille on a >> surface. There are several projects on github to generate braille but I >> found them inadequate mainly because they don't do the translation from >> plain text to braille well. I think I've written code to do that. >> >> I've attached a python script and a OpenScad file. The python program >> takes plain text, converts it to ASCII braille, and forks an OpenScad >> process to create a plaque with the braille on it. Well, that's what it >> is supposed to do. >> >> I am looking for feedback on what I've written so far. >> >> To try the system, download the 2 attached files and make the python >> script executable. You will need some standard python libraries most >> notably louis which is the ASCII braille translation library. "pip >> install louis" ought to do it. >> >> Then do this: >> >> >> $ brailleSign.py -t"Hello, world!" >> >> >> You can change the text to anything you want. >> >> The OpenScad code contains a function that converts an ASCII braille >> code to a number. That number represents the dots needed to generate the >> character in braille. The letter 'a' is just dot 1. Therefore, the >> function returns a 1 for the character 'a'. The letter 'c' is dots 1 >> and 4. The function therefore returns the number 9 (1 + 2^4) for the >> letter 'c'. >> >> Then there is another function that takes a number and generates dots >> based on that number. >> >> >> >> The python script doesn't really have any interesting code in it. But >> here is the function that takes an ASCII braille character and returns a >> number representing the dots required to generate it: >> >> >> function brailleCode(character) = search(character," >> a1b'k2l@cif/msp\"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\\0z7(_?w]#y)=")[0]; >> >> >> Note: The character string in the function came from the wikipedia page >> on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org
JH
John Heim
Sat, Aug 13, 2022 10:24 PM

I'm open to anything. What would you have done differently?

On 8/13/22 17:04, Father Horton wrote:

What sort of feedback do you want? What you've written seems to work.
I might have written it differently, but your style is your style.

On Sat, Aug 13, 2022 at 2:04 PM John Heim sconnie.johnnie@gmail.com
wrote:

 Hi, I have a goal of creating a system to generate 3D floor maps
 for the
 blind. I want to take a hotel floor plan and generate a 3D version
 of it
 for conventions. To start, I just want to be able to put braille on a
 surface. There are several projects on github to generate braille
 but I
 found them inadequate mainly because they don't do the translation
 from
 plain text to braille well. I think I've written code to do that.

 I've attached a python script and a OpenScad file. The python program
 takes plain text, converts it to ASCII braille, and forks an OpenScad
 process to create a plaque with the braille on it. Well, that's
 what it
 is supposed to do.

 I am looking for feedback on what I've written so far.

 To try the system, download the 2 attached files and make the python
 script executable. You will need some standard python libraries most
 notably louis which is the ASCII braille translation library. "pip
 install louis" ought to do it.

 Then do this:


 $ brailleSign.py -t"Hello, world!"


 You can change the text to anything you want.

 The OpenScad code contains a function that converts an ASCII braille
 code to a number. That number represents the dots needed to
 generate the
 character in braille. The letter 'a' is just dot 1. Therefore, the
 function returns a 1 for the character 'a'.  The letter 'c' is dots 1
 and 4. The function therefore returns the number 9 (1 + 2^4) for the
 letter 'c'.

 Then there is another function that takes a number and generates dots
 based on that number.



 The python script doesn't really have any interesting code in it. But
 here is the function that takes an ASCII braille character and
 returns a
 number representing the dots required to generate it:


 function brailleCode(character) = search(character,"
 a1b'k2l@cif/msp\"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\\0z7(_?w]#y)=")[0];


 Note: The character string in the function came from the wikipedia
 page
 on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII
 _______________________________________________
 OpenSCAD mailing list
 To unsubscribe send an email to discuss-leave@lists.openscad.org

OpenSCAD mailing list
To unsubscribe send an email todiscuss-leave@lists.openscad.org

I'm open to anything. What would you have done differently? On 8/13/22 17:04, Father Horton wrote: > What sort of feedback do you want? What you've written seems to work. > I might have written it differently, but your style is your style. > > On Sat, Aug 13, 2022 at 2:04 PM John Heim <sconnie.johnnie@gmail.com> > wrote: > > Hi, I have a goal of creating a system to generate 3D floor maps > for the > blind. I want to take a hotel floor plan and generate a 3D version > of it > for conventions. To start, I just want to be able to put braille on a > surface. There are several projects on github to generate braille > but I > found them inadequate mainly because they don't do the translation > from > plain text to braille well. I think I've written code to do that. > > I've attached a python script and a OpenScad file. The python program > takes plain text, converts it to ASCII braille, and forks an OpenScad > process to create a plaque with the braille on it. Well, that's > what it > is supposed to do. > > I am looking for feedback on what I've written so far. > > To try the system, download the 2 attached files and make the python > script executable. You will need some standard python libraries most > notably louis which is the ASCII braille translation library. "pip > install louis" ought to do it. > > Then do this: > > > $ brailleSign.py -t"Hello, world!" > > > You can change the text to anything you want. > > The OpenScad code contains a function that converts an ASCII braille > code to a number. That number represents the dots needed to > generate the > character in braille. The letter 'a' is just dot 1. Therefore, the > function returns a 1 for the character 'a'.  The letter 'c' is dots 1 > and 4. The function therefore returns the number 9 (1 + 2^4) for the > letter 'c'. > > Then there is another function that takes a number and generates dots > based on that number. > > > > The python script doesn't really have any interesting code in it. But > here is the function that takes an ASCII braille character and > returns a > number representing the dots required to generate it: > > > function brailleCode(character) = search(character," > a1b'k2l@cif/msp\"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\\0z7(_?w]#y)=")[0]; > > > Note: The character string in the function came from the wikipedia > page > on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email todiscuss-leave@lists.openscad.org
JH
John Heim
Sat, Aug 13, 2022 10:55 PM

Translating plain text into ASCII braille is non-trivial to say the
least. The word world, for example, is made with 2 characters, the
underscore, dots 4, 5, and 6 and the letter w, dots 2, 4, 5, and 6.
There are abbreviations for dozens of words as well as symbols for
letter combinations sh, ch, st, gh, and others. There are lots and lots
of rules for when all of these contractions can and cannot be used. On
the other hand, it takes 2 characters to make a capital I, a comma, dot
6, followed by the letter i, dots 2 and 4. Easier just to use an
existing library to do the translation.

The OpenScad script actually can stand alone in a way. The only purpose
of the python script is to convert plain text into ASCII braille. If you
can do that yourself, you don't need the python script.

Other OpenScad scripts I have found for generating braille either do
lower case letters only or do something hinky like requiring you to edit
the code to put your text into an array with the word "CAP"  to indicate
a capital letter.

What I could do is to get the liblouis source code and try to rewrite
that in OpenScad code. I think that would be a herculean effort though.

Unless there is a way to access a C or a python library in OpenScad.

On 8/13/22 17:20, Adrian Mariano wrote:

I didn't get the original post, so I can't take a look at what was
done, but I must admit some confusion about why Python is involved in
this process.  I can't imagine why it would be necessary, and it
would be cleaner to do the whole thing end-to-end in OpenSCAD and have
a function like braille("Hello world") that produces the desired
result.

On Sat, Aug 13, 2022 at 6:05 PM Father Horton fatherhorton@gmail.com wrote:

What sort of feedback do you want? What you've written seems to work. I might have written it differently, but your style is your style.

On Sat, Aug 13, 2022 at 2:04 PM John Heim sconnie.johnnie@gmail.com wrote:

Hi, I have a goal of creating a system to generate 3D floor maps for the
blind. I want to take a hotel floor plan and generate a 3D version of it
for conventions. To start, I just want to be able to put braille on a
surface. There are several projects on github to generate braille but I
found them inadequate mainly because they don't do the translation from
plain text to braille well. I think I've written code to do that.

I've attached a python script and a OpenScad file. The python program
takes plain text, converts it to ASCII braille, and forks an OpenScad
process to create a plaque with the braille on it. Well, that's what it
is supposed to do.

I am looking for feedback on what I've written so far.

To try the system, download the 2 attached files and make the python
script executable. You will need some standard python libraries most
notably louis which is the ASCII braille translation library. "pip
install louis" ought to do it.

Then do this:

$ brailleSign.py -t"Hello, world!"

You can change the text to anything you want.

The OpenScad code contains a function that converts an ASCII braille
code to a number. That number represents the dots needed to generate the
character in braille. The letter 'a' is just dot 1. Therefore, the
function returns a 1 for the character 'a'.  The letter 'c' is dots 1
and 4. The function therefore returns the number 9 (1 + 2^4) for the
letter 'c'.

Then there is another function that takes a number and generates dots
based on that number.

The python script doesn't really have any interesting code in it. But
here is the function that takes an ASCII braille character and returns a
number representing the dots required to generate it:

function brailleCode(character) = search(character,"
a1b'k2l@cif/msp"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\0z7(_?w]#y)=")[0];

Note: The character string in the function came from the wikipedia page
on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Translating plain text into ASCII braille is non-trivial to say the least. The word world, for example, is made with 2 characters, the underscore, dots 4, 5, and 6 and the letter w, dots 2, 4, 5, and 6. There are abbreviations for dozens of words as well as symbols for letter combinations sh, ch, st, gh, and others. There are lots and lots of rules for when all of these contractions can and cannot be used. On the other hand, it takes 2 characters to make a capital I, a comma, dot 6, followed by the letter i, dots 2 and 4. Easier just to use an existing library to do the translation. The OpenScad script actually can stand alone in a way. The only purpose of the python script is to convert plain text into ASCII braille. If you can do that yourself, you don't need the python script. Other OpenScad scripts I have found for generating braille either do lower case letters only or do something hinky like requiring you to edit the code to put your text into an array with the word "CAP"  to indicate a capital letter. What I could do is to get the liblouis source code and try to rewrite that in OpenScad code. I think that would be a herculean effort though. Unless there is a way to access a C or a python library in OpenScad. On 8/13/22 17:20, Adrian Mariano wrote: > I didn't get the original post, so I can't take a look at what was > done, but I must admit some confusion about why Python is involved in > this process. I can't imagine why it would be necessary, and it > would be cleaner to do the whole thing end-to-end in OpenSCAD and have > a function like braille("Hello world") that produces the desired > result. > > > On Sat, Aug 13, 2022 at 6:05 PM Father Horton <fatherhorton@gmail.com> wrote: >> What sort of feedback do you want? What you've written seems to work. I might have written it differently, but your style is your style. >> >> On Sat, Aug 13, 2022 at 2:04 PM John Heim <sconnie.johnnie@gmail.com> wrote: >>> Hi, I have a goal of creating a system to generate 3D floor maps for the >>> blind. I want to take a hotel floor plan and generate a 3D version of it >>> for conventions. To start, I just want to be able to put braille on a >>> surface. There are several projects on github to generate braille but I >>> found them inadequate mainly because they don't do the translation from >>> plain text to braille well. I think I've written code to do that. >>> >>> I've attached a python script and a OpenScad file. The python program >>> takes plain text, converts it to ASCII braille, and forks an OpenScad >>> process to create a plaque with the braille on it. Well, that's what it >>> is supposed to do. >>> >>> I am looking for feedback on what I've written so far. >>> >>> To try the system, download the 2 attached files and make the python >>> script executable. You will need some standard python libraries most >>> notably louis which is the ASCII braille translation library. "pip >>> install louis" ought to do it. >>> >>> Then do this: >>> >>> >>> $ brailleSign.py -t"Hello, world!" >>> >>> >>> You can change the text to anything you want. >>> >>> The OpenScad code contains a function that converts an ASCII braille >>> code to a number. That number represents the dots needed to generate the >>> character in braille. The letter 'a' is just dot 1. Therefore, the >>> function returns a 1 for the character 'a'. The letter 'c' is dots 1 >>> and 4. The function therefore returns the number 9 (1 + 2^4) for the >>> letter 'c'. >>> >>> Then there is another function that takes a number and generates dots >>> based on that number. >>> >>> >>> >>> The python script doesn't really have any interesting code in it. But >>> here is the function that takes an ASCII braille character and returns a >>> number representing the dots required to generate it: >>> >>> >>> function brailleCode(character) = search(character," >>> a1b'k2l@cif/msp\"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\\0z7(_?w]#y)=")[0]; >>> >>> >>> Note: The character string in the function came from the wikipedia page >>> on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII >>> _______________________________________________ >>> OpenSCAD mailing list >>> To unsubscribe send an email to discuss-leave@lists.openscad.org >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org
JH
John Heim
Sat, Aug 13, 2022 11:03 PM

Thanks. This is one of the main reasons I am posting here. I'll give it
a try (if I can figure out how).

But one of the more difficult aspects of reading braille is making out
the dots. Making them rounder might make it harder to read. Its worth a
try though.

On 8/13/22 17:16, Father Horton wrote:

From a practical aspect, you might be better off using spheres
(distorted if necessary) for the dots. I'd think the rough edges would
be hard on finger.

On Sat, Aug 13, 2022 at 5:04 PM Father Horton fatherhorton@gmail.com
wrote:

 What sort of feedback do you want? What you've written seems to
 work. I might have written it differently, but your style is your
 style.

 On Sat, Aug 13, 2022 at 2:04 PM John Heim
 <sconnie.johnnie@gmail.com> wrote:

     Hi, I have a goal of creating a system to generate 3D floor
     maps for the
     blind. I want to take a hotel floor plan and generate a 3D
     version of it
     for conventions. To start, I just want to be able to put
     braille on a
     surface. There are several projects on github to generate
     braille but I
     found them inadequate mainly because they don't do the
     translation from
     plain text to braille well. I think I've written code to do that.

     I've attached a python script and a OpenScad file. The python
     program
     takes plain text, converts it to ASCII braille, and forks an
     OpenScad
     process to create a plaque with the braille on it. Well,
     that's what it
     is supposed to do.

     I am looking for feedback on what I've written so far.

     To try the system, download the 2 attached files and make the
     python
     script executable. You will need some standard python
     libraries most
     notably louis which is the ASCII braille translation library.
     "pip
     install louis" ought to do it.

     Then do this:


     $ brailleSign.py -t"Hello, world!"


     You can change the text to anything you want.

     The OpenScad code contains a function that converts an ASCII
     braille
     code to a number. That number represents the dots needed to
     generate the
     character in braille. The letter 'a' is just dot 1. Therefore,
     the
     function returns a 1 for the character 'a'.  The letter 'c' is
     dots 1
     and 4. The function therefore returns the number 9 (1 + 2^4)
     for the
     letter 'c'.

     Then there is another function that takes a number and
     generates dots
     based on that number.



     The python script doesn't really have any interesting code in
     it. But
     here is the function that takes an ASCII braille character and
     returns a
     number representing the dots required to generate it:


     function brailleCode(character) = search(character,"
     a1b'k2l@cif/msp\"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\\0z7(_?w]#y)=")[0];


     Note: The character string in the function came from the
     wikipedia page
     on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII
     _______________________________________________
     OpenSCAD mailing list
     To unsubscribe send an email to discuss-leave@lists.openscad.org

OpenSCAD mailing list
To unsubscribe send an email todiscuss-leave@lists.openscad.org

Thanks. This is one of the main reasons I am posting here. I'll give it a try (if I can figure out how). But one of the more difficult aspects of reading braille is making out the dots. Making them rounder might make it harder to read. Its worth a try though. On 8/13/22 17:16, Father Horton wrote: > From a practical aspect, you might be better off using spheres > (distorted if necessary) for the dots. I'd think the rough edges would > be hard on finger. > > On Sat, Aug 13, 2022 at 5:04 PM Father Horton <fatherhorton@gmail.com> > wrote: > > What sort of feedback do you want? What you've written seems to > work. I might have written it differently, but your style is your > style. > > On Sat, Aug 13, 2022 at 2:04 PM John Heim > <sconnie.johnnie@gmail.com> wrote: > > Hi, I have a goal of creating a system to generate 3D floor > maps for the > blind. I want to take a hotel floor plan and generate a 3D > version of it > for conventions. To start, I just want to be able to put > braille on a > surface. There are several projects on github to generate > braille but I > found them inadequate mainly because they don't do the > translation from > plain text to braille well. I think I've written code to do that. > > I've attached a python script and a OpenScad file. The python > program > takes plain text, converts it to ASCII braille, and forks an > OpenScad > process to create a plaque with the braille on it. Well, > that's what it > is supposed to do. > > I am looking for feedback on what I've written so far. > > To try the system, download the 2 attached files and make the > python > script executable. You will need some standard python > libraries most > notably louis which is the ASCII braille translation library. > "pip > install louis" ought to do it. > > Then do this: > > > $ brailleSign.py -t"Hello, world!" > > > You can change the text to anything you want. > > The OpenScad code contains a function that converts an ASCII > braille > code to a number. That number represents the dots needed to > generate the > character in braille. The letter 'a' is just dot 1. Therefore, > the > function returns a 1 for the character 'a'.  The letter 'c' is > dots 1 > and 4. The function therefore returns the number 9 (1 + 2^4) > for the > letter 'c'. > > Then there is another function that takes a number and > generates dots > based on that number. > > > > The python script doesn't really have any interesting code in > it. But > here is the function that takes an ASCII braille character and > returns a > number representing the dots required to generate it: > > > function brailleCode(character) = search(character," > a1b'k2l@cif/msp\"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\\0z7(_?w]#y)=")[0]; > > > Note: The character string in the function came from the > wikipedia page > on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email todiscuss-leave@lists.openscad.org
DP
David Phillip Oster
Sat, Aug 13, 2022 11:08 PM

Thanks. This is one of the main reasons I am posting here. I'll give it a
try (if I can figure out how).

But one of the more difficult aspects of reading braille is making out the
dots. Making them rounder might make it harder to read. Its worth a try
though.

On 8/13/22 17:16, Father Horton wrote:

From a practical aspect, you might be better off using spheres (distorted
if necessary) for the dots. I'd think the rough edges would be hard on
finger.

On Sat, Aug 13, 2022 at 5:04 PM Father Horton fatherhorton@gmail.com
wrote:

What sort of feedback do you want? What you've written seems to work. I
might have written it differently, but your style is your style.

On Sat, Aug 13, 2022 at 2:04 PM John Heim sconnie.johnnie@gmail.com
wrote:

Hi, I have a goal of creating a system to generate 3D floor maps for the
blind. I want to take a hotel floor plan and generate a 3D version of it
for conventions. To start, I just want to be able to put braille on a
surface. There are several projects on github to generate braille but I
found them inadequate mainly because they don't do the translation from
plain text to braille well. I think I've written code to do that.

I've attached a python script and a OpenScad file. The python program
takes plain text, converts it to ASCII braille, and forks an OpenScad
process to create a plaque with the braille on it. Well, that's what it
is supposed to do.

I am looking for feedback on what I've written so far.

To try the system, download the 2 attached files and make the python
script executable. You will need some standard python libraries most
notably louis which is the ASCII braille translation library. "pip
install louis" ought to do it.

Then do this:

$ brailleSign.py -t"Hello, world!"

You can change the text to anything you want.

The OpenScad code contains a function that converts an ASCII braille
code to a number. That number represents the dots needed to generate the
character in braille. The letter 'a' is just dot 1. Therefore, the
function returns a 1 for the character 'a'.  The letter 'c' is dots 1
and 4. The function therefore returns the number 9 (1 + 2^4) for the
letter 'c'.

Then there is another function that takes a number and generates dots
based on that number.

The python script doesn't really have any interesting code in it. But
here is the function that takes an ASCII braille character and returns a
number representing the dots required to generate it:

function brailleCode(character) = search(character,"
a1b'k2l@cif/msp"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\0z7(_?w]#y)=")[0];

Note: The character string in the function came from the wikipedia page
on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

I posted about this, with source code: https://old.reddit.com/r/3Dprinting/comments/tvkqs9/my_4th_grader_was_learning_about_braille_enter and https://old.reddit.com/r/3Dprinting/comments/tvkqs9/my_4th_grader_was_learning_about_braille_enter/i3dfqxk/ On Sat, Aug 13, 2022 at 4:04 PM John Heim <sconnie.johnnie@gmail.com> wrote: > Thanks. This is one of the main reasons I am posting here. I'll give it a > try (if I can figure out how). > > But one of the more difficult aspects of reading braille is making out the > dots. Making them rounder might make it harder to read. Its worth a try > though. > > > On 8/13/22 17:16, Father Horton wrote: > > From a practical aspect, you might be better off using spheres (distorted > if necessary) for the dots. I'd think the rough edges would be hard on > finger. > > On Sat, Aug 13, 2022 at 5:04 PM Father Horton <fatherhorton@gmail.com> > wrote: > >> What sort of feedback do you want? What you've written seems to work. I >> might have written it differently, but your style is your style. >> >> On Sat, Aug 13, 2022 at 2:04 PM John Heim <sconnie.johnnie@gmail.com> >> wrote: >> >>> Hi, I have a goal of creating a system to generate 3D floor maps for the >>> blind. I want to take a hotel floor plan and generate a 3D version of it >>> for conventions. To start, I just want to be able to put braille on a >>> surface. There are several projects on github to generate braille but I >>> found them inadequate mainly because they don't do the translation from >>> plain text to braille well. I think I've written code to do that. >>> >>> I've attached a python script and a OpenScad file. The python program >>> takes plain text, converts it to ASCII braille, and forks an OpenScad >>> process to create a plaque with the braille on it. Well, that's what it >>> is supposed to do. >>> >>> I am looking for feedback on what I've written so far. >>> >>> To try the system, download the 2 attached files and make the python >>> script executable. You will need some standard python libraries most >>> notably louis which is the ASCII braille translation library. "pip >>> install louis" ought to do it. >>> >>> Then do this: >>> >>> >>> $ brailleSign.py -t"Hello, world!" >>> >>> >>> You can change the text to anything you want. >>> >>> The OpenScad code contains a function that converts an ASCII braille >>> code to a number. That number represents the dots needed to generate the >>> character in braille. The letter 'a' is just dot 1. Therefore, the >>> function returns a 1 for the character 'a'. The letter 'c' is dots 1 >>> and 4. The function therefore returns the number 9 (1 + 2^4) for the >>> letter 'c'. >>> >>> Then there is another function that takes a number and generates dots >>> based on that number. >>> >>> >>> >>> The python script doesn't really have any interesting code in it. But >>> here is the function that takes an ASCII braille character and returns a >>> number representing the dots required to generate it: >>> >>> >>> function brailleCode(character) = search(character," >>> a1b'k2l@cif/msp\"e3h9o6r^djg>ntq,*5<-u8v.%[$+x!&;:4\\0z7(_?w]#y)=")[0]; >>> >>> >>> Note: The character string in the function came from the wikipedia page >>> on ASCII braille, https://en.wikipedia.org/wiki/Braille_ASCII >>> _______________________________________________ >>> OpenSCAD mailing list >>> To unsubscribe send an email to discuss-leave@lists.openscad.org >>> >> > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
MM
Michael Marx
Sun, Aug 14, 2022 1:21 AM

Johnnie,

You used:

cylinder (dotHeight, dotDiameter / 2, true);

which produces an inverse tapered cylinder, ie _/

From the wiki:

NOTES:

The 2nd & 3rd positional parameters are r1 & r2, if r, d, d1 or d2 are used they must be named.

Using r1 & r2 or d1 & d2 with either value of zero will make a cone shape, a non-zero non-equal value will produce a section of a cone (a Conical https://en.wikipedia.org/wiki/Frustum  Frustum).

r1 & d1 define the base width, at [0,0,0], and r2 & d2 define the top width.

Basically the safe rule of thumb, use 'h=' & either 'r=' or 'd=' & if you center always use 'center='

I think you wanted:

cylinder(h=dotHeight, d=dotDiameter, center=true);

Also note center=true makes half the cylinder below z=0, so the effective height is halved.

That may be your intent to embed the cylinder into the base.

If not:

translate([floor(idx / 3) * dotSpacing, - ((idx % 3) * dotSpacing), -0.01])  // make sure the cylinder is embedded INTO the base.

cylinder(h=dotHeight, d=dotDiameter);

If you want a sphere try:

scale([1,1,dotHeight/dotDiameter*2]) sphere(d=dotDiameter); // play with the *2


From: John Heim [mailto:sconnie.johnnie@gmail.com]
Sent: Sun, 14 Aug 2022 09:04
To: OpenSCAD general discussion; Father Horton
Subject: [OpenSCAD] Re: Better Braille

Thanks. This is one of the main reasons I am posting here. I'll give it a try (if I can figure out how).

But one of the more difficult aspects of reading braille is making out the dots. Making them rounder might make it harder to read. Its worth a try though.

On 8/13/22 17:16, Father Horton wrote:

From a practical aspect, you might be better off using spheres (distorted if necessary) for the dots. I'd think the rough edges would be hard on finger.

To unsubscribe send an email to discuss-leave@lists.openscad.org

--
This email has been checked for viruses by AVG.
https://www.avg.com

Johnnie, You used: cylinder (dotHeight, dotDiameter / 2, true); which produces an inverse tapered cylinder, ie \_/ From the wiki: NOTES: The 2nd & 3rd positional parameters are r1 & r2, if r, d, d1 or d2 are used they must be named. Using r1 & r2 or d1 & d2 with either value of zero will make a cone shape, a non-zero non-equal value will produce a section of a cone (a Conical <https://en.wikipedia.org/wiki/Frustum> Frustum). r1 & d1 define the base width, at [0,0,0], and r2 & d2 define the top width. Basically the safe rule of thumb, use 'h=' & either 'r=' or 'd=' & if you center always use 'center=' I think you wanted: cylinder(h=dotHeight, d=dotDiameter, center=true); Also note center=true makes half the cylinder below z=0, so the effective height is halved. That may be your intent to embed the cylinder into the base. If not: translate([floor(idx / 3) * dotSpacing, - ((idx % 3) * dotSpacing), -0.01]) // make sure the cylinder is embedded INTO the base. cylinder(h=dotHeight, d=dotDiameter); If you want a sphere try: scale([1,1,dotHeight/dotDiameter*2]) sphere(d=dotDiameter); // play with the *2 _____ From: John Heim [mailto:sconnie.johnnie@gmail.com] Sent: Sun, 14 Aug 2022 09:04 To: OpenSCAD general discussion; Father Horton Subject: [OpenSCAD] Re: Better Braille Thanks. This is one of the main reasons I am posting here. I'll give it a try (if I can figure out how). But one of the more difficult aspects of reading braille is making out the dots. Making them rounder might make it harder to read. Its worth a try though. On 8/13/22 17:16, Father Horton wrote: From a practical aspect, you might be better off using spheres (distorted if necessary) for the dots. I'd think the rough edges would be hard on finger. To unsubscribe send an email to discuss-leave@lists.openscad.org -- This email has been checked for viruses by AVG. https://www.avg.com
AM
Adrian Mariano
Sun, Aug 14, 2022 1:27 AM

If you want to comply with ADA sign regulations, it appears that you must
use a hemisphere for your braille dots.

https://greendotsign.com/braille-signage/

"Braille shall have a domed or rounded shape, not flat or pointed."  And
their dimensional pictures show a hemispherical form.

On Sat, Aug 13, 2022 at 9:22 PM Michael Marx michael@marx.id.au wrote:

Johnnie,

You used:

cylinder (dotHeight, dotDiameter / 2, true);

which produces an inverse tapered cylinder, ie _/

From the wiki:

NOTES:

The 2nd & 3rd positional parameters are r1 & r2, if r, d, d1 or d2 are
used they must be named.

Using r1 & r2 or d1 & d2 with either value of zero will make a cone shape,
a non-zero non-equal value will produce a section of a cone (a Conical
Frustum https://en.wikipedia.org/wiki/Frustum).

r1 & d1 define the base width, at [0,0,0], and r2 & d2 define the top
width.

Basically the safe rule of thumb, use 'h=' & either 'r=' or 'd=' & if you
center always use 'center='

I think you wanted:

cylinder(h=dotHeight, d=dotDiameter, center=true);

Also note center=true makes half the cylinder below z=0, so the effective
height is halved.

That may be your intent to embed the cylinder into the base.

If not:

translate([floor(idx / 3) * dotSpacing, - ((idx % 3) * dotSpacing),
-0.01])  // make sure the cylinder is embedded INTO the base.

cylinder(h=dotHeight, d=dotDiameter);

If you want a sphere try:

scale([1,1,dotHeight/dotDiameter*2]) sphere(d=dotDiameter); // play with
the *2


From: John Heim [mailto:sconnie.johnnie@gmail.com]
Sent: Sun, 14 Aug 2022 09:04
To: OpenSCAD general discussion; Father Horton
Subject: [OpenSCAD] Re: Better Braille

Thanks. This is one of the main reasons I am posting here. I'll give it a
try (if I can figure out how).

But one of the more difficult aspects of reading braille is making out the
dots. Making them rounder might make it harder to read. Its worth a try
though.

On 8/13/22 17:16, Father Horton wrote:

From a practical aspect, you might be better off using spheres (distorted
if necessary) for the dots. I'd think the rough edges would be hard on
finger.

To unsubscribe send an email to discuss-leave@lists.openscad.org

http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient Virus-free.
www.avg.com
http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient
<#m_-2788381951141441943_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

If you want to comply with ADA sign regulations, it appears that you *must* use a hemisphere for your braille dots. https://greendotsign.com/braille-signage/ "Braille shall have a domed or rounded shape, not flat or pointed." And their dimensional pictures show a hemispherical form. On Sat, Aug 13, 2022 at 9:22 PM Michael Marx <michael@marx.id.au> wrote: > Johnnie, > > > > You used: > > cylinder (dotHeight, dotDiameter / 2, true); > > which produces an inverse tapered cylinder, ie \_/ > > > > From the wiki: > > > > NOTES: > > The 2nd & 3rd positional parameters are r1 & r2, if r, d, d1 or d2 are > used they must be named. > > Using r1 & r2 or d1 & d2 with either value of zero will make a cone shape, > a non-zero non-equal value will produce a section of a cone (a Conical > Frustum <https://en.wikipedia.org/wiki/Frustum>). > > r1 & d1 define the base width, at [0,0,0], and r2 & d2 define the top > width. > > > > Basically the safe rule of thumb, use 'h=' & either 'r=' or 'd=' & if you > center always use 'center=' > > I think you wanted: > > cylinder(h=dotHeight, d=dotDiameter, center=true); > > > > Also note center=true makes half the cylinder below z=0, so the effective > height is halved. > > That may be your intent to embed the cylinder into the base. > > If not: > > translate([floor(idx / 3) * dotSpacing, - ((idx % 3) * dotSpacing), > -0.01]) // make sure the cylinder is embedded INTO the base. > > cylinder(h=dotHeight, d=dotDiameter); > > > > If you want a sphere try: > > scale([1,1,dotHeight/dotDiameter*2]) sphere(d=dotDiameter); // play with > the *2 > > > > > ------------------------------ > > *From:* John Heim [mailto:sconnie.johnnie@gmail.com] > *Sent:* Sun, 14 Aug 2022 09:04 > *To:* OpenSCAD general discussion; Father Horton > *Subject:* [OpenSCAD] Re: Better Braille > > > > Thanks. This is one of the main reasons I am posting here. I'll give it a > try (if I can figure out how). > > But one of the more difficult aspects of reading braille is making out the > dots. Making them rounder might make it harder to read. Its worth a try > though. > > > > On 8/13/22 17:16, Father Horton wrote: > > From a practical aspect, you might be better off using spheres (distorted > if necessary) for the dots. I'd think the rough edges would be hard on > finger. > > > > To unsubscribe send an email to discuss-leave@lists.openscad.org > > > > <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient> Virus-free. > www.avg.com > <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient> > <#m_-2788381951141441943_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >