califax has quit [Remote host closed the connection]
califax has joined #openscad
Jack227626 has joined #openscad
Jack2276 has quit [Ping timeout: 256 seconds]
califax- has joined #openscad
califax has quit [Ping timeout: 276 seconds]
califax- is now known as califax
snaked has joined #openscad
miique has quit [Ping timeout: 256 seconds]
arebil has joined #openscad
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
miique has joined #openscad
Jack227626 has quit [Ping timeout: 256 seconds]
supernova has joined #openscad
linext_ has joined #openscad
ferdna has quit [Quit: Leaving]
linext has quit [Ping timeout: 256 seconds]
arebil has joined #openscad
GNUmoon has quit [Ping timeout: 276 seconds]
_whitelogger has joined #openscad
<Guest43>
I want to make a earsaver model which can be prited on a 3D printer but with soma changable parameters
<ccox>
ok, that is what openscad is for. So what is your question?
<Guest43>
simplyfied the model looks like this <-------> where the "line" is the variable
<Guest43>
I can make it on a "normal" CAD software but the I'll have to make or vary the model according to the needs an head size :)
<InPhase>
Sounds easy enough. Have you tried making it and hit any issues?
<Guest43>
No I have not even tried, I just got the idea and thought I can be done in OpenScad. Can you point me to good documentation to get started? Maybe some third party documentation with a different approach
<InPhase>
Well the tutorial is a great introduction to the general syntax.
<ccox>
it might also be easiest to find examples similar to what you want to do, and see how they were made.
<InPhase>
I can tell you that you're probably going to want to design that with 2D primitives, using parameterized variables at the top. And then you'll want to apply offset to those unioned 2D primitives to round things for comfort. And then, linear_extrude it to give it a little bit of thickness for printing.
<Guest43>
Thank you for the answers, that will get me started
<InPhase>
There might already be a few of these on thingiverse in OpenSCAD form, but it's a pretty simple starting model to do from scratch to get started with using the language.
<ccox>
when looking for examples, remember that every customizable design on thingiverse is done in openSCAD, and has the .scad file available for download.
Guest43 has quit [Quit: Client closed]
RichardPotthoff has quit [Read error: Connection reset by peer]
arebil has quit [*.net *.split]
snaked has quit [*.net *.split]
juri_ has quit [*.net *.split]
lostapathy has quit [*.net *.split]
TheCoffeMaker has quit [*.net *.split]
othx has quit [*.net *.split]
qeed has quit [*.net *.split]
L29Ah has quit [*.net *.split]
rawgreaze has quit [*.net *.split]
noonien has quit [*.net *.split]
rogeliodh has quit [*.net *.split]
GNUmoon has quit [*.net *.split]
califax has quit [*.net *.split]
TheAssassin has quit [*.net *.split]
aiyion has quit [*.net *.split]
teepee has quit [*.net *.split]
Cadair has quit [*.net *.split]
peepsalot has quit [*.net *.split]
berndj has quit [*.net *.split]
Alicia has quit [*.net *.split]
josephl has quit [*.net *.split]
xypron has quit [*.net *.split]
Foidi[m] has quit [*.net *.split]
redlizard has quit [*.net *.split]
InPhase has quit [*.net *.split]
muesli has quit [*.net *.split]
kanzure has quit [*.net *.split]
SamantazFox has quit [*.net *.split]
mitte has quit [*.net *.split]
ndnihil has quit [*.net *.split]
zingos has quit [*.net *.split]
hisacro has quit [*.net *.split]
ccox has quit [*.net *.split]
la1yv_b has quit [*.net *.split]
foul_owl has quit [*.net *.split]
EkpyroticFrood has quit [*.net *.split]
trashbird has quit [*.net *.split]
fardog has quit [*.net *.split]
sinned6915 has quit [*.net *.split]
markasoftware has quit [*.net *.split]
buZz has quit [*.net *.split]
dalias has quit [*.net *.split]
unrust[m] has quit [*.net *.split]
LeviHarris-Brown has quit [*.net *.split]
Azelphur has quit [*.net *.split]
hiredman has quit [*.net *.split]
Notkea has quit [*.net *.split]
JakeSays has quit [*.net *.split]
epony has quit [*.net *.split]
M6piz7wk[m] has quit [*.net *.split]
t-paul[m] has quit [*.net *.split]
little_blossom_ has quit [*.net *.split]
wed has quit [*.net *.split]
NoGare[m] has quit [*.net *.split]
castawayc has quit [*.net *.split]
castaway_ has quit [*.net *.split]
stefanct has quit [*.net *.split]
Joel has quit [*.net *.split]
clemens3 has quit [*.net *.split]
ubitux has quit [*.net *.split]
lf94 has quit [*.net *.split]
t4nk_freenode has quit [*.net *.split]
Scopeuk has quit [*.net *.split]
ScottJackson[m] has quit [*.net *.split]
jonasbits has quit [*.net *.split]
knielsen has quit [*.net *.split]
voxpelli has quit [*.net *.split]
ABSHK has quit [*.net *.split]
ChanServ has quit [*.net *.split]
fling has quit [Max SendQ exceeded]
RichardPotthoff has joined #openscad
GNUmoon has joined #openscad
stefanct has joined #openscad
juri_ has joined #openscad
arebil has joined #openscad
qeed has joined #openscad
TheCoffeMaker has joined #openscad
mitte has joined #openscad
SamantazFox has joined #openscad
zingos has joined #openscad
ndnihil has joined #openscad
hisacro has joined #openscad
TheAssassin has joined #openscad
aiyion has joined #openscad
ccox has joined #openscad
la1yv_b has joined #openscad
epony has joined #openscad
Cadair has joined #openscad
Notkea has joined #openscad
M6piz7wk[m] has joined #openscad
unrust[m] has joined #openscad
t-paul[m] has joined #openscad
NoGare[m] has joined #openscad
ScottJackson[m] has joined #openscad
Foidi[m] has joined #openscad
dalias has joined #openscad
sinned6915 has joined #openscad
buZz has joined #openscad
markasoftware has joined #openscad
trashbird has joined #openscad
fardog has joined #openscad
foul_owl has joined #openscad
LeviHarris-Brown has joined #openscad
EkpyroticFrood has joined #openscad
Alicia has joined #openscad
redlizard has joined #openscad
peepsalot has joined #openscad
josephl has joined #openscad
hiredman has joined #openscad
Azelphur has joined #openscad
JakeSays has joined #openscad
Scopeuk has joined #openscad
lf94 has joined #openscad
t4nk_freenode has joined #openscad
clemens3 has joined #openscad
ubitux has joined #openscad
castaway_ has joined #openscad
Joel has joined #openscad
califax has joined #openscad
othx has joined #openscad
kanzure has joined #openscad
berndj has joined #openscad
xypron has joined #openscad
muesli has joined #openscad
InPhase has joined #openscad
teepee has joined #openscad
snaked has joined #openscad
lostapathy has joined #openscad
castawayc has joined #openscad
ChanServ has joined #openscad
ABSHK has joined #openscad
little_blossom_ has joined #openscad
voxpelli has joined #openscad
jonasbits has joined #openscad
rogeliodh has joined #openscad
L29Ah has joined #openscad
rawgreaze has joined #openscad
noonien has joined #openscad
knielsen has joined #openscad
wed has joined #openscad
epony has quit [Max SendQ exceeded]
epony has joined #openscad
fling has joined #openscad
linext_ has quit [Remote host closed the connection]
linext_ has joined #openscad
GNUmoon has quit [Ping timeout: 276 seconds]
unrust[m] has quit [Quit: You have been kicked for being idle]
GNUmoon has joined #openscad
Jack22 has joined #openscad
mhroncok has joined #openscad
<cbmuser_>
teepee: ping (PN)
lastrodamo has joined #openscad
ochafik has joined #openscad
ochafik has quit []
ochafik has joined #openscad
Guest50 has joined #openscad
Guest50 has quit [Client Quit]
ochafik has quit [Remote host closed the connection]
ochafik has joined #openscad
ochafik has quit [Remote host closed the connection]
ochafik has joined #openscad
ochafik has quit [Remote host closed the connection]
ochafik has joined #openscad
<Virindi>
something in this new nightly is leaking memory like crazy, I have 8.8g resident now
<InPhase>
ccox: But not conversely, as many people don't enable the customizer (in part because of how brokenly out of date it has gotten lately).
<lf94>
So I realized something last night
<lf94>
There is not a single "performant" code cad
<lf94>
other than maybe libfive
<InPhase>
Virindi: With any particular usage pattern enhancing it?
<InPhase>
lf94: libfive is only performant on some things.
<lf94>
right
<lf94>
in any case this is a huge barrier for us to overcome.
<InPhase>
And then flips around to really bad on others.
<lf94>
"us" - code cad community in general
<lf94>
I think what I'm working on may be the only performant code cad out there
<lf94>
caveat: it's not easy to use.
<InPhase>
But yeah, performance is definitely a limiting factor. These are computationally challenging things to do. However, OpenSCAD has made pretty good advancements in a lot of aspects of performance.
<lf94>
I should be able to do 100,000 unions in real time in the future, matching OpenSCAD performance
<InPhase>
Also, ochafik's PR is showing some massive gains, so if he's able to complete that this is a massive multiplier in what can be one.
<InPhase>
what can be done.
<Virindi>
InPhase: I just noticed it was using a lot. I did enable the VBO stuff
<lf94>
InPhase: does it make render to stl better?
<InPhase>
lf94: Yes, specifically that.
<lf94>
Ok, nice :)
<Virindi>
InPhase: I do use automatic reload and preview and edit using an external editor, which has caused problems in the past
<InPhase>
lf94: And about 5-10 times faster almost across the board.
<InPhase>
lf94: So we're not talking small fry stuff.
<InPhase>
Virindi: Well that's an opportunity. Are you using Linux?
<Virindi>
InPhase: Yes.
<lf94>
Very nice
<Virindi>
InPhase: I make a small change in an external editor, save, and it reloads...x10000
<InPhase>
Virindi: Setup whatever process you use to launch openscad to launch it with this: log_scad_mem openscad ...stuff... using this script as log_scad_mem: https://bpa.st/2J3A
<lf94>
I don't care at this point what it is, we need at least one of these code cad technologies to be able to handle large projects.
<Virindi>
so that is quite possible
<InPhase>
Virindi: Then on every single file you will get an entry added to .openscad_mem.log containing maximum memory consumption whenever openscad was opened with a particular script name, with the log entry created after openscad closes.
<InPhase>
~/.openscad_mem.log
<Virindi>
Okay
<InPhase>
Virindi: There is no overhead to the script. So just keep this running for a while in the background, and you'll end up with a record of memory consumption as you go about your normal business. I created this about a month ago to start tracking for memory increases, so that I have a past record of what memory I used when I played around with various scripts.
<InPhase>
Now it's conceptually not perfect, because of you tweak a script to do some much more high resolution thing or something, your max memory for that entry goes way up on that file, and it doesn't log that you changed a file from the default. But overall it should reveal some patterns we can look into more rigorously if we're mindful of interpretation.
<InPhase>
It's basically just a free record to give us hints to look into. For a memory leak, it might highlight which scripts do it and which don't.
<Virindi>
it is not updating the file when I change something and openscad automatically reloads the file.
ochafik has quit [Remote host closed the connection]
<Virindi>
I opened something and all I got was 2022-01-10 09:35:13 1.125 MB, openscad-nightl, ~/scad-debug
ochafik has joined #openscad
<InPhase>
Correct. It only reports the command line, because it has no other access.
<Virindi>
the way I do things is I have a copy of a text editor open next to the scad window, I edit in the external editor, and I save. I never open anything in openscad except at the very start
<InPhase>
But that works if you launch openscad on existing files with it.
<InPhase>
Which editor do you use?
<Virindi>
geany
<InPhase>
How do you launch geany on a scad file?
<Virindi>
launch?
<InPhase>
Terminal or gui clicking?
<Virindi>
I just do file->open in geany :)
<Virindi>
my scad things have dozens to hundreds of included files
<Virindi>
so I just tab around in geany making changes to different files
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
<InPhase>
Well, it requires you to launch openscad with either a terminal command, to which you can add log_scad_mem, and the target file, or to adjust your gui file type launcher to run log_scad_mem when it opens openscad and then click on the scad files directly.
<Virindi>
that's the thing, I never launch openscad. perhaps I am misunderstanding you
<Virindi>
I launch openscad once
<InPhase>
But in some manner the script needs to see the file at launch to record it. It will still track memory consumption without, you just won't know which file was loaded unless it's on the command line.
<Virindi>
there is only one file
<Virindi>
there is some main_model.scad file which openscad is opened to
<InPhase>
Well when you do, it should be launched with the main file for the project on the command line.
<Virindi>
and that never changes
<Virindi>
main_model.scad includes a tree of 100 other files
<InPhase>
Yes, launch like "log_scad_mem openscad main_model.scad"
<Virindi>
I launch it once, and I never launch again
<InPhase>
That's fine.
<InPhase>
As long as it's once per project that you want to record max memory consumption on.
<Virindi>
in fact, the idea of clicking file->open in openscad was completely beaten out of me because the version I have used for the last year or two had a thing where if I opened a file with file->open, it wouldn't load it and it would keep displaying the old model :)
<Virindi>
so I just never, ever use file->open either
<InPhase>
So how do you set openscad to use main_model.scad for preview/render?
<Virindi>
maybe you aren't understanding because this doesn't make sense
<Virindi>
I run openscad. In the startup dialog I select main_model.scad. I enable design->automatic reload and preview. Then I open 100 files in geany that are included in main_model.scad, and over the course of hours I do nothing but make a change in geany and click save in geany.
<Virindi>
nothing is launched
<Virindi>
I never change the project
<InPhase>
Okay. To make the script work, stop using the startup dialog, and instead, put that same selection on the command line, either by typing it in terminal, or using your window manager's file browser to navigate to the file, and adjusting what it runs for scad files.
<InPhase>
The startup dialog won't even pop up if there's a filename on the command line from either of these two methods.
<Virindi>
okay, so what I did is:
<Virindi>
but that only happens once. and I am only getting one entry in the log of course.
<Virindi>
I am really confused as to what you expect here.
<Virindi>
I'm sorry, but I don't understand
<InPhase>
So I have a record of how much memory I used when working with Snowballs.scad there, right?
<Virindi>
a log of the first time the project is opened is useless though if it grows over time after launch?
<InPhase>
If I go and do Snowballs.scad again now and it's 5GB instead of 355MB, something has gone wrong.
<InPhase>
The log is the max usage across the entire run of OpenSCAD, recorded at the close of openscad.
<InPhase>
So memory grows during render, then drops again after. It records that peak value during the render.
<Virindi>
so you want me to go make calls to reopen the same file over time?
<InPhase>
If you want, but that's not necessary for it to be valuable.
<Virindi>
but????
<InPhase>
Although if the same file with no changes shows radically different values in the log based on how often you clicked render, that would indicate a leak clearly, so it might be useful that way as well.
<Virindi>
huh
<Virindi>
god, I am so sorry, what you are saying just seems completely nonsensical to me
<InPhase>
The core goal is to track changes in consumption over time, and to look for particular files that log massive amounts of memory that shouldn't be massive.
<Virindi>
it is not updating the file
<InPhase>
Not updating what?
<InPhase>
There's nothing to update.
<Virindi>
I did: your_script openscad-nightly main_model.scad, when I had my main model set so that it would show only a small simple thing. It placed one entry in the log. Then I modified my model so that it would show everything, which is massive. No change to the log. If I continue like this, there will be no additional information at all in the log, ever
<InPhase>
It only adds an entry at the close. It's max usage per run of OpenSCAD.
<InPhase>
Presumably you work with OpenSCAD for a while, then close it and go about your other things in life, right? :)
<Virindi>
actually, no.
<Virindi>
I keep openscad running with the same file for days, sometimes weeks
<InPhase>
Well that's an unusual usage pattern which would not work well with the script. Max usage per run is all it can have access to.
<Virindi>
I think I see though. The idea is to do lots of different runs with the same file and see how they differ
<InPhase>
You could certainly attempt to do it explicitly that way to see if you can track a memory leak.
<InPhase>
Although I use it because I open and close OpenSCAD frequently, and thus accumulate lots of data without trying.
<InPhase>
I work with a very large number of OpenSCAD designs, rather than constantly on one.
<InPhase>
I have 104 entries in one month, and it was a low OpenSCAD utilization month for me.
<Virindi>
I do switch around but for things like a complicated assembly, every part of the assembly is part of main_model.scad. The entire project is referenced from that one file.
<Virindi>
then there is a section, for example, with flags that enable each subpart
<Virindi>
basically it is a 'project'
<Virindi>
there are other times when I am doing a lot of one-off small things, during those times I do not encounter any limits of openscad because the models tend to be much less complex and I am killing openscad between each different model
<Virindi>
the big stuff is like a typical programming project, including the spam of 1500 warnings you haven't bothered to fix yet everytime it previews ;)
<Virindi>
and a bunch of 'modules' in different files
<InPhase>
Out of curiosity what is the big project?
<Virindi>
The biggest ones are 3d printers, but there is also other stuff like for example manufacturing jigs for electronics
<InPhase>
For work or fun?
<Virindi>
both
<InPhase>
Nice. :) If you're able to show or explain what sorts of things you do for work stuff with it, I would find that interesting.
<Virindi>
hmm. Are you familiar with bed-of-nails devices for electronics manufacturing?
<InPhase>
As a rough concept.
<Virindi>
you insert your circuit board and close some mechanism, and it connects to the board.
<Virindi>
imagine something like that with a bunch of other electronics part of the machine as well
<Virindi>
so the person at the factory just inserts the product, closes a lever, and the product gets tested and programmed and logged, then an "okay" or "fail" light comes on and the worker unlatches it and removes the product :)
<InPhase>
So OpenSCAD for the mechanical parts of such a box mechanism?
<InPhase>
I assume you're not laying out a testing circuit in OpenSCAD nor the metal parts.
<Virindi>
linkages to guide the product board into place and lock it against pogo pins, and enclosures for the electronics and display
<dalias>
re: metal parts, is openscad ok for preparing files for sheet metal cutting and other basic cnc work?
<InPhase>
Ok.
<dalias>
i have something very simple i want to design and order and have been wondering if openscad will suffice
<Virindi>
the linkages also press a microswitch once travel is completed so that the rig knows when the linkage is locked
<InPhase>
dalias: Some people seem to use it that way. Although there are no line cuts, there are outline cuts.
<teepee>
it's like tweet -> single sentence post on linuxconsultant.org -> single sentence post on linuxtoday.com -> "complete story" = https://openscad.org/index.html
<teepee>
is that some sort of google manipulation?
<teepee>
I mean the shout out is cool, but that single sentence posts are always a bit confusing. Adafruit does that too just dropping links with a single short extra note
<lf94>
lol.
<juri_>
I'm not sure i want to do a convention until covid is over, honestly. i've gotten very little from the ones i have tried to attend.
<Virindi>
define "over", it is never going away :(
<juri_>
safe enough i can, with some modification (appropriate vaccines?), safely attend, despite my blood clotting condition.
<Virindi>
is there data yet on the risk with current vaccines with your condition?
<Jack22>
teepee now a days nobody has the time to read long stories - Ü and people get easily confused so "use OpenSCAD" is all whats needed
<teepee>
good point
<teepee>
but I thought the way to solve that is youtube shorts
<teepee>
that or tiktok
<Virindi>
if only there were a way to tell youtube "don't show me any shorts videos" :P
<othx>
teepee linked to YouTube video "Vertical Video Syndrome (Clean Version)" => 1 IRC mentions
<Jack22>
the sad thing .. people (kids) watching videos about how to use/make something but instead of using it as instruction the already happy with what they saw and have the idea they already did it themselves - reason why these DIY shows/videos work or cooking etc .. psychology behind is very interesting
<teepee>
yeah, big part seems to be more about selling stuff, as people started to have youtube as job description
<juri_>
Virindi: Nope! i couldn't even get the specialists to tell me if i could get vaccinated.
<juri_>
i got vaccinated anyways.
mhroncok has quit [Quit: Leaving.]
<teepee>
argh, getting clear answers from doctors can be difficult, which I can understand, but it's certainly very annoying when asking specific questions
<Virindi>
lovely :(
<lf94>
juri_: I think virtual conventions are better, more accessible
<lf94>
juri_: brave on you for getting vaccinated with your blood clot condition. I know it can be scary.
<lf94>
I'm guessing you went with Pfizer?
<juri_>
lf94: the first time. switched to moderna later.
<juri_>
also stuck waiting on surgery so i can walk again, so... I really hope this stiff dies down. i'd like to walk again.
<InPhase>
That sounds unpleasant. :( What's disrupting walking?
<juri_>
malformed hips. things are just chewed up because nothing's shapped right. had the right one corrected, so i can kindof walk short distances.. but the left one has me in a lot of pain.
<lf94>
juri_: stay strong :)
<lf94>
hopefully being online has helped with dealing with everything
<juri_>
I think it has. :)
GNUmoon has quit [Ping timeout: 276 seconds]
<juri_>
I've been writing a slicer for the last few years. it's really starting to come together now. :)
<InPhase>
Use it to print a new hip!
<InPhase>
Some assembly required for usage.
<juri_>
that's the plan. installation's a pain, tho. :)
<InPhase>
But more seriously, I hope you can get the needed surgery in a timely manner. I think all that delayed medical care right now is the undersold tragedy of these recent unnecessary spikes.
<juri_>
there's plenty of tragedy. i got word yesterday that one of my wife's cousins had a massive stroke due to covid. we're waiting to find out how the brain surgery went. she's 25, and just got her masters... and now she's going to need years of therapy to walk, assuming she lives.
<juri_>
I'm not very bright and cheerful today.
<lf94>
All good :)
<juri_>
anyways, my slicer is starting to slice things correctly. :)
<InPhase>
I look forward to seeing some results from that. I think the concept has a lot of potential.
<InPhase>
I've said before, an efficient SDF slicer has the potential to be a killer-app approach to programmatic CAD if things go well with the performance of it.
<InPhase>
You can quite simply do things that aren't possible with other approaches (e.g. material and color gradients become a real possibility), and more performantly at the same time.
la1yv_b has quit [Read error: Connection reset by peer]
la1yv_b has joined #openscad
GNUmoon has joined #openscad
ochafik has quit [Remote host closed the connection]
<juri_>
I've written a parallel implementation of a subset of CGAL, using projective geometric algebra. in haskell, and with no geometry libraries. wrote my own.
<juri_>
I'm trying to slice on planes and curves that are not alligned with the x-y plane. but first, i need to reproduce what a 'normal' slicer does.
<JakeSays>
juri_: my condolences to your wife's cousin :(( that's way too young for a stroke!