<OlivierChafik[m]>
Hey guys, quick question re/ uncrustify & clang-format: any idea why I would be getting very different format results locally? (can't tell if it's because of a different version of clang-format or if I have some old config file hidden in my home)
<teepee>
it uses uncrustify, maybe that's not installed?
<teepee>
your PR is strange, not sure where it gets the AppVeyor config from
<teepee>
that should be all disabled for quite some time now
<OlivierChafik[m]>
haha, interesting!!
<teepee>
oh, it still has a webhook
<teepee>
let me remove that one too
<teepee>
and uninstalled the apps instead of just suspending
<teepee>
running from the main folder as "bash scripts/beautify.sh" should grab the .uncrustify from the current folder
<OlivierChafik[m]>
teepee: installing uncrustify helped, but still getting some " &" -> "& " and "while(" -> "while (" changes (which kinda seem fair tbh)
<OlivierChafik[m]>
s/some/many/
<teepee>
the & on the type seems correct
<teepee>
is the PR based on latest master?
<teepee>
unless run with --all the script will only touch files that are changed in the PR
<teepee>
well in the current branch against master
<OlivierChafik[m]>
yes it has a5d3bdb463ecaae70fd6bc52465ebdee67b27beb (Merge pull request #4095 from openscad/uncrustify-2022) and i ran with --all
<teepee>
hmm, yes, that is strange then
califax has quit [Remote host closed the connection]
<teepee>
you did run the beautify script, not just plain uncrustify?
<teepee>
I did not change the script, it's sitting in the repo for quite some time, maybe there some issue with file filtering
<OlivierChafik[m]>
yes I just ran the script
<InPhase>
linext: I've never seen a sideways leatherman holder, but that seems a pretty nice way to holster a leatherman. It's less likely to disrupt motion.
<OlivierChafik[m]>
oh... maybe my clang-format is a special build from my employer :-D
<OlivierChafik[m]>
I'll look into it again tomorrow (will hopefully have some benchmark results about these exact variants too)
califax has joined #openscad
<teepee>
well there's definitely some strange rules with their name in the :)
<ham5urg_>
I've created a simple hollow shell / dummy in Freecad, like https://paste.pics/36d1d16b4f4c80326cd7aaab361c702a and I want to try it in Openscad too. I'm curious about the rounding of the edges. Is this doable in Openscad in a way? A edge with multiple faces like https://paste.pics/36d1d16b4f4c80326cd7aaab361c702a ? E.g. Freecad does not (AFAIK) support a rounded edge like this (from the inside of the mentioned dummy)
<J22>
ham5urg_: Yes straight edges are easy .. freeformed are not so much
foul_owl has quit [Read error: Connection reset by peer]
<J22>
ham5urg_ but oSCAD is CSG so you can't fillet an edge like with freecad you use differences and hull (or minkowski) http://openscad.org/cheatsheet/
<Scopeuk>
peepsalot it looks like the windows branch work you have bene reviewing https://github.com/openscad/openscad/pull/3957 is using the dynamic runtime linkage inside visual studio that might be a good spot for me to go digging into mimalloc on windows (as it should be one less annoying awkwardness to deal with)
<Scopeuk>
I gues thats a text feeding a rotate extrude
<J22>
however its 3GB
<OlivierChafik[m]>
teepee: Oops I'm unsure if my shared_ptr PR isn't regressing performance (https://github.com/openscad/openscad/pull/4100), needs more testing / please don't merge just yet :-/
<J22>
i am curious how he exported them ..
<Scopeuk>
J22 I would guess a script/make file
<Scopeuk>
thats certainly how I'd do it
<Scopeuk>
OlivierChafik[m] there is a label for do not merge, I'm not sure if you can add that as a pull request author or if it needs to be teepee
<Scopeuk>
moment there and here is probably plenty though
<Scopeuk>
s/moment/comment
<J22>
Scopeuk: the plain scad command prompt is not enough to get the filenames so the name list must be external
<Scopeuk>
I would do it with -Dname="A Name" -o A Name.stl
<Scopeuk>
with a name set as a parameter through either a bash loop or a make file
<J22>
yes so you can't have the names within the scad file
<Scopeuk>
you could and then so an array lookup but that wouldn't sort the file names as you point out. there are many ways around it but also the option someone just sat there and hit buttons for a few hours
<Scopeuk>
I suppose you could use an in scad name, echo it, grab that from the echo and do a file rename as a second step
<J22>
ah right there is the echo output
<J22>
maybe a batch export option would be usefull for some .. like animate with png
<OlivierChafik[m]>
Scopeuk: thanks but I don't have the right to add any labels :-(
<Scopeuk>
you've done all you can and more than is needed, teepee is pretty sharp and you've made it clear
<Scopeuk>
J22 I would generally say there is plenty of tooling out there for cleanly and easily automating repeated invocation of command line tools. leave the heavy lifting to them
<Scopeuk>
gnu make probably gets invoked as many times a second as openscad does in a day or week
<Scopeuk>
if it already fits in there remit we don't want or need to be taking up that workload
<J22>
if you already using the command line. But there are a lot of multi part designs that you either export and then separate or use lazyUnion to make an ungrouped export .. or have the manual work
ccox has joined #openscad
<Scopeuk>
the multi part export is a continual discussion point, you wouldn't want to kick a file save dialog up for each piece, which means meta data in the file or part<<number>> style names
<Scopeuk>
if you have parts physically separate in space in a single stl slic3r/prusa slicer and I assume other slicers can split those into separate objects but its into a perfect solution. there is a method kicking arround using a top level module which gets a child by index so you can just loop over driving via -Dobjectnumber=1 etc
ccox has quit [Ping timeout: 256 seconds]
J22 has quit [Quit: Client closed]
J22 has joined #openscad
<Scopeuk>
hmm and another hack for it using make files and sed
<Scopeuk>
thats finding all modules with a comment of //make me and then generating them to stl's with the module name, not exactly intuitive though
<J22>
if there is some multimaterial support implemented to have groups - some kind of export groups / parts would be nice
<buZz>
J22: if i want to print designs seperately, i just make each part a seperate module()
<buZz>
and then render&export em one by one
<buZz>
i think some multimaterial slicers still work with multiple stl files ?
<J22>
you can have groups of objects within one file - for multimaterial you have only 4 colors in consumer systems but like if you make a model with 150 parts - manual is not the option i like to use. There was a version of meshmixer that splits the model and then exported each part with a own number added
<buZz>
huh? i doubt 4 is any limit anyone said
<buZz>
even prusa's poorly working material swapper does 5, doesnt it?
califax has quit [Ping timeout: 276 seconds]
califax has joined #openscad
<buZz>
yeah, 5
<J22>
well i meant it is not over a million colors like jet systems have
<buZz>
FDM indeed isnt inkjet printing :D
<J22>
so multimaterial files will only need <10 parts to print
<buZz>
one of the projects i saw and got interested in , was to put a inkjet CMYK cartridge on a X carriage , and just print undyed filament, and inkjet-color the perimeters after extruding each layer
<buZz>
but honestly, multimaterial is 99% just a waste of time and effort :P
<J22>
yes .. multimaterial is nice if it is material and not just color .. and for fine colors in models you also don't want the filament swap
<J22>
there are also the filament mixing systems .. but all these approaches purge a lot of material
<OlivierChafik[m]>
I've been using conductive PLA + normal PLA with my IDEX printer, mostly to make custom gigantic potentiometers
<J22>
or to add a non binding support layer - or flex parts
<J22>
there was a system that used a pen to paint the support and so it doesn't adhere to the next layer
<buZz>
J22: i do multicolor prints without any 'system' , just swap by hand, purge by hand, resume print, etc
<buZz>
or slice it on a 'per-layer-per-color' basis :P
<buZz>
lotta effort, but looks nice, and amazes ppl that you can do it even with 'any' 3d printer :D
<OlivierChafik[m]>
I had mixed results with soluble supports tbh
<buZz>
i think HP stopped producing those cartridge within a month after him posting that ;)
<JakeSays>
i was using hp carts for years. last time i bought an after market one and it's lasted 10 times longer
<buZz>
:) yeah, its such a horrible sector
<buZz>
my HP Laserjet 1000 at home has a clone toner and its been lasting me at least 8 years now
<JakeSays>
i had one of hp's very first inkjet printers.
<buZz>
while i do print more than i need to
<Scopeuk>
it might be easier to take the continuous inking system off a modern Epson that's designed to work with bulk ink
<JakeSays>
buZz: lol i have an hp lj 4p
<buZz>
Scopeuk: well, dripfeeding ink into the cartridges shouldnt be very hard
<buZz>
inkjets arent vacuum systems afaik
<Scopeuk>
my understanding is most "full colour" industrial machiens are power bound with what exentially amounts to an inkjet head with colour and a seperate "binder" colour
<Scopeuk>
buZz last I did any reading piazo electric pumps at hte head
<buZz>
what
<Scopeuk>
that is digging a long way back in my memory though
<buZz>
oh, yeah , they are pumping dropplets in inkjet head yeah
<buZz>
but i mean, they arent pumping while -depending- on a vacuum inside the cartridges
<Scopeuk>
no quite correct
<Scopeuk>
I was thinking something built from the outset to just do ink to head would probably have less drm/control nonsense going on
<JakeSays>
so those xyz color printers spray ink over plastic?
<buZz>
yes
<Scopeuk>
usually its more like plaster of paris than plastic but I'm not familiar with those machines
<buZz>
per layer, like i described
<JakeSays>
huh. now i get the cheat part
<buZz>
The Color Series of printers rethink traditional Fused Filament Fabrication (FFF) and add an inkjet head to create full color prints. The result are economical printers that can print thousands of different color combinations.
<buZz>
'thousands' is suspicious
<buZz>
maybe they removed a lot of the accuracy ?
<Scopeuk>
or its just marketing and disconcted from the realities of the product
<Scopeuk>
thousands sounds like a lot to someone that's not familiar with machine colour mixing. and technically it is true
<Scopeuk>
2million is some thousants
<Scopeuk>
just not how a sane human would phrase it in english
<buZz>
-or- they dont use 8bit values ;)
<Scopeuk>
4 bit colour
<buZz>
4 bit color would be 4096 colors
<Scopeuk>
if you use 4 bits per channel
<buZz>
also, they use CMYK on marketing pics, but only have CMY in their inkheads :D
<buZz>
oh maybe the mini only does CMY ?
<Scopeuk>
would have through you needed CMYKW to do it properly on mixed surfaces
<buZz>
oh, indeed! the non-mini DOES have CMYK vs only CMY on the mini
<buZz>
but, the non-mini has 4 cartridges at 70eu a piece
<buZz>
40ml each though
<buZz>
seems like a much better price if you wanna do this
<buZz>
curiously, that cheap cartridge that spritetm interfaced is also CMY only?
<Scopeuk>
that was really common on old hp's
<Scopeuk>
they had a colour cartidge and a sperate black
<peepsalot>
Scopeuk: i don't think the VS PR is doing anything in particular about mimalloc. the instructions added it to vcpkg installs, but doesn't look like any of the related cmakelists were modified
<Scopeuk>
peepsalot it was the build against the dynamic runtime which i'm not certain of in mxe that means the dll overloading trick should be reliable
<peepsalot>
Scopeuk: btw i dont know if youve seen but the dynamic linked option I was trying to do was being done in https://github.com/openscad/openscad/pull/4067 which hasn't been merged yet
<Scopeuk>
I saw the attempt, i hadn't checked in with it yet
<lf94>
Anyone want to quickly make me a flat bracelet with my logo slightly raised on it?
<peepsalot>
openscad master is still statically linked to mimalloc. since that part of cmake wasn't edited in the VS pr, it won't find and link with vcpkg's version regardless what it built and installed
<lf94>
(I'll draw it, it is very easy, I'm just doing a million things)
<lf94>
It's to tighten my sweater cuffs lol.
<lf94>
(I'll give an SVG)
<lf94>
(Just have to extrude stuff by a few mm)
Guest87 has joined #openscad
Flecks has joined #openscad
<Guest87>
hola
Guest87 has quit [Client Quit]
t-paul[m] has quit [*.net *.split]
niyawe has quit [*.net *.split]
tcurdt- has quit [*.net *.split]
Fleck has quit [*.net *.split]
berndj has quit [*.net *.split]
Alicia has quit [*.net *.split]
josephl has quit [*.net *.split]
tcurdt- has joined #openscad
berndj has joined #openscad
t-paul[m] has joined #openscad
Alicia has joined #openscad
josephl has joined #openscad
niyawe has joined #openscad
HannoBraun[m] has quit [Ping timeout: 240 seconds]
M6piz7wk[m] has quit [Ping timeout: 240 seconds]
Notkea has quit [Ping timeout: 240 seconds]
miique has quit [Ping timeout: 250 seconds]
Foidi[m] has quit [Ping timeout: 240 seconds]
NoGare[m] has quit [Ping timeout: 252 seconds]
jochen[m] has quit [Ping timeout: 252 seconds]
ScottJackson[m] has quit [Ping timeout: 252 seconds]
OlivierChafik[m] has quit [Ping timeout: 268 seconds]
Cadair has quit [Ping timeout: 268 seconds]
t-paul[m] has quit [Ping timeout: 260 seconds]
Notkea has joined #openscad
ccox has joined #openscad
ecraven has left #openscad [Bye]
ccox has quit [Ping timeout: 240 seconds]
M6piz7wk[m] has joined #openscad
ur5us has joined #openscad
<Scopeuk>
peepsalot yeh it will still need some work but the dynamic vs static ms runtime at the bottom is what will allow or block the dll overload method from performing the injection as far as my understanding goes
<teepee>
I guess my only question regarding the shared_ptr would be if there's a way to remove the shared_from_this, we use it for Contexts already, so it's not a huge problem
<teepee>
but it still feels like a bit of magic :)
<teepee>
what's going on with the matrix bridge again :/
<teepee>
OlivierChafik[m]: you still there?
<OlivierChafik[m]>
Hehe yeah it's cool magic if you ask me, but to remove it we'd need to modify the interface of visitor methods that accept AbstractNode& args, and change the way getNodeByID works
<OlivierChafik[m]>
Happy to explore the interface change as a follow up, so long as we move to not having to delete stuff manually
<teepee>
if it's a bigger thing, we can postpone that, it would just be nice to have if it's not too much
<OlivierChafik[m]>
matrix bridge, what do you mean, CI?
<teepee>
you are connected via matrix/element no?
<OlivierChafik[m]>
(it's the magic bit that makes C++ feel this much close to Java, for better or worse)