fling has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
fling has joined #openscad
myosotis has joined #openscad
fling has quit [Ping timeout: 240 seconds]
fling has joined #openscad
ur5us_ has joined #openscad
LordOfBikes has quit [Ping timeout: 252 seconds]
ur5us_ has quit [Ping timeout: 240 seconds]
myosotis has quit [Quit: myosotis]
LordOfBikes has joined #openscad
fling has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
fling has joined #openscad
ur5us_ has joined #openscad
J2246899 has joined #openscad
J22468 has quit [Ping timeout: 256 seconds]
fling has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
fling has joined #openscad
fling has quit [Ping timeout: 240 seconds]
fling has joined #openscad
arebil has joined #openscad
ur5us_ has quit [Ping timeout: 240 seconds]
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
KimK has joined #openscad
fling has quit [Remote host closed the connection]
fling has joined #openscad
ur5us_ has joined #openscad
fling has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
fling has joined #openscad
ferdna has quit [Quit: Leaving]
mmiscool-Autodro has joined #openscad
<mmiscool-Autodro>
Ahoys
<mmiscool-Autodro>
Recently set up OpenSCAD.cloud and wanted to reach out and see what kinds of collaboration might be possible with the primary OpenSCAD project.
arebil has joined #openscad
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
<mmiscool-Autodro>
So the editor available on openSCAD.cloud allows for multi file projects. You could add what ever files you want including libraries.
<J22>
sure i always can add the library on top of a project file - the nice thing is if some are already available .. like the MCAD or standard libraries
<mmiscool-Autodro>
I need to make a list of the common ones and look at the licences.l
<mmiscool-Autodro>
Would probably add some thing that would allow you to pick libraries to be added to a project. Not just include them all by default.
<pingufanGH>
Hello. I want to create a NUT matching the trapezoid thread of an old SodaStream bottle. I try to understand "threads.scad", but I totally stuck. It should work with " thread_polyhedron(), but I didn't get any thread generated yet.
<pingufanGH>
Can somebody help me, please? This Sodastream thread is a bit exotic. It is a thread with two starts, the upper shoulder is 45 degreed, the lower shoulder 7 degrees.
<InPhase>
Oh, a double-start.
<InPhase>
Well that's trickier.
<pingufanGH>
I already have this script. I don't know how to call thread_polyhedron() correctly.
<InPhase>
J22: Can your UB.scad pile resolve this scenario?
<pingufanGH>
It allows/requires a lot of parameters, but there is no real example I can start with.
<InPhase>
pingufanGH: Well you could also try putting some code in a https://bpa.st link, along with a paste or a link to the threads.scad being used.
<pingufanGH>
are you familiar with threads.scad?
<setpill>
InPhase: Hrm, I see, thanks. I was hoping that there would be something "smarter", like an operation to remove walls/gaps of a thickness under a certain threshold value. I suppose I could write something like that myself.
<InPhase>
setpill: Well scroll up and read the note under union for why this is not something you can automate in general.
<InPhase>
setpill: You can of course automate specific situations for convenience, but there's nothing that will always work right.
<setpill>
I understand the intrinsic problem with floating point numbers
<setpill>
Hm
<pingufanGH>
This are the thread dimensions: inner diameter: 35mm, outer diameter:38mm, Pitch 8mm, 2 starts, bottom side of trapezoid = 2degrees, upper side 45 degrees
<InPhase>
setpill: I too heard it, disbelieved it, and spent good brain time trying to find a more generalized solution that will always or almost always work. But it's a very fundamental sort of problem. :)
<setpill>
I was thinkin of something along the lines of outset + inset
<InPhase>
Every solution sort of just moves the problem around when there are arbitrary inputs possible.
<setpill>
Ie. "grow" the shape with a certain value, then "shrink" it again
<InPhase>
pingufanGH: As I said, there are multiple threads.scad files. I wrote one of them, but I think not the one that you are using as I don't recognize that module call name.
<pingufanGH>
InPhase: if you cound show me at least a raw set of parameters I can refine, this would be very kind.
<pingufanGH>
may I show you mine? I found it in the Internet.
<setpill>
The "grow" stage would remove gaps under the threshold size. Though I guess it'd have to be grow + shrink + shrink + grow to also remove walls under the threshold size
<InPhase>
pingufanGH: Yeah, that would probably help.
<InPhase>
setpill: At which point the amount of the grow becomes the new problem.
<setpill>
That'd just be a parameter the user gives
<InPhase>
setpill: That's similar to an overlap offset, but in all directions.
<setpill>
Yes, it's nothing worldshattering
<setpill>
Just a convenience function
<setpill>
Unless I have overlooked an existing one
<pingufanGH>
At the end you find module thread_polyhedron()
<setpill>
Is there something like negative minkowski?
<pingufanGH>
What O want to do is more or less the same I do with metric threads: I generate the thead, exportit as STL, import that one in FreeCAD and continue working there.
<InPhase>
pingufanGH: Well that produced a thread segment. At the moment I'm thinking this module just makes one segment.
ochafik has joined #openscad
fling has quit [Ping timeout: 240 seconds]
<pingufanGH>
So it meeds another "shell" producing many segments in series? I never understood how openscad works.
fling has joined #openscad
RichardPotthoff has joined #openscad
<InPhase>
pingufanGH: This produced an internal double-start thread for me with that library you found: https://bpa.st/G5IQ
ochafik has quit [Quit: Client closed]
<InPhase>
pingufanGH: But! Note that to get it to be a decent thread that you could actually turn smoothly, I had to modify that threads.scad file. In particular I changed this line as such: function segments (diameter) = min (360, ceil (diameter*8));
<InPhase>
pingufanGH: That library hardcoded itself to low-poly threads. But threads are mechanical parts and need to be smooth to turn well. Those settings should obtain it.
<pingufanGH>
Is there any library available, already including trapezoid threads in addition?
<J22>
inPhase duals threads are included in ub.scad
<InPhase>
J22: Perhaps you can demonstrate for pingufanGH. This found library does have trapezoidal threads, but they're a little inflexible.
<InPhase>
Double-starts are so rare that I never bothered to implement that it mine.
<pingufanGH>
Perfect would be inner diameter, outer diameter, center height of ine "tooth", and pitch of helix.
<J22>
dn is outer and kern (core) is the inner
<pingufanGH>
Luxury version of this couls allow different angle for upper and lower seide-wall of "square shape"
<InPhase>
pingufanGH: The "which things does the user want to control" question is always the tricky part, as it varies wildly, and any choice to support problem X risks making problem Y harder. Hence, many libraries arising. :)
<InPhase>
pingufanGH: Try J22's solution.
Junxter has quit [Ping timeout: 240 seconds]
<J22>
you can define bothe angles .. but a normal trapezoid thread would use 30° for both
<pingufanGH>
I.e. imagine a vacuum cleaner hose (Staubsauerschlauch). This is actually a rounded thread, where the thread-tooth is very thin and pitch is wide.
<J22>
rounded is an option for the Gewinde() module
<InPhase>
pingufanGH: It's definitely worth upgrading from 2015.03-2. That's missing a ton of features.
<J22>
inPhase .. can you check https://bpa.st/FZ6Q .. my version has a problem with render() ..
<J22>
2022.02.18
arebil has joined #openscad
<pingufanGH>
New version is a little new problem: My Linux is a bit old (openSUSE Leap 42.3). Since some AppImages assume new gcc, even some AppImages dont work on my weekend machine any more.
<J22>
maybe the thread module would work with 2015 so you would need to copy this with some functions and modules
<pingufanGH>
Another thing: I use openscad only in that cases where FreeCAD has no workbench. So it is with threads (as an example), there is one, but with focus on V-shaped profile. And Timing belts and ...pulleys is the next.
<J22>
( i have a module for GT2 timing belts and pulleys)
<pingufanGH>
FreeCAD is definitely my favorite, I immediately see what I doo, and I mostly combine or subtract primitives.
<pingufanGH>
I have a .scad genertating wonderful pulleys also with T6 profile (my favorite one, still.)
<J22>
your favorite is always what you are used to use and familiar with
<pingufanGH>
I would immediately switch to a Freecad workbench if one with similar possibilities would exist. This workaround from scad -> atl -> Freecad -> Make volume part is a nightmare and often problematic.
<J22>
the libraries i know of just use a profile as dataset (which is ok) i calculate the profile
<pingufanGH>
Butt Freecad will never end its Pre-Beta status (so it appears to me)
<pingufanGH>
...to me from user side).
<pingufanGH>
So I actually live with a series of workarounds.
<J22>
pingufanGH you can use a chained hull for the thread .. that should work with 2015
<pingufanGH>
You are talking with an openscad novice
<J22>
you create the tooth profile in 2D .. linear_extrude(.1,scale=0); and then loop and hull them together (which works for short threads)
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
<pingufanGH>
My primary problem is that I know almost nothing about scad. It appears to be very powerful, but I miss a GUI. My parts are relatively complex (often) and non-repetative (i.e. spokes of a gear), so programming such parts in scad is almost impossible. This lead into the situation that I do almost everything in FreeCAD and only do that outside what it has not implemented and is too complex for manual designing (gears, ...)
<J22>
replace the square with your trapezoid.. and add a cylinder/ tube in the end
<J22>
other CAD programs doing the same like scad .. but the math is just not visible to the end user
<pingufanGH>
Yes, I see many similarities.
<J22>
and FreeCad can use openScad scripts and convert solids into curves
<pingufanGH>
THIS I never got working.
<pingufanGH>
So instead of square() I use polygon() ?
<pingufanGH>
I often used $fn=100 without understanding what it really does. I only see that everything is smoother then.
<J22>
fn ⇒ fragment number .. how many edges a a circle (for 360°)
<J22>
when printing you will turn this upside down as the shallow angle should be on top
<pingufanGH>
Ok. This script generates now one helical thread. I need two starts, I do it twice and rotate the second one 180 deg around "Z" with translate ?
<J22>
so i have some anticipation what to do to get a certain result
<InPhase>
J22: Your FZ6Q example is working fine for me in release and my latest master branch build.
<InPhase>
J22: I don't recall exactly the 2022.02.18 state, but that sounds like maybe it was in the middle of some of the fast-csg bugs? Perhaps just go before or after that.
<J22>
InPhase so no transparent back faces ? so i need to update
<J22>
Thanks for testing
<InPhase>
My latest master build had some preview convexty issues that I didn't see in release, but that happens sometimes. They weren't present in a full render.
<J22>
i am worried a bit as by designs doesn't work on 22.3 ( WASM )
<J22>
oh i am not talking about the F6 render .. it is when using render() parts in preview
<pingufanGH>
J22: Does the first code (with coordinate points) use relative or absolute coords (related to first point)?
<J22>
pingufanGH absolute and relative for the last
<J22>
the coordinates are always absolute .. but by adding the .75 i make this relative to the point before
la1yv_a has joined #openscad
<InPhase>
J22: Well if that convexty issue (weird transparency effect based on camera angle) then yes, I did see that. But those are display issues only.
<J22>
InPhase yeah but my design look shitty in preview Ü
<J22>
it seems the render() ignores the convexity
<J22>
(which is probably not true as i made test where the problem is worse with convexity >1)
la1yv has quit [Ping timeout: 240 seconds]
epony has quit [Ping timeout: 240 seconds]
epony has joined #openscad
<pingufanGH>
J22: Look here, please. Making a double start thread. https://bpa.st/O4QQ
<pingufanGH>
Did I do it correctly?
<J22>
yes looks fine . .but it is fn not fm (which is not importand as your design is not using rounded things)
<pingufanGH>
I moved the initial main code into a module and call this module twice. Once I rotate it 180 deg.
<InPhase>
J22: Yeah, the render is newly ignoring that convexity I think.
epony has quit [Excess Flood]
<J22>
check my last paste where you have everything set including the correct angles
<InPhase>
J22: Note that you have an overlap issue on the difference, which makes it a bad testcase example. But fixing that with a negative translate before the cube(5) preserves the issue you found.
epony has joined #openscad
<pingufanGH>
J22: You know ... doing my first baby steps now...
<J22>
pingufanGH and you are doing fine
<poisond>
fast-csg really is a great improvement :) Some of my designs that took 10+ minutes to render now "only" take one ^^
KimK has quit [Ping timeout: 240 seconds]
KimK has joined #openscad
<J22>
just a 45 angle on x=1.5 mm is y=1.5 mm (not 1.15)
<J22>
äh 1.6 mm is what you used
epony has quit [Excess Flood]
<pingufanGH>
My absolute coors code gives almost the right shape.
<J22>
the last point is [0,2.9] not 3
<J22>
but that probably doesn't matter
<pingufanGH>
Where in this for() loop is the number of turns hidden? Is it this 720 (degrees perhaps) ?
epony has joined #openscad
<J22>
yes exactly .. and in my latest paste you see that i convert a h (höhe) into the rotations by dividing through p and times 360
<J22>
and then in the loop 2 is removed as the second hull part is +2 .. so the threads ends exactly
<J22>
j=i+2;
SamantazFox has quit [Killed (NickServ (GHOST command used by SamantazFox_))]
SamantazFox_ has joined #openscad
<InPhase>
poisond: Agreed. :) It's a big change, so it still needs hammered with testing, but it will be great to be able to roll that out as stable.
noonien has quit [Quit: Ping timeout (120 seconds)]
<InPhase>
I think it's at least getting pretty close.
noonien has joined #openscad
mmiscool-Autodro has joined #openscad
trashbird4 has joined #openscad
Wolf480pl has quit [Ping timeout: 250 seconds]
muesli8 has joined #openscad
dalias_ has joined #openscad
Wolf480pl has joined #openscad
marcus has quit [Ping timeout: 250 seconds]
trashbird has quit [Ping timeout: 250 seconds]
Xeha has quit [Ping timeout: 250 seconds]
dalias has quit [Ping timeout: 250 seconds]
muesli has quit [Ping timeout: 250 seconds]
trashbird4 is now known as trashbird
muesli8 is now known as muesli
dalias_ is now known as dalias
marcus has joined #openscad
<pingufanGH>
J22: How do I move something i.e. 4 mm downwards along Z ?
<Claws61821>
Is there a way to configure the console to NOT hide repeat errors from one pre-render to the next? It makes it very difficult sometimes to troubleshoot my scripts.
<teepee>
no, it's not a console problem, but the cache returning an empty result without the error
<peeps[zen]>
Claws61821: only thing you can do at the moment is click "Design -> Flush caches" between runs.