Door hex python union inverse

I wanted to make a door for shogun19 and therefore of course opened my python terminal

import random
import matplotlib.pyplot as plt

alphabets = ['260','2650','1F600']
lengths = [100,50,50]
vals = [int(a,base=16) for a in alphabets]
for v,n in zip(vals,lengths):
    for i in range(v,v+n):
        x,y = random.random(),random.random()
        angle = random.random()*360
        plt.text(x, y, chr(i), fontsize=16, rotation=angle)  
fig.savefig('door.eps', format='eps')

Now I’d like to continue in this vein until the image is mostly black with characters, then get the remaining white portions as vector output suitable for a laser cutter. I wanna avoid large chunks of the door falling out due to big bordered areas
who knows how to do that? I can save the figure as .eps which is vector.
I guess I import that to inkscape and do the union /inversion there?
Also if anyone knows how to avoid the missing glyphs (‘RuntimeWarning: Glyph 12297 missing from current font.’) , those wind up looking like doors, ironically enough and i can’t seem to catch them with a try-except. Maybe this is what Jim Morrison was trying to warn us about

i guess i can just use few enough chars that i go with the direct output and not union . if i force their laser to go back over the same lines a bunch of times i pay for it.

also If anybody has favorite unicode blocks throw the hex into the list of alphabets

im missing fonts on the cloud[1]
digging[2] for solution.

tami should have a colab server of her own


I put updated code at our git

still not 100% what you’re looking for, im pretty versed in inkscape/svg shenanigans. but can you sketch the end result so i understand ?

I wanted to lasercut a bunch of random characters into a metal slab for a door - my latest version uses specific fonts for some unicode ranges to avoid the ‘missing glyph’ problem.

I had thought I could use so many overlapping black letters that I would just lasercut out the white non-letter spaces that remain , but to keep things simple we can just use a limited number of letters. Maybe when the thing is saved as .ps all the black overlapping areas already get unioned as it is.

One thing that would be nice to solve is prevent smiley faces from all winding up as empty circles since they all start with a circle and different stuff in the middle, that will all get cut out by the laser. I guess I can correct those by hand in inkscape

to combat the black hole syndrome you need to select all, unlink[1] , ungroup[2] (several times) then convert objects to path[3]

monitor the status bar at the bottom of inkcape
you’ll see how many groups/object/path you have elected. you want to be left with only paths

[1] shift+alt+D
[3] shift+ctrl+G
[2] shift+ctrl+C

ok tkx i will give it a shot

I got price quotes for cutting the test file in this thread, 3mm thickness ‘black iron’ 1800NIS, 5mm black iron 3300NIS , quote from “A.R.G. Cutting Solutions LTD”
I guess he was calculating using 1m x 1m area , the actual dxf dimensions fit on an A4 size as far as I can tell (inkscape wont open my dxf and edrawings measuring tool doesnt work

At those rates i’ll check acid etch

The door size is 180cm width x 210cm height , or 300cm height if we replace the top windows
from sales at :

1800mm X 1050mm x 5mm X 2 units (yes i confused the width with the height) 800 NIS 250NIS shipping

there is also the second entrance that we usually use ,
90cm width x 208 cm height or 290cm height including window

I’ll check for more prices .
In meantime any thoughts on full height vs. keep windows, is 5mm thickness over/under doing it , better design welcome in .ps or other vector, etc.

A cooler alternative is picking up scrap sheet from a junkyard, in haifa i know the junkyards but not in merkaz - anyone familiar with places doing metal scrapping?

shlomi 0547876011 from may have info

at $90/ton for scrap metal (in the US anyway) this would be way cheaper too
7.8g/cm^3 * 180cm * 105cm * 0.5cm * 1kg/1000g * 90$/ton * 1ton/1000kg ~ 7$

did you see this post ? i have some renders there

i would like to work on the doors too :smiley: let’s combine forces