<pca006132>
no sure why there is such an error message... in principle 3mf export should not be concerned with this...
<pca006132>
J24k52: maybe you can give some example that failed in the PR, and I will have a look at them.
misterfish has joined #openscad
Guest95 has joined #openscad
Guest95 has quit [Client Quit]
misterfish has quit [Ping timeout: 248 seconds]
<f0lkert>
teepee: thank you
<J24k52>
pca006132 the 3mf "can't add triangles" error came up sometimes and often could be solved by just adding a cube(.001); anywhere - i was trying with your PR and rendered old design that suddenly all got this problem when exporting. https://www.printables.com/model/1000822-seamless-wave-box is just one example - but with the new PR it
<J24k52>
was working again. Often but not always this error could also be solved by disabling lazy union.
<J24k52>
stl export always works fine
<f0lkert>
is this fixed somewhere? src/geometry/manifold/ManifoldGeometry.cc:305:59: error: ‘class std::vector<std::vector<glm::vec<2, double, glm::packed_highp> > >’ has no member named ‘ToPolygons’ / 305 | return ManifoldUtils::polygonsToPolygon2d(cross_section.ToPolygons());
<J24k52>
wouldn't that allow for a raytraced render option in scad ?
<f0lkert>
well, in theory yes. but sometimes you may want to manually tweak the .pov script a bit: the camera location is not always ideal.
<f0lkert>
is the camera position of the preview-window available in the code somewhere? I mean can I access it in the export-code?
<J24k52>
it can be defined with the $vpr $vpt $vpd parameters - else they are not in the code
<teepee>
directly accessible in export no, they are available in the evaluation result where they are used to set the view port
J24k52 has quit [Quit: Client closed]
J24k52 has joined #openscad
JakeSays has joined #openscad
JakeSays_ has quit [Ping timeout: 248 seconds]
<pca006132>
J24k52: cannot get an error with this, are you running with the latest commit in my PR?
<J24k52>
as i said the latest solved it but when using git 018a30c00 i got them
<J24k52>
else it was a rare phenomenon when this happens and could be solved by either add something or change the dimensions slightly bot not with that i had to export as stl as i couldn't get rid of it (until the latest pr)
califax has quit [Remote host closed the connection]
califax has joined #openscad
mmu_man has joined #openscad
califax has quit [Remote host closed the connection]
califax has joined #openscad
To_Aru_Shiroi_Ne has quit [Ping timeout: 246 seconds]
<buZz>
f0lkert: i wonder if the povray exports could be used with the animation stuff too
<buZz>
f0lkert: but that would require using the camera as in vpr/vpt/vpd as mentioned, i guess
<buZz>
-some- day i still want to make a 'fake tv studio' in openscad with nice camera pan animations etc
ToAruShiroiNeko has joined #openscad
<f0lkert>
buZz: probably!
misterfish has quit [Ping timeout: 260 seconds]
foul_owl has quit [Ping timeout: 255 seconds]
misterfish has joined #openscad
foul_owl has joined #openscad
foul_owl has quit [Read error: Connection reset by peer]
<pca006132>
probably about degenerate triangles...
<pca006132>
the latest commit remove a lot of degenerate triangles by specifying a higher epsilon value
<pca006132>
but I am really curious why lib3MF cares about those degenerate triangles, they should not affect the topological validity of the mesh
<pca006132>
not sure if lib3MF performs some geometric checks internally
<J24k52>
In the past nobody had some deeper insight why this error msg comes up - and as in most cases i can work around by adding a cube outside the object - so this added should not change the triangles but it solves the error msg. ( with the error an empty 3mf is saved)
<pca006132>
interesting, just let us know if you got another error later with the new PR
<pca006132>
did you run into other issues with this PR?
foul_owl has joined #openscad
misterfish has quit [Remote host closed the connection]
<othx>
f0lkert linked to YouTube video "openscan to povray rpi" => 1 IRC mentions
<buZz>
openscan?
<f0lkert>
typo
<f0lkert>
fixed
<buZz>
looks cool :D maybe it could benefit from some better lights?
<f0lkert>
yes, maybe some background as well. but I think it is wisest to let the user add that manually. not 100% sure about that though.
<buZz>
iirc openscad has some lights defined in the renders aswell, maybe you could export them too?
<f0lkert>
lemmesee
snaked has quit [Quit: Leaving]
<f0lkert>
buZz: the export-code only gets a pointer to Geometry and that does not include lights i believe
<f0lkert>
If I were to do a pull-request, on which branch should I base things? I've got a simple version without color that works fine on master/main, and one with color that works fine on https://github.com/openscad/openscad/pull/5185
Gungee has joined #openscad
misterfish has quit [Ping timeout: 246 seconds]
<pca006132>
master? isn't 5185 already merged?
misterfish has joined #openscad
<teepee>
f0lkert: as pca006132 already said, 5185 is merged, so master should work the same and PR against master would be fine
krushia has joined #openscad
<teepee>
check if you have the feature render-colors enabled in preferences
mmu_man has quit [Ping timeout: 255 seconds]
mmu_man has joined #openscad
myosotis has joined #openscad
cart_ has quit [Ping timeout: 272 seconds]
J24k52 has quit [Quit: Client closed]
J24k52 has joined #openscad
myosotis has quit [Changing host]
myosotis has joined #openscad
misterfish has quit [Ping timeout: 260 seconds]
myosotis has quit [Quit: myosotis]
Non-ICE has quit [Read error: Connection reset by peer]
Non-ICE has joined #openscad
teepee_ has joined #openscad
cart_ has joined #openscad
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
califax has quit [Read error: Connection reset by peer]
pca006132 has quit [Quit: pca006132]
califax has joined #openscad
cart_ has quit [Ping timeout: 276 seconds]
Non-ICE has quit [Read error: Connection reset by peer]
<dalias>
i'm trying to get 2D output into eps format to submit to sendcutsend (because they broke their dxf importer and it now thinks all openscad dxf's are empty)
<dalias>
when i export to svg, it gets a stroke width added and i think that's messing up dimensions...
<dalias>
and then i'm trying to convert to eps with inkscape, but it's screwing up the units (thinks it's some dumb freedom units or something?)
<dalias>
anyone have a good recipe for this that preserves dimensional accuracy?
<J24k52>
stroke is not geometry just set stroke to transparent
<J24k52>
openscad doesn't have strokes so it strange those are added
<dalias>
while scad->dxf is not (probably not openscad's fault tho)
<dalias>
yeah i think it's ridiculous that it adds a stroke in the svg output
<dalias>
it makes the svg not dimensionally match the scad file
<dalias>
which could be a big problem in some cases like if you print it on paper to trace, and the print includes the stroke
<dalias>
sendcutsend support, btw, is claiming the openscad-produced DXF files cannot be opened in fusion, rhino, or qcad either
<J24k52>
funny scad is exporting with " stroke="black" fill="lightgray" stroke-width="0.5"
<dalias>
but their website *used to* accept these files (i even have old dxf exports i tried re-uploading, and it rejects them now)
<dalias>
imo the svg export should be a faithful representation of the scad usable for engineering purposes
<dalias>
not "cute drawing with strokes"
<dalias>
anyway i edited out the stroke just to be safe, and conversion thru inkscape is now giving me dimensions that match what i expect, that sendcutsend can manufacture :)
<J24k52>
i agree that stroke should be 0 - also when importing strokes are ignored
<J24k52>
when rendering a stroke is displayed but that is dynamic and will shrink if you zoom in
<dalias>
O_o
<teepee>
stroke 0 == invisible
<teepee>
there is some discussion about DXF but as nobody bothered to help it may be broken
<teepee>
the latest changes were tested against a couple of open source tools and work there, but it seems at least some proprietary tools complain
teepee_ has quit [Remote host closed the connection]
teepee_ has joined #openscad
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
<dalias>
it'd be nice if dxf could be fixed since that's the preferred form for sending off cutting jobs
myosotis has quit [Changing host]
myosotis has joined #openscad
<J24k52>
i could import the dxf in inkscape without issues - but it is transparent with stroke - maybe that is an issue
Shane has joined #openscad
<Shane>
Hi All, I have a Windows 11 machine and want to install the NopSCADlib. The most obvious place would be in the c:\Program Files\OpenSCAD\libraries folder , except this is marked read only by the installer and Windows 11 is so flunkee it won't let me remove that flag even with admin privileges. Is this where I should install this libarary?
<Scopeuk>
help library info will show you where your user library path is
<Scopeuk>
its lives under documents
<Shane>
With OpenSCAD GUI Open, Select Help in the Menu Bar, and Choose Library Info, a Popup Window Will Appear Entitled Lib & Build Info. If you scroll down you will see User Library Path, this is where you need to install all SCAD Libraries in their respective folders, don't dog pile everything into that directory. Is this a true statement?
<teepee>
File -> Open Library Directory too
<teepee>
well, it's actually called Show Library Folder ;-)
<teepee>
that said, we have some initial work on a (very simple) library manager
<Shane>
Well, I'm just saying, why take people on some circus ride tangent setting up a path variable to some other folder, if there is a default way of doing things that's more OpenSCAD freindly?
<teepee>
¯\_(ツ)_/¯
<Shane>
Isn't there any sort of peer review going on?
<teepee>
review of what?
<teepee>
the libraries?
<Shane>
If you put something out there for public consumption, why not get some feedback and do a test fix test revise fix test cycle?
<teepee>
and again, if you are talking about nopscadlib, nobody will be able to answer that here as nophead is not using IRC, well or at least he never was here in this channel
<teepee>
in general, it would be nice if there's a feedback / fix cycle
<teepee>
but also there's no obligation to do so. I put out some stuff where I don't intend to maintain that for other people
<Shane>
Well, I was hoping that someone might know someone and get a message through. Or turn over some new leaf and start a RFC on a particular library to facilitate quicker adoption.
<teepee>
it still turned out to be usuable by some people
<teepee>
you can post on the mailing list, he's very active there, and also on github
<J24k52>
.•O( just add the line to the lib in git)
<teepee>
J24k52: you mean as submodule if your design is a git repo too?
<teepee>
that does not scale too well with that lib, it's 28MB :-)
<J24k52>
if the library scad file is on git .. just put a PR with that Installation line added - nophead will read that and act accordingly i assume
<teepee>
ahh, yes, propose doc addition via PR seems a nice option
<teepee>
interesting branch names he has... Merge branch 'allTexas-stage4upstream'
<Shane>
The Conundrum I have is that I am the new sprout green horn, don't know anything about this OpenSCAD, I figured there would have been thousands of others that would have spotted a land mine line this and said something about it.
<J24k52>
maybe just in the read.me ..
<J24k52>
shane which script did you tried to install ?
<teepee>
people might have, but if nobody suggests the change, everyone needs to find it later again
<teepee>
ah, oh, allTexas is a user name on github :D
<Shane>
J24k -- as a noob, I wanted to know how to install the NopSCADlib, the good people of this forum showed me that there was a designated area called File->Show Library Folder where all these libraries should be installed, but it wasn't mentioned in the installation instructions of the NopSCADlib. I would have thought there was some sort of
<Shane>
'best practice' template for these libraries that would include some basic information about where it should be installed for the best uptake / usage by OpenSCAD. So I wanted to get a message through to the author without a lot of rig a marole, git checkouts, mods, push, pull requests. Just wanted to say hey ... why didn't you say to
<Shane>
just drop the folder here.
<J24k52>
ok that library is also special with installing python scripts and imagemagick and stuff - maybe he should write an installer for this
<Shane>
A lot of other software packages like sublime text or notepad++ eclipse just put their own sort of package manager / installer in there to take care of the messy details of downloading an extension or library and adding it to the mix in a best practice sort of way.
<J24k52>
shane this is called curse of knowledge - nop is probably not aware that others have problems to understand his instructions
<J24k52>
.oO i know why my lib is just a single file - Ü
<Shane>
You know how things that go into the app store or google play store have to pass some sort of review / best practice type of panel? Is it the wild wild west with these plugins? Not even a template from the author(s) of SCAD on a proper installation writeup or anything like that?
<teepee>
you are compating a group of maybe 5 people spending some spare time with a multi-billion company
<teepee>
yes, there are some small differences
<J24k52>
And you don't need to pay to make a scad library
<teepee>
on the plus side, it's all open source, so in case someone is motivated to help it's possible ;-)
<Shane>
Lol, story of my life, it's always the new technical writer who doesn't know jack about the project writing the documentation. :)
<J24k52>
had some experience with teaching - and the better you are in doing it (competence 4) the worse teacher you become
<InPhase>
J24k52: Conversely if you want documentation which is correct...
<Shane>
I've always heard that "If you can't explain it to your grandma, you don't know it."
<J24k52>
that is something along einstein said - make it as simple as possible but not simpler
mmu_man has quit [Ping timeout: 252 seconds]
<InPhase>
Shane: That's a thing people say, but it's definitely not true. :)
<J24k52>
and sure the community should proof read the documentation
foul_owl has quit [Ping timeout: 245 seconds]
<InPhase>
Shane: It ignores the fact that teaching complicated information to people without a strong background in the topic is a specific extra skill that itself requires extensive learning, practice, and experience.
<InPhase>
Shane: I didn't fully grasp how much of that there was to learn until I spent 6 years teaching physics to people with strongly underprepared backgrounds.
<Shane>
Yes, I agree there is a Skill in Teaching that is Lacking in many industries. Sometimes, it's because there is a conflict of interests (job security), other times is a lack of caring (there's nothing in it for me).
<InPhase>
Shane: Now I operate with different explanatory modes, depending on who I think I'm talking to. :)
<J24k52>
teaching need to work like resolution mapping in games
<InPhase>
Shane: I mean, I did before too... But the ones for lower level work better now after spending many many years making all the mistakes and sorting them out.
<J24k52>
you start simple and refine the longer the course went
<Shane>
InPhase, There is an art to teaching ... if you start too simple some ego's think you are talking down to them and resent it.
<Shane>
You have to know your customer.
<InPhase>
Shane: That is true, but I find people actually very rarely make that mistake.
<Shane>
If you are doing a project handoff to a new hire that said they could do the job, and you start walking them through the project, they might feel you are belittling them in front of the boss.
<J24k52>
there is also always some mixed group - so you have to expect some base level (or that they ask questions)
<InPhase>
Shane: I spend a lot of time mentoring people on constructing scientific presentations, and it's roughly 100% of people who, before having this aggressively trained out of them, wildly overestimate the background and preparation of their audience by a large multiple. Most people are afraid of insulting people's intelligence, so they try to calibrate based on their assumptions of what other people know,
<InPhase>
but they in turn base that on their self-assessment of how hard each thing is to grasp, which in turn is based on their own familiarity with something they've heavily studied.
<InPhase>
It's a near universal error and almost everyone is way off on this.
<J24k52>
there is a nice study showing that the courses most liked by the students are also those the learn the least
<InPhase>
lol. Yeah, but maybe not the best metric. :) A lot of people actually don't like being made to learn.
<Shane>
I think the educational systems are at fault, in order to attract the most not college material students to get government predatory lending student loans, they have to ego stroke the hell out of them to keep them enrolled and when they get out, they think they are the Emperor.
<J24k52>
a lot has to do with error culture - instead of appreciating them they are (in our world) a sign of failure and not learning
<Shane>
A balerina doesn't make a good sumo, and a sumo doesn't make a good balerina.
foul_owl has joined #openscad
mmu_man has joined #openscad
<J24k52>
don't judge the fish on how well it can fly
<J24k52>
i guess AI can help a lot in teaching
<Shane>
Yep, getting setup for failure is not a good thing.
<J24k52>
there was something i think called "learned incompetence"
<Shane>
If the reward is given for success or failure, then why bother to struggle
<J24k52>
it is about what is defined as failure
<Shane>
nothing to show for any kind of effort
<J24k52>
sounds more like a motivation problem
<Shane>
Well starvation is a powerful motivator.
<J24k52>
let students set their goals is quite helpfull
<J24k52>
starvation is also a stress factor - stress kills creativity
<Shane>
Pragmatic solutions are sometimes best, stress is sometimes good, the caterpillar needs to fight it's way out of the cocoon to dry its wings so it can fly.
<J24k52>
learning methods are quite individual - but you sure need to learn what works for you
<J24k52>
doing something you are not prepared or feel ready can be a learning booster - but doing that always is dangerous
<Shane>
Risk = (Feared Danger x Probability of Failure ) / Knowledge Gained
<J24k52>
but knowledge gained is not guaranteed
<Shane>
Yep as that goes to zero risk is greatly increased.
<Shane>
A losing proposition
<J24k52>
rating in hindsight might look different here
<Shane>
Yes, as long as you weren't reinventing the wheel or anything. Otherwise it would be folly.
<J24k52>
if you ask the students that failed about the risk compared to those mastering the task
<J24k52>
so is risk something individual or more extrinsic
<J24k52>
and if you can change the outcome with the right tools - risk might not be objective
<Shane>
We all risk personal time, sometimes it's money, resources, or opportunity cost -- maybe we spend time doing one thing where our time should have been spent elsewhere.
<J24k52>
is often with the hindsight bias
<Shane>
There is the concept of throwing good money after bad, trying to make something work. Pyrric Victory
mmu_man has quit [Ping timeout: 260 seconds]
<J24k52>
winning with no Survivor
<Shane>
Zero some game
<Shane>
Zero Sum Game
<Shane>
I'm going to need a faster computer , an I7 quad core tool a couple of minutes to render that nopscadlib
<Shane>
If I try to move that collection around in the UI, it's a stop-the-world moment
<Shane>
So this new 2024 Version out of the Box is about 100% faster, so that's big. I dont see any preferences menu item.
<Shane>
Edit-Preferences-Features [x] Manifold
<Shane>
Compiling highlights (1 CSG Trees)...
<Shane>
Compiling background (4 CSG Trees)...
<Shane>
Normalized tree has 14417 elements!
<Shane>
Compile and preview finished.
<Shane>
Total rendering time: 0:00:29.267
<Shane>
Wow, that's really significant with the Manifold multi threaded rendering, went from 3 mins down to 30 seconds.
<J24k52>
Ü
<Shane>
So if I get a Ryzen 9, it should go down about 1/6 of that like 5 seconds.
<buZz>
can someone remember, there used to be a PR or forumthread somewhere, where someone replaced the shaders in openscad to draw 'filament' on models?
<Shane>
I've seen this in Fusion 360 where those who are 3d printing need to adjust the screw / thread taper dimensions in order for the screw to actually work. Does OpenSCAD have a library to do the same?
<buZz>
scale([x,y,z]) ?
<buZz>
openscad has no 'threads' by default
<buZz>
but there's loads of various libraries around
<teepee>
I use the library from InPhase, this one can do very printable threads easily
<Shane>
I will have to give them a try. I wanted to make a raspberry pi camera housing like a theodolite, with a rotating base about the Z, and a camera lens that can tilt up or down between the ears.
<Shane>
I figure I could lock the camera in place if I had two big screw knobs on either side of the ears. Wanted something really stable for wind resistance so that motion detection was not going off every time the wind blows.