<teepee>
you have to give it a font that has the chinese character, OpenSCAD does not automatically pick one
<king>
ok
king has quit [Quit: Client closed]
ochafik has quit [Remote host closed the connection]
ochafik has joined #openscad
ochafik has quit [Remote host closed the connection]
mhroncok has joined #openscad
mhroncok has quit [Client Quit]
mhroncok has joined #openscad
ochafik has joined #openscad
ochafik has quit [Remote host closed the connection]
GNUmoon has quit [Remote host closed the connection]
GNUmoon has joined #openscad
mhroncok has quit [Ping timeout: 240 seconds]
mhroncok has joined #openscad
ochafik has joined #openscad
ham5urg has joined #openscad
<ham5urg>
How do I round the edges of such a polyhedron? I would like to round only the 3 edges the faces are touching each other. https://paste.debian.net/1223705/
<teepee>
ham5urg: I would use one of the libraries supporting rounded objects
<ham5urg>
teepee, is there a lib which can round a polyhedron? Some edges would need different radiuses.
<teepee>
at least 2 dedicated ones on the library page, the big libs probably have something too
<teepee>
Round Anything
<teepee>
OpenSCAD Smooth Primitives Library
<teepee>
well rounding a finished polyhedron is no happening other than with minkowski or so
<InPhase>
ham5urg: Note that what you created is not a manifold polyhedron because it has not been closed, and thus you cannot do computational geometry on it as-is.
<ham5urg>
Ahh, the polyhedron is not closed, even if it has a thickness?
<teepee>
closed means basically you can bore a hole and fill water in
<teepee>
polyhedron with just 3 sides does not do that :)
<ham5urg>
Hehe, ok.
<teepee>
if you select "thrown-together" mode, you essentially have to close such that none of the pink-ish sides show
<teepee>
oh, which also shows the 2 walls are facing outwards, the pink color is the inside
ochafik has joined #openscad
<ham5urg>
Is there another way possible, like to create the object out of planes which are not connected? After plane-creation, I would like too add round edges between the planes later. After all, I would get a hollow but closed shell.
<ham5urg>
How could I fill the gap with round edges?
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
mhroncok has quit [Quit: Leaving.]
<teepee>
I guess the answer is no and yes
<teepee>
not with polyhedron() directly
<teepee>
but the closepoints library may come near as you can define points via formula and it will create a closed shape for that
PovilasCNC has quit [Ping timeout: 240 seconds]
<ham5urg>
I'm looking into it right now. Trying to understand it.
<teepee>
maybe this could be a useful new example for the library too
<teepee>
what's the shape you are after, like a box with rounding on 3 sides?
<ham5urg>
I want to build a rounded keyboard for each hand, an ortholinear keyboard. But I'm unsure if I can invest enough time as it is hard to construct.
<ham5urg>
The closepoints lib. examples are hard to understand. The point-arrays are constructed out of loops. Idk at this moment how that can help as I have fixed points.
<ham5urg>
Each keyboard (left-, right-hand) could consist of two pieces, upper piece and the bottom piece. Together it would be a closed shell, but each is not a closed shell.
<teepee>
I think I saw some existing code for something like that on github
<teepee>
maybe customizing an existing one can save some time
<ham5urg>
There are many keyboards out there but I wanted to construct a new type. Some keyboards have there own page where each can enter its parameters and the keyboard will get out just fine. But I would like to construct a new type of keyboard.
<ham5urg>
Is there more code using closepoints out there? Until now I did not managed to create two planes with a gap and connecting these with closepoints.
GNUmoon has quit [Ping timeout: 276 seconds]
GNUmoon has joined #openscad
<Jack45>
ham5urg maybe a hull would help you .. just place spheres of the desired rounding as corners.. also remove what you not need later
<Jack45>
ah hamburg .. Ü
arebil has joined #openscad
ochafik has quit [Remote host closed the connection]
ochafik has joined #openscad
SamantazFox_ has quit [Ping timeout: 260 seconds]
<ham5urg>
Jack45, has you used closepoints? Do you have an example?
ochafik has quit [Ping timeout: 240 seconds]
<Jack45>
i have you need the path and the points as input
<Jack45>
not sure how it would help with your problem though
<Jack45>
so you just put your polygon with a z information into that. like [[0,1,0],[1,0,0],[0,0,0]] then for z=1 and so on
<Jack45>
this would have two levels (slices or polygon sets point sets or loops ) one at 0 one at 5
<Jack45>
as i said for you case just use hull and spheres .. or you have to change the polygon to form a round edge along z (which i assume is new for you)
<ham5urg>
Jack45, thanks, first time I get something rendered.
<Jack45>
inPhase: you may add this super simple example to your demo - Ü
<Jack45>
ham5urg where do you need rounded corners with different diameter? can't you extrude a profile and use minkowski ?
<ham5urg>
Jack45, the holes for keyboard-switches shall not be rounded or just a tiny bit, the case itself shall be rounded on its outer side, on the inner side not everywhere.
<Jack45>
you will not make this as one polyhedron so is there any cube (or prism) that have different rounded corners ?
<Jack45>
minkowski(){cube(10);sphere(.75);}
<Jack45>
instead of the cube you can use your polyhedron (if it is closed)
<Jack45>
you can not construct faces as polyhedrons and put them together.. you can use hull (as i did in the example) to close your faces
<Jack45>
but this will always be convex
<jdccdevel>
Good Day! Has anyone had success modelling trapezoidal threads for 3d printing? If so, what library would you recommend?
trashbird has joined #openscad
* teepee
points to Jack45 :)
<teepee>
maybe the library supports that?
<Jack45>
yes this can be done
<Jack45>
however printing at 90° will require supports you don't want to remove ..
ochafik has joined #openscad
<Jack45>
another option is to use any other lib and union with a cylinder bit bigger than the core and and intersection with a cylinder bit smaller then diameter
<Jack45>
or use<ub.scad>Gewinde(dn=8,h=30,g=4,winkel=45,breite=.5,p=8);
<teepee>
right, printing might be a challenge
<teepee>
may need thin layers
<teepee>
well, when talking "normal" FDM printers anyway
<Scopeuk>
I#ve seen a few experiments doing partial screws via fdm that have been interesting, knocking one threaded side flat so it can sit on it and print along its length (sheer load not across layer lines)
<Jack45>
you can print 90° as it is attaching to the already printed edge but it is an overhang so it is not clean .. with resin (or sls) this probably works
<jdccdevel>
Interesting! I've been using the BOSL library so far, (It supports trapezoidal threads) but when I print them they bind as soon as any pressure is applied. As far as I can tell, they've printed accurate to the model. No issues with overhangs or supports, they're self supporting when printed vertically.
<Jack45>
scopeuk so you say printing halfs and glue together?
<Jack45>
also using a metal core glued in with epoxy may help
<jdccdevel>
I could try printing 2 halves horizontally, and glue together. That would at least tell me if the thread form is good.
ochafik has joined #openscad
ham5urg_ has joined #openscad
<Jack45>
jdccdevel you use grease or?
<jdccdevel>
I'll look into the ub.scad library... It looks like it'll have a lot more options for customizing the thread form.
ochafik has quit [Ping timeout: 256 seconds]
<InPhase>
jdccdevel: You can't model threads accurately to what you want the prints to be.
<Jack45>
let me know if you need help
ham5urg has quit [Ping timeout: 240 seconds]
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
<InPhase>
jdccdevel: I concur Jack45's library is the right one to go with for trapezoidal threads. In my own threading library I had to put extensive effort into embedded clearance offsets though to move external threads in and internal threads outward to account for things like printing jitter and plastic shrinkage, which will seize up any threads when this is not accounted for.
<InPhase>
(Mine does not do trapezoidal though.)
<InPhase>
(It targets standard metric threading compatibility.)
<jdccdevel>
Jack45: I haven't greased them (yet). I think I need to narrow the profile of the outside threads slightly, so the inside doesn't bind with the outside in the root of the thread. The BOSL library I'm using now just has a "slop" parameter, just makes the hole bigger in diameter.
<Jack45>
every trapezoid thread (ACME 29°) will jam and bind under load if not greased
<Jack45>
and plastic tends to stick .. PETG is a bit better .. POW can work without grease
<jdccdevel>
Anothe issue is when I print them (Vertically) the layer lines on the inside and outside threads line up around the perimeter, causing a ratcheting effect. I'm hoping a slicer setting may be able to mitigate that, but grease will definitely help too.
<InPhase>
jdccdevel: With standard PLA on typical 0.4mm nozzle printers, the results I got are that external threads (like a screw) need to be 0.1mm bigger in model diameter to match the printed size, as shrinkage tends to dominate over jitter for this. Internal threads (i.e. threaded holes) need to be 1% bigger than the specified diameter plus 0.4mm.
<InPhase>
jdccdevel: This seems to result in threads that come out matching what's needed for the nominal values, and that go together decently when printed on most people's printers.
ochafik has joined #openscad
<Jack45>
jdccdevel you can print helical (vase) to minimize ratcheting - but you need to fill the print (or use other printing tricks)
ochafik has quit [Ping timeout: 256 seconds]
ur5us has joined #openscad
arebil has joined #openscad
ochafik has joined #openscad
ochafik has quit [Ping timeout: 268 seconds]
<Scopeuk>
Jack45 in the case i saw they did one piece with two flat surfaces as if a screw had been filed down
ochafik has joined #openscad
NonICE is now known as Non-ICE
<Jack45>
scopeuk ah so double halfround .. i used this technique to print (working) 1.5mm screws https://imgur.com/a/dvxREHx
ochafik has quit [Ping timeout: 240 seconds]
ur5us has quit [Ping timeout: 268 seconds]
<jdccdevel>
Jack45: Are you a developer for the UB.scad library?
<Jack45>
yes
<Jack45>
jdccdevel found some U_ndefined B_ehavior ? Ü
<jdccdevel>
Just wanted to confirm what version of OpenSCAD you're targeting?
<Jack45>
it should work with 21 but i am using the nightly 21.12 having issues with 21.01 ?
<Jack45>
ah there was a comma .. just updated
<jdccdevel>
Jack45: Thanks! I was getting a syntax error, turns out I'm using a 2019.05 appimage. (I'll upgrade and see)
<Jack45>
2019 is not supporting literals so this is sadly not working anymore
<jdccdevel>
Jack45: Good to know! A suggestion: You may want to add a note in the readme, and a "minimum version required" comment in the Demo code. (Apologies if it's already there, I didn't see one.)
<Jack45>
yeah i tried to catch this with assert but as the code isn't running on 19.05 - it can't show a msg
<jdccdevel>
Jack45: Yeah, it dies with syntax errors, so it doesn't even parse.
<Jack45>
have added a note .. thanks for suggesting
ochafik has joined #openscad
<jdccdevel>
Jack45: Looks like there are some issues with the demo code... I'm getting a lot of "Undefined operation" warnings when I try to show "products" for example.
ochafik has quit [Ping timeout: 252 seconds]
peeps[win] has quit [Read error: Connection reset by peer]
peeps[win] has joined #openscad
default_ has quit [Ping timeout: 240 seconds]
<Jack45>
jdccdevel running fine here .. let me try with v21.01
default_ has joined #openscad
<jdccdevel>
Jack45: I'm using the 21.01 Appimage, and the first warning is "unknown variable $idx" in line 2373
<Jack45>
jdccdevel .. you are right v21.01 does that .. but demo is to create the help .. try examples.scad for examples
<jdccdevel>
Jack45: Same error... just line 2355 this time.
<Jack45>
oh great now it just closed .. let's say i really don't like version 21.01
<Jack45>
maybe easier to say .. use ub.scad from version > 21.01 .. Ü .. hope v22 will release soon .. however i have to look into this why there are so many issues
<Jack45>
seems this is all caused by a helper module to arrange things ( which you are only use for making pictures )
<jdccdevel>
Jack45: From what I can see, it looks like this "ignoring unknown variable $idx" warning is part of the root cause. Most of the other errors I'm getting are related to undefined operations... which would seem to foolow.
<jdccdevel>
follow
<Jack45>
i just checked and $idx is defined - it is probably a bug in v21.01 which got fixed
<Jack45>
jdccdevel here just a fix for you .. add $idx=0; at the top
<jdccdevel>
Jack45: I just did that, lol!
snaked has quit [Ping timeout: 268 seconds]
<Jack45>
yeah it will only show the object with $idx=0;
<Jack45>
but i can't fix this in the library as it is caused by openSCAD not passing that special variable to children
<jdccdevel>
Jack45: (Global variable strike again!) Can't you manually define it in the call? I've seen that before for $fn and circles.
<jdccdevel>
sorry, cylinders.
<Jack45>
the point is that it is an index .. so every child need a different index to be called
<Jack45>
Linear(){
<Jack45>
if($idx)cube();
<Jack45>
else sphere();
<Jack45>
}
<Jack45>
which is working here .. but somehow when calling with an other module it is not
<Jack45>
ok i found out why this happens .. i reassign $idx to another variable .. and v21.01 don't like that
<Jack45>
but i had to make that change (recently) to circumvent another problem .. maybe i can revert that
<Jack45>
seems it solved some issues and you get something to view
little_blossom has quit [Quit: little_blossom]
lastrodamo has quit [Quit: Leaving]
snaked has joined #openscad
little_blossom has joined #openscad
<Jack45>
jdccdevel so updated and uploaded ub.scad - now examples will show you something (still some warnings left)
<Jack45>
for demo there is no fix as i revert the order so i have to assign $idx (or rewrite the code for a bug that shouldn't exist)
_xxoxx has joined #openscad
Junxter has quit [Ping timeout: 260 seconds]
<jdccdevel>
Jack45: Thanks, that appears to be working much better. Just a few "Greater than the number of modules on the stack" warnings.
_xxoxx has quit [Client Quit]
<Jack45>
jdccdevel if you replace the module "Anordnen()" and then selectivly activate one object with ! this should work
<Jack45>
in the demo file ..
<Jack45>
the other seems to be another bug that got fixed
<Jack45>
the lib does some shit behind to allow certain functionality
<Jack45>
i can only suggest to install 21.12.16 Ü as there are a lot things working better (cuz openSCAD devTeam does a great job fixing things)
<jdccdevel>
Jack45: I'll have to take another look in a bit, I have to go now. Thanks for your help! I'll take a look at the library in more detail later.
ur5us has joined #openscad
<jdccdevel>
Unfortunately, 21.01 is probably going to be around for a while, both the windows and mac installers are that version. Good Luck!