teepee changed the topic of #openscad to: OpenSCAD - The Programmers Solid 3D CAD Modeller | This channel is logged! | Website: http://www.openscad.org/ | FAQ: https://goo.gl/pcT7y3 | Request features / report bugs: https://goo.gl/lj0JRI | Tutorial: https://bit.ly/37P6z0B | Books: https://bit.ly/3xlLcQq | FOSDEM 2020: https://bit.ly/35xZGy6 | Logs: https://bit.ly/32MfbH5
kintel has joined #openscad
<kintel> t4nk_fn that's a pretty ugly bug, the code was actually in use up until 2 days ago: https://github.com/openscad/openscad/pull/5024
<kintel> I'll fix it, as the code is still being built
<gbruno> [github] kintel pushed 1 modifications (Bugfix: function names for context destruction somehow fell out) https://github.com/openscad/openscad/commit/43c5bb34f5f0868a5e7a9b1fdc8d91f396be6808
<gbruno> [github] kintel opened pull request #5028 (Bugfix: function names for context destruction somehow fell out) https://github.com/openscad/openscad/pull/5028
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
snaked has joined #openscad
kintel has joined #openscad
<InPhase> teepee: I went ahead and ordered a Framework 13. Here's hoping it was a smart decision. :)
<teepee> InPhase: if you got the intel then yes ;-)
<teepee> I'm still quite happy with mine
<InPhase> No, I specifically ordered the AMD for the better battery life and thermals.
<teepee> well, so you need a 3 page guideline which connector can do what :D
<teepee> I love how mine works great in power saver mode, no fan noise ever. if I really need to, I can switch to full power mode which then can get noisy but that's fine for those occations
<InPhase> teepee: I did see a note about the connectors having different capability...
<teepee> yep, that's only with the AMD board, but I guess it's not a huge deal
<InPhase> It looks like the rule is don't put USB-A in the back two.
<teepee> I could not get access to the embedded controller enabled but I did not really miss that so far
<teepee> and charging is also restricted to some ports IIRC
<InPhase> I was planning USB-C and HDMI in the back, and USB-A in the front two. And I grabbed an ethernet and a spare USB-C for in the bag.
<InPhase> But I will probably dongle ethernet in most of the time.
<teepee> I did have to get used a bit to the slightly different keyboard layout, but I think the framework one is better than dell, specifically the bigger cursor keys
J24k40 has joined #openscad
J24k71 has quit [Ping timeout: 250 seconds]
<InPhase> teepee: I'm confident I'll find the home/end/pgup/pgdown thing annoying on that keyboard. But I'm thinking about following a suggestion for mapping ctrl-arrowkey to those, to preserve it being a one-handed operation.
<InPhase> Maybe right-alt-arrowkey. Although I can't completely lose alt-arrowkey for irssi window switching.
Guest62 has joined #openscad
Guest62 has quit [Client Quit]
mmu_man has quit [Ping timeout: 255 seconds]
<gbruno> [github] kintel closed pull request #5028 (Bugfix: function names for context destruction somehow fell out) https://github.com/openscad/openscad/pull/5028
<gbruno> [github] kintel pushed 1 modifications (Bugfix: function names for context destruction somehow fell out (#5028)) https://github.com/openscad/openscad/commit/de910875c1a79539e6b7e7a0b340e730cafc3710
LordOfBikes has quit [Ping timeout: 272 seconds]
J24k40 has quit [Ping timeout: 250 seconds]
<JordanBrown> ndnihil I've been toying with the idea of having multiple cameras, so that you could look at an object from multiple perspectives in the same OpenSCAD session.
<JordanBrown> Though that would bring up the question of whether the pan/rotate controls move the universe or move the camera. Both are useful.
<JordanBrown> If they move the camera, then moving in onw view would not affect the others. If they move the universe, it would.
<ndnihil> that could be handy
<ndnihil> I just opened two instances and loaded the same model
<ndnihil> vim/vi as editor
<ndnihil> I don't think I've ever used the built-in one
<JordanBrown> And auto-reload.
<ndnihil> yeah
<ndnihil> my desktop is 3 monitors wide though, so I've got the room for it
<JordanBrown> I have one 43" 4K and one 32" 1080p, plus for work chat a 10".
<JordanBrown> I need to swap the 32" out for another 43" 4K, but first I need to move my printer and I need a video card that can drive 4K.
LordOfBikes has joined #openscad
<gbruno> [github] kintel pushed 1 modifications (WIP: Directly create Manifold from PolySet before attempting repair) https://github.com/openscad/openscad/commit/84917c12834d8096127112b35e7fe4de7b145ba8
<gbruno> [github] kintel synchronize pull request #5020 (WIP: Attempt creating ManifoldGeometry from manifold PolySets) https://github.com/openscad/openscad/pull/5020
<kintel> pca006132 Thanks, I think I understand MeshGL now. For the time being we can probably just use the Mesh class directly as we're not utilizing any vertex properties.
<kintel> pca006132 Another smallish issue: For caching purposes, we'd like to have some indication of the cost of caching a ManifoldGeometry, but I haven't found any way of querying how large a Manifold object is. Do you think it would be feasible to do that? Not sure if/what would need to be added to Manifold to perform such a query..
<gbruno> [github] kintel pushed 9 modifications (Renamed private members to have underscore suffix) https://github.com/openscad/openscad/commit/851511deb2cdc3100f1f15cdcc7e65a33bf57c14
<gbruno> [github] kintel opened pull request #5029 (More PolySet Refactoring) https://github.com/openscad/openscad/pull/5029
<InPhase> kintel: There's no vertex count?
<kintel> My understanding if Manifold is that it's a node tree. We can perform a (relatively expensive?) operation to convert it into a single node, and ask for a vertex count. But since we're not planning to convert to a concrete mesh at the time of cashing some intermediate geometry, I'm not sure we want to do that.
<kintel> Also, vertex count != memory usage, but we might be able to come up with a heuristic
<InPhase> Ah, tree storage.
<kintel> I haven't dug past manifold.h yet ;)
<InPhase> And it would have to be at least close to proportional to vertex count I'd think.
<kintel> ..but I remember reading a warning somewhere about the cost of conversion
<gbruno> [github] kintel edited pull request #5020 (Maintain manifoldness when converting between PolySet and ManifoldGeometry) https://github.com/openscad/openscad/pull/5020
<gbruno> [github] kintel edited pull request #5020 (Maintain manifoldness when converting between PolySet and ManifoldGeometry) https://github.com/openscad/openscad/pull/5020
<kintel> PolySet is almost a reasonable class now! Just took us a decade to clean up :)
<kintel> ..just need to kick quantization to the curb...
<gbruno> [github] kintel pushed 9 modifications (Renamed private members to have underscore suffix) https://github.com/openscad/openscad/commit/774bc878b80dbf6ef12f164a1cc95ff658c5cd6b
<gbruno> [github] kintel synchronize pull request #5029 (More PolySet Refactoring) https://github.com/openscad/openscad/pull/5029
<gbruno> [github] kintel pushed 2 modifications (Removed unused fillInterleavedBuffer()) https://github.com/openscad/openscad/commit/8018ffb136365002c6c0f66cecd5f77897938a5b
<gbruno> [github] kintel pushed 9 modifications (Renamed private members to have underscore suffix) https://github.com/openscad/openscad/commit/9785239c6814c8e9cfedc9f85297581072d871cf
<gbruno> [github] kintel synchronize pull request #5029 (More PolySet Refactoring) https://github.com/openscad/openscad/pull/5029
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
J24k has joined #openscad
<J24k> Regarding the 3mf can't add triangles error - i just had a case of a QR code which is automatically generated - now 1 from 100 got that export error  but no warning or error when rendering. As this is 2D extruded i was thinking the code data itself caused it  but the error also vanished if i cut out the QR with 0.01 instead of 0.001 overlap
<J24k> (epsilon)  This got me thinking if there is a precision issue root of that. As in Manifold 0.0001 will cause problems but 0.001 is working.
<J24k> Also this 3mf export error might be a rare occurrence but can break a production chain.
teepee has quit [Ping timeout: 260 seconds]
<guso78k> kintel, I contantly find myself checking, if a Geometry is Manifold, Nef of Hybrid, whereas i always need PolySet instead. Isn't there a utility function for that ?
<guso78k> Right now I am planning to export Postscript from a 3D Solid like that:
<guso78k> People using OpenSCAD are no longer required to have access to a 3D printer.
<J24k> can please someone confirm this code causes an 3mf export "Can't add triangle to 3mf" error after rendering (manifold) and export as 3mf -  https://bpa.st/XJMA
<guso78k> i see a cube only and no error here. probably because I have have a different rand seed than you ?
<guso78k> are you developing your personal brand qr code generator ?
<J24k> rand is entered by the loop - no i needed a random as the original QR contained personal data (from someone)
<J24k> guso78k did you export this as 3mf and rendered with manifold?
<J24k> (the qr is on the bottom)
<J24k> pca006132 @Kintel not sure if related but i get a render error without manifold - so maybe this is some edge case where manifold is not reporting an error but the 3mf export lib can't handle it because of non manifold or closed geometry
<J24k> at least i can reproduce this error 10/10
<guso78k> J24k yes i see the qr code, but its only visible with F5, not F6
<guso78k> yes i have manifold enabled and exported 3mf
<J24k> did you have lazy union active?
<guso78k> lazy union probably not active. i only have manifold, python-engine and path-extrude
<J24k> i just checked and without lazy union i get a render error from manifold (and only the cube without the code)
teepee has joined #openscad
<J24k> this is strange
<guso78k> j24,  when pressing F6, the qr pattern is not visible anymore. maybe 3mf only exports a cube then ?
<J24k> strange you didn't get an error - what version?  2024.2.22 here
<J24k> far more interesting is that when adding a cube();  (in a union with that qr cube difference) the 3mf export works
<J24k> how can adding a cube make "can't add triangle" go away?
<J24k> and moving the cube 10 outside still works but moving it -100 and the export error is there again
<guso78k> J24, sorry i tested my own branch and its based on latest master
<J24k> Thanks - seems i trigger some strange condition for the 3mf library
<J24k> i mean adding the cube was strange but how can moving it 90 units in the void make a difference
<J24k> and the size of the cube with the distance seem to matter https://bpa.st/JK4A
<J24k> so a bigger cube can be farther away and still fix the export issue
<J24k> and while offset also can solve this - manifold doesn't like offset(0.0001) https://imgur.com/a/qbIZPOz
<J24k> offset(-0.01) is already too much for manifold
<J24k> linear_extrude(3.2) works but 6.2 doesn't
<J24k> also smaller versions get this error https://bpa.st/DQDA  but smaller grids will not
<pca006132> kintel I hope the applicants have read that, I think they are probably asking us for concrete requirements specific to us, idk
<pca006132> for cache cost, yeah I think we can have some approximation implemented in manifold
<pca006132> just avoid the actual evaluation, sum the size of the meshes in the underlying csg graph should be enough
<pca006132> but one potential issue would be how to deal with graphs with shared nodes... caching multiple objects with shared nodes has lower cost than naively summing them up, although it should be fine to over-approximate that
<pca006132> J24k we attempt to fix the topology before importing into manifold, so perhaps the problematic topology was fixed when we do that
<J24k> pca006132 but why does it cause the 3mf export issue if it was fixed?
<pca006132> hmm, idk
<pca006132> I think I need to check the specific example
<pca006132> what is the 3mf error message btw?
<J24k> Rendering finished.
<J24k> EXPORT-ERROR: Can't add triangle to 3MF model.
<J24k> and then it exports an empty 3mf file
<J24k> 0 byte
<pca006132> weird
<pca006132> will look at it later today...
<J24k> even though this is a single object it seems lazy union plays a role in it
<guso78k> J24k, can you check if 3MF is fed with a degenerate triangle which causes and error and aborts further execution ?
<J24k> thanks
<J24k> guso78k no i can't see what is happening inside scad
<J24k> but as adding a cube nearby solves it - it shouldn't be the geometry itself, more like the data structure
<guso78k> j24, suppose your problem will resolve if you increase the height of your qr code "bits" (z direction)
<J24k> yes and no some values work - others don't
<pca006132> seems to be working if lazy union is not enabled?
<J24k> but even integer (non decimal) causing this which is strange
<J24k> pca006132 yes without lazy  union it works
<pca006132> is lazy union well tested with 3MF export?
<pca006132> I think maybe you should open a ticket for further investigation
guso78k has quit [Quit: Client closed]
misterfish has joined #openscad
atreo has joined #openscad
<gbruno> [github] UBaer21 opened issue #5030 (3mf Export Error with lazy union) https://github.com/openscad/openscad/issues/5030
<atreo> hello people, is this a channel that i can get help with 3D models? i have a point cloud and a mesh of a building (from the inside), how can i visualise the inside this building? on cloudcompare and meshlab i can only visualise the outer surface, how can i visualise what internal surface?
<J24k> atreo is this related to openSCAD?
<atreo> J24k: i am new to the field, sorry i don't know, i am trying to figure my way arround
<J24k> openscad.org is a software to design 3d models
<atreo> J24k: oh
mmu_man has joined #openscad
<atreo> J24k: where can i go to ask/learn about visualisations of 3D models?
<J24k> but if you want the inside you probably need to create a void by using a difference - at the moment your point cloud / mesh is a positive volume of the inside
<J24k> maybe reddit - there are some subreddits about 3d
<atreo> J24k: actually no, i imaged the inside of the building, so i only have the inside surface, but when i view it (cloudcompare is the only software i found so far) it only shows the model from the outside, no matter how i much i zoon i cannot slice nor walk inside it
<atreo> J24k: let me try reddit, google didn't really give me results, i am mostly trying to find a community so i can ask questions and learn from them
<J24k> yes because you created a volume not a void
<atreo> i see
<J24k> if you remove your mesh from a bigger cube - you will get a void shaped like the inside and there you can walk around
<atreo> J24k: is there a name for this protocol so i can search how it is done?
<J24k> you also can try to invert the normal vectors that can already do the trick
<atreo> J24k: hmmmm
<J24k> boolean difference
<J24k> here how it is done with open scad
<atreo> ok let me see how it is done thank you :-)
<atreo> excellent
atreo has quit [Quit: WeeChat 3.5]
<J24k> atreo you can try https://www.reddit.com/r/3DScanning/
teepee_ has joined #openscad
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
mmu_man has quit [Ping timeout: 256 seconds]
<pca006132> I doubt if openscad is efficient enough to handle large point clouds...
<pca006132> iirc they are often multiple gigabytes, and usually require lazy loading or something
mmu_man has joined #openscad
<t4nk_fn> mmu_man, I still have your video about modeling that battery thingy with openscad to watch at some point..
<t4nk_fn> however, I recently started watching a few eps of 'Allo Allo'.. and I'm worried I can't help but laughing because I'think I'm watching the Onglish Poloseman ;) ...since you're french and all :b
guso78k has joined #openscad
<t4nk_fn> (seriously, I watched a little bit, and your English is just fine!)
<guso78k> i am wondering, it clipper has some ready-to-use function to check if a pt is inside a 2d concave polygon
<t4nk_fn> mmu_man, also: you couldn't import PB_BAT1.stl, right? theres a setting under Advanced where you can up the cache a bit, and then it will load. it's a horrible object to look at, but kind of nice to see all the scanning detail
guso78k has quit [Quit: Client closed]
mmu_man has quit [Ping timeout: 264 seconds]
<InPhase> J24k: Well that's frustratingly regressive of the hdmi forum...
mmu_man has joined #openscad
<InPhase> J24k: Fortunately it only affects future resolutions that do not impact any current prominent usages of hdmi, but if they stick to this, it means yet another switch away from an established connection protocol.
<InPhase> J24k: Frustrating because hdmi became the default standard for connecting to projectors, and it can take 5-10 years to roll along to another standard as projectors get replaced.
<InPhase> J24k: I don't really use an external monitor, but keep it around just for projecting purposes at work.
<Scopeuk> the hdmi thing was weird. they had similar fights over HDCP when it first came in. they are sort of trying to prevent "compatible" devices which don't pay their licence fee from being release working on the assumption that an open implementation will make that easier. this is likely true but it is unlikely that that change is enough to make it
<Scopeuk> worth the cost
TheCoffeMaker has quit [Ping timeout: 246 seconds]
TheCoffeMaker has joined #openscad
TheCoffeMaker_ has joined #openscad
TheCoffeMaker has quit [Read error: Connection reset by peer]
noonien808 has quit [Ping timeout: 272 seconds]
misterfish has quit [Ping timeout: 272 seconds]
snaked has quit [Quit: Leaving]
noonien808 has joined #openscad
R2robot has joined #openscad
othx has quit [Ping timeout: 260 seconds]
othx has joined #openscad
MJ76 has joined #openscad
Mohit has joined #openscad
<pca006132> thought that DP is more 'free' in this regard? idk
<Scopeuk> I believe so but I'm far from an expert in the low levels of modern video interfaces
Kehet has joined #openscad
<Kehet> Hi all, sorry if I'm asking stupid, but what is the status of that package manager project? I found some GitHub discussion issue, but it's quite old. There appears to be some more or less abandoned projects, but I'm not sure how widely adapted those are.
linext_ has joined #openscad
linext has quit [Ping timeout: 260 seconds]
<teepee> Kehet: there is no finished or adopted version
<Kehet> Alright, thanks
misterfish has joined #openscad
<J24k> I just checked the 3mf data and (not very surprised) the vertex data is 1.799999  and 0.199999 and 2.000000  while scad had 1.8  0.2 and 2   But can we round to 10⁻⁶ for writing the 3mf and not floor the values?
Mohit has quit [Quit: Client closed]
MJ76 has quit [Quit: Client closed]
misterfish has quit [Ping timeout: 260 seconds]
mmu_man has quit [Ping timeout: 255 seconds]
<JordanBrown> teepee, kintel, could you weigh in on issue #3649 (retaining export path) so that this guy doesn't do a bunch of work only to be vetoed?
mmu_man has joined #openscad
califax has quit [Remote host closed the connection]
califax has joined #openscad
otsakir has joined #openscad
<otsakir> I'm iterating on "https://github.com/openscad/openscad/issues/3649" issue.  It's about reviewing the logic for export path and involves only the UI/Qt layer. The patch is almost ready and has been thoroughly manually tested on a Linux machine.
<otsakir> I'm not sure how to proceed with automated testing though and if this needs to be done. It's a UI fix involving different components of the application like getting a preference value or using a new map variable in the activeEditor. It certainly can't be unit-tested. Maybe some sort  higher-level  could apply.
<teepee> otsakir: there is no automated UI testing available unfortunately
kintel has joined #openscad
<otsakir> Thanks :teepee. What parts of the functionality does the existing test suite cover ?
<teepee> scad code / preview / mesh render / import / export
<gbruno> [github] otsakir opened pull request #5031 (Issue3649 export filename not remembered) https://github.com/openscad/openscad/pull/5031
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
qeed has quit [Quit: qeed]
qeed has joined #openscad
otsakir has quit [Ping timeout: 250 seconds]
teepee_ has joined #openscad
califax has quit [Remote host closed the connection]
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
mmu_man has quit [Ping timeout: 252 seconds]
califax has joined #openscad
TheCoffeMaker_ has quit [Ping timeout: 272 seconds]
TheCoffeMaker has joined #openscad
TheCoffeMaker has quit [Excess Flood]
TheCoffeMaker has joined #openscad
TheCoffeMaker has quit [Excess Flood]
mmu_man has joined #openscad
TheCoffeMaker has joined #openscad
<JordanBrown> otsakir a pull request will at least get you automated builds on each of the platforms, which is good because there could be compile issues.
TheCoffeMaker has quit [Quit: So long and thanks for all the fish]
J24k has quit [Quit: Client closed]
J24k has joined #openscad
TheCoffeMaker has joined #openscad
TheCoffeMaker has quit [Ping timeout: 256 seconds]
TheCoffeMaker has joined #openscad
otsakir has joined #openscad
otsakir has quit [Ping timeout: 250 seconds]
kintel has joined #openscad
<kintel> J24k Catching up: The 3mf error above happens _only_ when enabling lazy union?
<kintel> lazy union is not well tested at all. Needs someone to adopt it and go through all the corner cases..
<kintel> guso78 In terms of checking the geometry type: You just want to convert whatever you've got into a PolySet?
<kintel> -> PolySetUtils::getGeometryAsPolySet()
<J24k> kintel as i have this always on - i didn't experienced it without, and how this behaves it is very difficult to replicate. Now someone contacted be because he got this error - but yes seems only with lazy union
<J24k> i thought olivier did some work on it.
<J24k> the interesting part was that it also happens with only one object, before i thought it had to do with multiple objects in one 3mf  as an added union removed the error.
guso78k has joined #openscad
<kintel> Possible, haven't seen him around in a while
<guso78k> Kintel, this is exactly what I want, thx !
<guso78k> https://imgur.com/a/5K0EBNB need to optimize my algorithm to safe paper
<J24k> i still can't grasp how an added cube anywhere outside also prevent the error - so from my understanding the error can't be geometry related
<kintel> J24k With buggy code, everything is possible ;)
<J24k> true true
<guso78k> my code was also working fine for month, until somebody else has used it in a slightly different way to create complete crap. than i realized, that it was absolute luck that it worked for me ;)
<J24k> i know that lazy union was only to speed up things - so hopefully if you get a multi object option this is implemented differently and will not cause these problems
<J24k> guso78k i guess it is working until it is not
<guso78k> yes, generally test coverage, is much lower that somebody would expect
<J24k> i feel a bit uneasy seeing that these experimental features are used more and more
<kintel> J24k Yeah, this is why we need to move the big ones out of experimental and make a new release.
<kintel> It's still a lot of work though, but we want to try to get Manifold into the next release
<kintel> Any help is appreciated: https://github.com/openscad/openscad/issues/4825
<J24k> is it true that manifold can't handle anything below 10⁻³ as this is when i always get issues with it.
<gbruno> [github] kintel edited issue #4825 (Move manifold out of experimental) https://github.com/openscad/openscad/issues/4825
<kintel> pca006132 may be able to answer that better. I thing small features will be merged, but 10^-3 sounds a bit too large
<kintel> If you find anything, open a ticket!
<J24k> from https://github.com/openscad/openscad/pull/4561  it sounded like there might be a lazy union option within manifold itself
<J24k>  manifold doesn't like offset(0.0001) https://imgur.com/a/qbIZPOz
<kintel> Yeah, manifold organizes CSG results as a tree structure, and I guess it's possible to defer the last union somehow. It's less of an issue with Manifold since it's so fast, but I'm sure there is a pain point somewhere
<kintel> offset is a 2D op, not sure how that affects manifold.
<J24k> I only know without manifold i get clean geometry, also without lazy union manifold produces these thin faces that cover parts
<kintel> J24k Can you open a ticket with an example?
TheCoffeMaker has quit [Ping timeout: 252 seconds]
<J24k> it is the same example as 5030 just with an offset(-0001)
<J24k> but i can open a ticket for that too
guso78k has quit [Ping timeout: 250 seconds]
J24k has quit [Quit: Client closed]
J24k has joined #openscad
<kintel> Thx, let's keep lazy union separate from other issues
TheCoffeMaker has joined #openscad
TheCoffeMaker has quit [Excess Flood]
TheCoffeMaker has joined #openscad
<gbruno> [github] UBaer21 opened issue #5032 (Manifold surface cover when using small offsets) https://github.com/openscad/openscad/issues/5032
<J24k> i also had issues when differencing or intersecting with large (10000) objects - why i thought that manifold may have a limited range
<J24k> e.g. a difference with a cube(10000); while a cube(100) works fine
feuerrot_ is now known as feuerrot
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
snaked has joined #openscad
johnmcnuggets has joined #openscad
<gbruno> [github] amatulic opened issue #5033 (Have a way to customize the toolbars, even if it's an editable config file) https://github.com/openscad/openscad/issues/5033
johnmcnuggets has quit [Changing host]
johnmcnuggets has joined #openscad