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
teepee_ has joined #openscad
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
mmu_man has quit [Ping timeout: 252 seconds]
Ultrasauce is now known as sauce
mmu_man has joined #openscad
UltimateCodeWarr has quit [Quit: Client closed]
myosotis has joined #openscad
UltimateCodeWarr has joined #openscad
mtm has joined #openscad
J24k17 has joined #openscad
J24k72 has quit [Ping timeout: 256 seconds]
hyperair has quit [Ping timeout: 248 seconds]
LordOfBikes has quit [Ping timeout: 265 seconds]
LordOfBikes has joined #openscad
snaked has joined #openscad
crazy_imp has quit [Ping timeout: 265 seconds]
crazy_imp has joined #openscad
<gbruno> [github] kintel closed pull request #5235 (Add backend setting / flag to enable manifold in prod builds) https://github.com/openscad/openscad/pull/5235
<gbruno> [github] kintel pushed 19 modifications 49 removals (Add backend setting / flag to enable manifold in prod builds (#5235) Co-authored-by: Marius Kintel <marius@kintel.net>) https://github.com/openscad/openscad/commit/8d41b4f7fde809308e054aec4506a33318de5361
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
kintel has joined #openscad
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
<kintel> teepee Re. 3mf color import: If the 3mf file contains multiple meshes, it looks like we currently perform a CGAL union on import, wiping out all colors. Did you look into that as part of color import?
<teepee> yes, added option to use manifold ops
<kintel> cool, with the most recent commit, you can just look up render settings for which backend is selected :)
<teepee> hmm, I'm in that 3mf export branch, so I need to update that, but it needs some cleanup anyway
<kintel> Are you planning to merge your import work into guso78k's branch?
<teepee> that might make sense as that would allow for export->import testing
<kintel> _1
<kintel> +1
<teepee> it's quite a rabbit hole
<teepee> as the build items can reference object that are meshes or objects that have components
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
<teepee> and the multiple components reference the meshes again
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
<teepee> plus we have the transformations and properties in various places
<gbruno> [github] kintel closed issue #5192 (Make CGAL vs. Manifold configurable in Preferences) https://github.com/openscad/openscad/issues/5192
<teepee> what's not going to work is some of the bambulab color files, those look hacked - not conforming to spec
<teepee> something for later :)
<teepee> well, when using lib3mf, there's no way to read those hacked extensions anyway
mtm_ has joined #openscad
alXsei has joined #openscad
mtm has quit [Ping timeout: 260 seconds]
alXsei has quit [Quit: Leaving]
myosotis has quit [Remote host closed the connection]
mmu_man has quit [Ping timeout: 265 seconds]
fling has quit [Remote host closed the connection]
fling has joined #openscad
<gbruno> [github] hzeller opened pull request #5334 (Fix includes for `<array>`, `<map>`, `<set>`, `<unordered_map>`, `<unordered_set>`) https://github.com/openscad/openscad/pull/5334
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
fling has quit [Remote host closed the connection]
fling has joined #openscad
<J24k17> teepee very cool,  do you think the color info from the shiny materials can be used instead of white?
<J24k17> seems they using » displaycolor="#EC1B23FF" « for that
L29Ah has quit [Ping timeout: 252 seconds]
<J24k17> looks like the alpha value is ignored and need to be "transparency"
<J24k17> Just imported a 260k bambu.3mf in scad (2024.9.29)  and this took minutes
<J24k17> ok even scad 3mf files took very long and ended with errors - maybe because of multiparts
<J24k17> yeah single objects open quite fast
guso78k has quit [Quit: Client closed]
misterfish has joined #openscad
fling has quit [Remote host closed the connection]
fling has joined #openscad
<J24k17> kintel - is it possible that the manifold option is gone - but not selected .. rendering took "hours"
<J24k17> 2024.09.29
<J24k17> welp
<J24k17> it is using CGAL for rendering …
mmu_man has joined #openscad
sinned69158 has joined #openscad
be7b5 has joined #openscad
be7b5 has quit [Client Quit]
misterfish has quit [Ping timeout: 265 seconds]
fling has quit [Remote host closed the connection]
fling has joined #openscad
sinned69158 has quit [Quit: Poof goes the quack]
sinned69158 has joined #openscad
mtm_ has quit [Ping timeout: 265 seconds]
mtm has joined #openscad
hyperair has joined #openscad
kintel has joined #openscad
<kintel> J24k17 Yeah, multi-part 3mf import is doing a CGAL union, see discussion with teepee above; he's fixing that
<J24k17> kintel but manifold is not active anymore in the 29. version
<J24k17> (different issue)
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
misterfish has joined #openscad
kintel has joined #openscad
<kintel> J24k17 Manifold is now non-experimental, and can be activated under Preferences->Advanced, see https://github.com/openscad/openscad/pull/5235
<gbruno> [github] folkertvanheusden synchronize pull request #5288 (PovRay export) https://github.com/openscad/openscad/pull/5288
<J24k17> oh .. thought it would just be activated .. thanks for clarification
<J24k17> kintel  https://imgur.com/a/noX55EZ   Manifold is selected - but it uses CGAL
<kintel> uhh, that's odd. Let me check locally
<J24k17> i have switched it of (to cgal) and back on .. now it is active
<kintel> something is odd though: Rendering Polygon Mesh using Manifold.. Top level object is a 3D object (Nef polyhedron)
<kintel> GUI testing fail. I'll look into it
<J24k17> and it is swiching to CGAL when closing reopen
<J24k17> (the selection stays on manifold but it is using CGAL after restart again)
<gbruno> [github] kintel opened issue #5335 (Manifold selection issues in GUI) https://github.com/openscad/openscad/issues/5335
misterfish has quit [Ping timeout: 260 seconds]
<gbruno> [github] kintel synchronize pull request #5288 (PovRay export) https://github.com/openscad/openscad/pull/5288
<gbruno> [github] kintel synchronize pull request #5288 (PovRay export) https://github.com/openscad/openscad/pull/5288
TylerTork has joined #openscad
<TylerTork> good morning me fabbies. My question today is about lighting. Is there not a way I can get light on my model so I can view it from the angle I want and still have decent contrast to show the features, so I can take a snapshot? I've had to resort to adding a Customizer parameter to rotate the model so I can get it lit correctly.
ooxoo has quit [Remote host closed the connection]
ooxoo has joined #openscad
<J24k17> iirc light is tied to the camera  - so you have to rotate the model .. but can't change the angle to the lightsource
<TylerTork> J24k17: it's very frustrating trying to get it right. Say I put in a rotation parameter, how do I know what rotation to enter to get the lighting I want? I can see how it changes as I alter the values, but then I have to try to orient the camera for the shot and that totally changes the lighting.
<TylerTork> Ultimately I had to take the screenshot with the model upside-down on the screen, then rotate the image in post. It's fairly ridiculous.
<J24k17> $vpr=[0,45,$t*360];rotate($vpr+[15,0,45])cube(50);
<gbruno> [github] kintel synchronize pull request #5288 (PovRay export) https://github.com/openscad/openscad/pull/5288
<J24k17> as you see if you rotate the object but stay relative to the object - the light does that too
<gbruno> [github] kintel synchronize pull request #5288 (PovRay export) https://github.com/openscad/openscad/pull/5288
<J24k17> $vpr=[1,1,1]*$t*360;rotate($vpr)rotate([45,45,0])cube(50,true);  // for all axis
<J24k17> this is also causing that selected colors are never match the png image ..as lightning always changes the color
<J24k17> and you can't get the light inline with the camera
<J24k17> TylerTork but as you now can use PovRay .. all these problems are gone
TylerTork has quit [Ping timeout: 256 seconds]
misterfish has joined #openscad
<gbruno> [github] kintel pushed 1 modifications (Bugfix: Default render backend was wrong, confusing the settings writer) https://github.com/openscad/openscad/commit/2afcc0933e06d380d1e05ecdd766f0a57c9949d1
<gbruno> [github] kintel opened pull request #5336 (Bugfix: Default render backend was wrong, confusing the settings writer) https://github.com/openscad/openscad/pull/5336
<kintel> J24k17 ^ should fix it
teepee_ has joined #openscad
<kintel> I guess one confusing aspect of having two backend: If we switch backends, we won't blow the geometry caches, which makes already cached geometry calculated from one backend be accessed from the other backend
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
myosotis has joined #openscad
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
<kintel> pca006132 Do you know if the manifold convex hull stuff is stable enough to use instead of CGAL?
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
<J24k17> kintel  great!  but if only they were mixed up - does that mean if someone switches to CGAL it will revert after closing the software?
<gbruno> [github] kintel opened issue #5337 (Implement roof() without CGAL) https://github.com/openscad/openscad/issues/5337
<kintel> J24k17 yes, it's a preference setting, so it will persist
<kintel> You're not really supposed to switch back and forth unless you know what you're doing, hence Advanced preferences :)
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<J24k17> if manifold is now default - we still have an issue with "stop on first warning" if manifold starting a "repair" or is that msg changed?
<gbruno> [github] BK524 opened issue #5338 (Producing only triangular mesh elements when exporting into .off or .obj) https://github.com/openscad/openscad/issues/5338
<gbruno> [github] BK524 edited issue #5338 (Producing only triangular mesh elements when exporting into .off or .obj) https://github.com/openscad/openscad/issues/5338
<J24k17> WARNING: PolySet -> Manifold conversion failed: NotManifold
<J24k17> Trying to repair and reconstruct mesh..
<J24k17> Rendering cancelled on first warning.   - That would be something the user can't really influence
TylerTork has joined #openscad
<TylerTork> J24k17: Don't see how that solves it. I want a way to take quick screenshots -- and actually see surface features -- in the OpenSCAD client. What is this, a command line utility?
<J24k17> to check something you can use modifier and simply change the view
<TylerTork> as someone who also does a little photography, to take still shots, I want to orient the model to the camera first, then move the lights around until it looks right. Being able to make a pretty animation is nice, but there's no guarantee any frame of it will be what I want.
TylerTork has quit [Ping timeout: 256 seconds]
TylerTork has joined #openscad
<TylerTork> J24k17: As someone who first heard of this TODAY, the relevance of PovRay to my issue is unclear. Rather the providing more links, can you write one sentence telling how I can apply this to getting a good still shot without writing scripts, exporting files, etcetera? I just want to get a decent view of a model in OpenSCAD preview without having to
<TylerTork> jump through hoops.
<J24k17> TylerTork if you want nice images/animations you don't use openSCAD - you dont't have materials, shadows, reflections etc - you use a raytracer like povray .. or blender
<J24k17> for using only openSCAD - select the right colors to get contrast for your objects
<TylerTork> Yes, I get that. And if I need NICE images I'll go whole hog. What I need more often is an image where I can SEE WHAT THE F*** I'M LOOKING AT.
<J24k17> That is what modifier are for
<J24k17> cheatsheet!
<othx> cheatsheet is https://www.openscad.org/cheatsheet/ for the release version and https://www.openscad.org/cheatsheet/snapshot.html for the development snapshot versions
<J24k17> you use them to view only the parts you need to see - so you can move the camera around and zoom in
<TylerTork> J24k17: Sorry, I don't know what you mean by "modifier".
<TylerTork> Oh, yes, I see what you mean. I know about those. Don't see how that helps with lighting.
<J24k17> Please post an image of your problem if you want me to understand your problem
<TylerTork> This is pretty good. There's good contrast so I can see all the parts. https://prnt.sc/i6JpIR06BKsf
<TylerTork> Now flip it over so I can get a top view. https://prnt.sc/u46vmIhiBuy8
<TylerTork> Horrible, and no way to adjust the lighting while still getting the angle I wanr
<J24k17> both look quite equal
<TylerTork> J24k17: not to me. The contrast in the second image is markedly less. The color of the pegboard is nowhere close to the specified color. It's dark, it's boring. I want a crisp and attractive shot. It doesn't need to be beautiful, I just don't want to have to strain to make out features. This is also an accessibility issue since colorblind people
<TylerTork> really need that high contrast.
<TylerTork> Compare with this: file:///C:/Users/tyler/OneDrive/Documents/Lightshot/Screenshot_2.png
<TylerTork> damn
<TylerTork> https://1drv.ms/i/s!AtuQB4kWUnz4hJcXBTq-zIHw70srwg?e=psZ5A4
JordanBrown has joined #openscad
<JordanBrown> 2024.09.29 doesn't have Manifold?
<TylerTork> JordanBrown: Is this about my question? Does have manifold.
<JordanBrown> No, I just popped in and haven't looked at the log.
<JordanBrown> But I just installed 2024.09.29 and it doesn't have Manifold on the features list, and renders are using CGAL.
<TylerTork> ah. well I'm not happy to hear that
<JordanBrown> I'm sure it's an error of some sort.
<J24k17> Jordan .. Manifold is now under Advance  .. and there is a bug that is not active .. which is fixed https://github.com/openscad/openscad/pull/5336
Guest85 has joined #openscad
<JordanBrown> Ah, thanks, I skimmed that but was looking for a checkbox.
Guest85 has quit [Client Quit]
<J24k17> TylerTork Sorry but all those images look bad  - you obviously want a scene image and not to see something for design
<JordanBrown> ... which leads me to the reason I installed 2024.09.29: has anybody noticed that Manifold doesn't seem to support Wireframe?
<TylerTork> J24k17: Okay -- what's the most straightforward way to get a scene image?
<J24k17> here is what i see https://imgur.com/a/7AYYXKO  - and there is no difference
<JordanBrown> The difference between the darker image and the lighter ones is that the darker image has the face pointing towards us and left, while the lighter ones are pointing right.
<J24k17> TylerTork as i said - you want a nice image you can now use povray to get it ..  or  blender (which is probably more work)
<J24k17> I agree that it would be nice to set the light source in openSCAD too .. you can open a feature request for this
misterfish has quit [Ping timeout: 265 seconds]
<TylerTork> J24k17: There is already a feature request which I added a "me to" to. Meanwhile, can you write one sentence telling how I can easily apply PovRay to getting a good still shot?
<TylerTork> Do I -- what? Export a 3mf file then open it with...?
<JordanBrown> Are those shots orthographic, or perspective?
<J24k17> I think we had some shaders but they are not implemented afaik
<TylerTork> Do I have to choose now or can I decide once I see how either of them looks?
<J24k17> TylerTork the next dev snapshot version should have included the option to "export povray"  which is then opened in povray and press render
<J24k17> RUN it is
<JordanBrown> I'm wrong about which way the image is pointing. But given the same camera angle, you should be getting the same colors.
<TylerTork> So I need "POV-Ray for Windows" and that will integrate with OpenSCAD?
<JordanBrown> With an experimental feature that's coming out in the next few days.
<J24k17> another option is to export the geometry as 3mf / off / obj  which should include the colors on the next version so you can use any 3D-software like  3D builder to get a nice image
<JordanBrown> And where "integrate" means that OpenSCAD can export a file that POV-Ray can import.
<TylerTork> Jordan, the camera angle is not the same. One is from below and one from above. I had to jump through some hoops to get the part aligned so I could get good lighting on it, then turn the picture to the right orientation.
<teepee> you can even send the file directly now
<J24k17> you click the file that is exported ↦ which should open PovRay ↦ click RUN
<JordanBrown> But OpenSCAD is primarily a modeling tool; it doesn't try to make high-quality images. POV-Ray tries to make high quality images.
<JordanBrown> Right, if the camera angles are different then how the light hits the part is different.
<TylerTork> That would be close enough for my purposes. I'll be watching the skies for the next dev drop then
<teepee> you can register on the github PR which should give an email once it's merged
<teepee> "Notifications" in the right sidebar
<J24k17> there are a lot failing ..
<teepee> as kintel mentioned in the comments, just an test issue due to concurrent changes
<J24k17> TylerTork here is an example how that will work https://vanheusden.com/permshare/openscad-povray-example.mp4
<J24k17> And with a bit code changes you can even get nicer materials (i think)
<teepee> who tossed that poor raspi out of a spaceship?
<J24k17> naa  it is more  throwing a camera on a string .. as the lightsource didn't change - and if floating in space the shadows would  change
<teepee> maybe we can later collect a couple of povray templates for direct use, like a spinning thing where the model sits on top
<teepee> right, no shadows in space
<teepee> I can ask a friend who used povray in the old days. maybe he remembers some tricks :)
<J24k17> or the sun would be lightsource and if the object tumbles ...  however
kintel has joined #openscad
<J24k17> maybe povray export catches $vpr $vpd $vpt $vpf  and $t to make animation by default
<kintel> J24k17 Manifold isn't default yet :)
<J24k17> isn't ?
<JordanBrown> teepee since you're here: WRT SVG and $fX, I'm doing some experiments and see exactly zero differences as I change $fX.
<kintel> no, it's just out of experimental. Keeping CGAL default until manifold is ready, but I want to switch relatively soon
<teepee> depends on the SVG, if it has no actual curves, no effect
<teepee> I don't remember all the primitives that use it, but some are
<kintel> Yeah, we still need to figure out how to best handle situations where people create non-manifold objects
<JordanBrown> No, I made a sample SVG with one curve (triangle, two straight lines, one curve).
<TylerTork> In today's development build, is there an export option that's NOT monochrome?
<teepee> also you can currently only *increase* resolution as compared to the old state (we may want to change that though)
<teepee> TylerTork: no *mesh* export with colors
<J24k17> TylerTork OFF  (can be opened with MeshLab)
<J24k17> or use playground WASM
<teepee> oh, dev build, yes. what J24k17 said
<JordanBrown> teepee I see zero difference between $fs=0.1/$fa=0.1 and $fs=10/$fa=10. And the triangle count is the same.
<teepee> 3MF may still take a bit, it's quite a rabbit hole and we still support 2 library versions
<teepee> JordanBrown: what's the SVG?
<teepee> maybe you found the primitive that is not supported
<teepee> try a circle?
<J24k17> any curve will not use $fs $fa only $fn
<JordanBrown> e-mailed.
<JordanBrown> ah, there's the trick.
<JordanBrown> Can't reduce resolution, and only $fn is effective.
<teepee> hmm, c is quadratic bezier, that should work
<JordanBrown> So my messing with $fs/$fa is for naught, and the modest values I tried for $fn were too low.
<teepee> I don't think *only* $fn is intentional
<JordanBrown> But when I set $fn larger, *then* I see a difference.
<kintel> JordanBrown Wireframe isn't implemented for Manifold, see https://github.com/openscad/openscad/issues/4825
<teepee> yes, like I said to not just break all import (or change the output) we first decided to only allow increasing resolution as compared to the previously hard-coded values
<JordanBrown> kintel thanks, just wanted to make sure somebody knew.
<teepee> truth is in code ;-)
<JordanBrown> :-)
<teepee> it does say "and curves" though
<JordanBrown> That seems unfortunate, but at least the mystery is solved.
<J24k17> curves only for $fn
<teepee> we need some sort of conversion for those cases, even if difficult
<teepee> I mean $fs is "easy"
<teepee> $fa is the problem
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
<JordanBrown> yeah, I was thinking almost exactly the same thing.
<JordanBrown> I don't think it needs to be great, just give some control.
<J24k17> if you calculate the segment size .. you can determine the angle with the previous one too
<gbruno> [github] kintel closed issue #5338 (Producing only triangular mesh elements when exporting into .off or .obj) https://github.com/openscad/openscad/issues/5338
<teepee> what about:
<JordanBrown> One of the key expectations that should be set for $fa/$fs is that they do not produce precisely defined results, that they only control the approximation used.
<teepee> 1) treat the length of the curve as the diameter of a circle
<JordanBrown> "the length of the curve" is remarkably difficult to determine.
<teepee> calculate the length of the arc covering the $fa angle
<teepee> use that as segment length if bigger than $fs
<J24k17> swiggly lines ?
<teepee> for that, no, ignore all curving, use bounding box
<teepee> well bounding circle
<JordanBrown> even using a constant segment length is hard.
<J24k17> after $fa they are not constant anymore
<JordanBrown> It appears that finding constant-segment-length points is hard.
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
<teepee> I know
<JordanBrown> But maybe something like "take the straight-line distance between the two points, and divide by $fs to get the number of segments" would be better than nothing.
<JordanBrown> Or the distance from the first point to the first control point to the second control point to the endpoint.
<teepee> 2 big sources for deep diving that. Pomax and Freya Holmér
<J24k17> recursively it should be possible to convert into a polygon without a segment longer $fs
<othx> teepee linked to YouTube video "The Beauty of Bézier Curves" => 1 IRC mentions
<JordanBrown> Sounds like you're ahead of me. My mystery is solved - you said that the $fX applied, and I couldn't see any effect, and that's now understood.
<gbruno> [github] kintel edited issue #5335 (Manifold selection issues in GUI) https://github.com/openscad/openscad/issues/5335
<gbruno> [github] kintel edited issue #5335 (Manifold selection issues in GUI) https://github.com/openscad/openscad/issues/5335
<gbruno> [github] kintel edited issue #5335 (Manifold selection issues in GUI) https://github.com/openscad/openscad/issues/5335
<JordanBrown> While I'm here... kintel, teepee, I'm still waiting on what work would call architectural review on the PR#4478 / OEP8 object work.
<JordanBrown> Not code review or testing, just specification review.
<nihil> hrm, anyone had issues with svg exports to slic3r for DLP/SLA?
<kintel> JordanBrown I say post-release. I don't have the mental surplus to start thinking about new language features right now
<JordanBrown> OK
<teepee> same here unfortunately, the only thing I can imagine is maybe starting to collect a number of points to validate against
<JordanBrown> I'm happy to go back to work on it, but don't want to spend time fine-tuning when I haven't even gotten an OK for the general approach.
<teepee> like namespaces, imports, ...
<teepee> yeah, fine tuning seems not useful
<teepee> (yet)
<teepee> I tried merging with master but got stuck with sometimes no geometry
<teepee> getting a version to build would be useful as right now we can't ask anyone to try
<teepee> artificats time out
<teepee> 30 day IIRC
<JordanBrown> Keeping the changes in sync is kind of like fine tuning... I don't mind doing it, if somebody will look at it. But mostly you don't need a build; the specs describe the syntax and user-facing data structures.
<teepee> for bringing other people into the discussion it's pretty important
<JordanBrown> But I can resync if that will increase the chances that somebody will look at it.
<teepee> well, I tried and failed a while ago
<JordanBrown> I just don't want to resync forever without getting feedback from the key people.
<teepee> I'll also grab those versions so we can put them on the file server
<JordanBrown> But if all you really want is *some* version that is built, I could just push a trivial change onto the existing PR and that would cause a new build.
<gbruno> [github] jordanbrown0 synchronize pull request #4478 (Objects, geometry as data, module references) https://github.com/openscad/openscad/pull/4478
<gbruno> [github] kintel pushed 1 modifications (Check validity of manifold before exporting) https://github.com/openscad/openscad/commit/df72b1defad1ff5fa120ca95793fe0ef46fd19df
<gbruno> [github] kintel opened pull request #5339 (Check validity of manifold before exporting) https://github.com/openscad/openscad/pull/5339
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
<JordanBrown> done, should have working build artifacts shortly.
<gbruno> [github] kintel edited pull request #5339 (Check validity of manifold before exporting) https://github.com/openscad/openscad/pull/5339
<JordanBrown> They're a year or so old, but since there hasn't been much language evolution since then they are valid for "play with it" purposes.
<kintel> JordanBrown It's technically possible to hide it all behind an experimental feature if that helps. We reserve the right to completely change anything experimental, but if it's still up in the air, we could tag it as "really experimental" :)
<JordanBrown> that's not the issue (yet)... I'm not claiming that it's ready for even experimental-in-nightly status yet. But I don't want to spend much more effort without having key people (and here I mean you and teepee) say "yeah, that new syntax looks more or less acceptable".
<gbruno> [github] kintel edited issue #4825 (Make manifold integration release ready) https://github.com/openscad/openscad/issues/4825
crazy_imp has quit [Ping timeout: 265 seconds]
<JordanBrown> Time for me to run. But for play-with purposes, there should be a new build shortly.
crazy_imp has joined #openscad
<teepee> oh well, the library manager also needs some attention
<teepee> and that probably before a release
<f0lkert> difficulties to get master to build
<f0lkert> something about RenderSettings not being declared in src/geometry/Polygon2d.cc line 180
<f0lkert> I used: cmake -DTEST_GENERATE=1 -DEXPERIMENTAL=ON -DENABLE_MANIFOLD=ON -DUSE_MANIFOLD_TRIANGULATOR=ON
TheAssass1n has joined #openscad
TheAssassin has quit [Ping timeout: 260 seconds]
<f0lkert> kintel: I believe that src/geometry/Polygon2d.cc needs a #include "glview/RenderSettings.h" at the top
<f0lkert> with that, it builds fine
<gbruno> [github] folkertvanheusden synchronize pull request #5288 (PovRay export) https://github.com/openscad/openscad/pull/5288
<gbruno> [github] folkertvanheusden synchronize pull request #5288 (PovRay export) https://github.com/openscad/openscad/pull/5288
<kintel> f0lkert thx, you're probably building with USE_MANIFOLD_TRIANGULATOR - I haven't done that in a while
<kintel> argh, macOS also hit by the unity build issue
<gbruno> [github] kintel pushed 1 modifications (Disable unity build as it broke) https://github.com/openscad/openscad/commit/b3e41edf370a8eee668703938eb8401f5dc13fc4
<gbruno> [github] kintel synchronize pull request #5339 (Check validity of manifold before exporting) https://github.com/openscad/openscad/pull/5339
<gbruno> [github] kintel pushed 1 modifications (Disable unity build as it broke) https://github.com/openscad/openscad/commit/c4eaf76619910c63d022c6a7e738c70d76fb29c3
<gbruno> [github] kintel synchronize pull request #5336 (Bugfix: Default render backend was wrong, confusing the settings writer) https://github.com/openscad/openscad/pull/5336
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
fling has quit [Remote host closed the connection]
fling has joined #openscad
kintel has joined #openscad
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
germ has quit [Read error: Connection reset by peer]
germ has joined #openscad
kintel has joined #openscad
L29Ah has joined #openscad
<gbruno> [github] kintel pushed 1 modifications (CGAL 6.0 build fix) https://github.com/openscad/openscad/commit/00c95390924837453c72d3ef1bf115336b744ce5
<gbruno> [github] kintel opened pull request #5340 (CGAL 6.0 build fix) https://github.com/openscad/openscad/pull/5340
L29Ah has quit [Ping timeout: 265 seconds]
<gbruno> [github] kintel synchronize pull request #5340 (CGAL 6.0 build fix) https://github.com/openscad/openscad/pull/5340
<gbruno> [github] kintel pushed 1 modifications (CGAL 6.0 build fix) https://github.com/openscad/openscad/commit/640ec6ef95f007c626230a0c018c8bbd98f99c6f
<gbruno> [github] kintel edited pull request #5340 (CGAL 6.0 build fix) https://github.com/openscad/openscad/pull/5340
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
fling has quit [Remote host closed the connection]
mmu_man has quit [Ping timeout: 265 seconds]
mmu_man has joined #openscad
<UltimateCodeWarr> for (i=[0,1,2,3,4,5])  {    newColor = i+10;    color([i,0,0]); }        How do I make this in OpenSCAD create a gradient color
<UltimateCodeWarr> Right now, Openscad just seems to stick to the last color created   [15,0,0]
<teepee> not sure what that is supposed to do
<UltimateCodeWarr> say you wanted to make a series of cubes a slightly different color
<UltimateCodeWarr> so after the color call, you would create a cube.
<teepee> ring of colored cubes
<gbruno> [github] kintel pushed 1 modifications (CGAL 6.0 build fix (#5340)) https://github.com/openscad/openscad/commit/b15b9c59534671bf8437eedeab3aebf9377d36f7
<gbruno> [github] kintel closed pull request #5340 (CGAL 6.0 build fix) https://github.com/openscad/openscad/pull/5340
<teepee> color channels are 0.0 - 1.0
<teepee> what is that "newColor" supposed to do?
<UltimateCodeWarr> right, I meant to type   color([newColor,0,0])
<teepee> and why not for(i=[10:15]) ... then?
<UltimateCodeWarr> It was just an illustrative function
<teepee> note again values > 1 will not work in color()
J24k66 has joined #openscad
<teepee> if you scale it down by 15, it should work
<UltimateCodeWarr>     for (i=[0,45,90,135,180,225,315]) { //
<UltimateCodeWarr>      colorIdx=255;
<UltimateCodeWarr>       if (i < 255) {
<UltimateCodeWarr>         colorIdx= 255/(i+1);
<UltimateCodeWarr>        }
<UltimateCodeWarr>       rotate([0,0,i]) {
<UltimateCodeWarr>         translate([(rail_z_len/2)+ (rail_x_wid)+8,0,rail_z_len/2])
<UltimateCodeWarr>             color([colorIdx,0,0])
<UltimateCodeWarr>            make_cylinder_mount(rail_x_wid,rail_y_hgt,rail_z_len,true);
<UltimateCodeWarr>         }
<UltimateCodeWarr> }
<UltimateCodeWarr> This is the scaled to 1.0 model
<UltimateCodeWarr> The Red Channel will be scaled between 0..1.0
<teepee> that assignment inside the if is not visible after the if {} is closed
<teepee> so you always get the 255 from above that
<UltimateCodeWarr> Yeah, it doesn't work like C
<teepee> assign this in a single line like colorIdx = (i < 255) ? 255 / (i + 1) : 255;
J24k17 has quit [Ping timeout: 256 seconds]
<teepee> it's still not the correct value as with i = 0 it will set colorIdx = 255 which is invalid
<teepee> you could use colorIdx / 255 in the color() statement
<teepee> or just assign the scaled one before if it's not used anywhere else with 0..255
<UltimateCodeWarr>   for (i=[0,45,90,135,180,225,315]) { //
<UltimateCodeWarr>      colorIdx = (i < 255) ? (i + 1) / 255 : 255 ;
<JordanBrown> colorIdx is calculated wrong, I think, even if you thought that it was 0..255. If you're trying to gradually step along, you want i/360.
<UltimateCodeWarr> That worked, thanks!
<UltimateCodeWarr> Well, the max RGB is 255
<UltimateCodeWarr> 0..255 = 256 colors
<teepee> the ": 255" at then should proably be 1
<JordanBrown> One common representation of RGB has a range of 0..255. OpenSCAD does not use that representation.
<J24k66> what is the start color and what the end for the gradient?
<teepee> I usually do count for the index
<JordanBrown> (Except in string "#rrggbb" form.)
<teepee> and then calculate based on that
<JordanBrown> yes, perhaps n = 10; for (i=[0:n]) color([i/n,0,0]) ...
* teepee points to the off-by-one error :)
<JordanBrown> give or take fenceposts.
<teepee> loop to n-1
<JordanBrown> depends on whether it's a line from 0% to 100% or a circle.
<UltimateCodeWarr>     for (i=[0,45,90,135,180,225,315]) { //
<UltimateCodeWarr>      colorIdx = (i < 255) ? (i + 1) / 255 : 255 ;
<UltimateCodeWarr>      echo (i+"~"+colorIdx);
<teepee> true, but n = 10 would imply 10 cubes to me
<JordanBrown> indeed
<UltimateCodeWarr> That echo won't concatenate into a string those two numbers
<teepee> but yes, all a matter of definition
<JordanBrown> but what does "i" really represent here, and what's the goal? Those look like angles, which implies that all the way around is 360.
<JordanBrown> It looks like you're going to clamp at about 3/4 of the way around.
<UltimateCodeWarr> The Goal was to use color as a visual marker of rotation angle so I would know which angles I wanted to keep in the design
<JordanBrown> So you want something that's more like i/360.
<JordanBrown> and you need to either include or not-include 0 and 360.
<UltimateCodeWarr> https://imgur.com/a/CsTFeBM
<J24k66> for (i=[0:15:180]) color([i/180,1,1])rotate(i)translate([10,0])cylinder(10,5,$fn=3);
<JordanBrown> here's a quick demo that adjusts the color around a circle.
<JordanBrown> https://bpa.st/J6IAW
<UltimateCodeWarr> Overkill for what I need, but cool none the less :)
<JordanBrown> https://bpa.st/F3KDI is a more generally useful variant, with the HSV to RGB conversion in a function.
<JordanBrown> There's a similar formula for HSL to RGB at https://www.rapidtables.com/convert/color/hsl-to-rgb.html
<JordanBrown> but I have never been clear on the practical differences between HSV and HSL. Not that I have looked more than fleetingly.
<JordanBrown> https://bpa.st/IN772 is a full presentation of HSV space.
snaked has quit [Read error: Connection reset by peer]
<gbruno> [github] kintel closed issue #5335 (Manifold selection issues in GUI) https://github.com/openscad/openscad/issues/5335
<gbruno> [github] kintel closed pull request #5336 (Bugfix: Default render backend was wrong, confusing the settings writer) https://github.com/openscad/openscad/pull/5336
<gbruno> [github] kintel pushed 2 modifications (Bugfix: Default render backend was wrong, confusing the settings writer (#5336)) https://github.com/openscad/openscad/commit/56ec9da75c5a331e1a93da81ea6fafc5087bb43a
RoyK has quit [Read error: Connection reset by peer]
<JordanBrown> https://bpa.st/CROB4 is a presentation of RGB, HSV, and HSL spaces.
snaked has joined #openscad
<JordanBrown> Just looking at those three, HSV space looks like the most generally useful. HSL space seems to spend a lot of its space on whites.
RoyK has joined #openscad
<JordanBrown> Sorry, not that anybody cares but https://bpa.st/YCAB4 is better; I accidentally left in some debug lines in the previous one.
<JordanBrown> To absolutely nobody's surprise, BOSL2 has these functions and more: https://github.com/BelfrySCAD/BOSL2/wiki/color.scad
myosotis has quit [Remote host closed the connection]
snaked has quit [Read error: Connection reset by peer]
snaked has joined #openscad
snaked has quit [Remote host closed the connection]
snaked has joined #openscad
juri_ has joined #openscad
<JordanBrown> teepee, kintel: if you want a play-with-it build of #4478, the build finished OK.
misterfish has joined #openscad
snaked has quit [Ping timeout: 260 seconds]
<gbruno> [github] kintel pushed 2 modifications (Merge branch 'master' into kintel-manifold-check) https://github.com/openscad/openscad/commit/6b11810062abfe23521e8786eed630385982990f
<gbruno> [github] kintel synchronize pull request #5339 (Check validity of manifold before exporting) https://github.com/openscad/openscad/pull/5339
ooxoo has quit [Read error: Connection reset by peer]
ooxoo has joined #openscad
myosotis has joined #openscad
teepee_ has joined #openscad
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
J24k72 has joined #openscad
J24k66 has quit [Ping timeout: 256 seconds]
<JordanBrown> Anybody know what the "term" output format is? Or, a bit closer to what I'm trying to understand, what CSGTreeEvaluator is used for?
<JordanBrown> ah, never mind, pilot error, I dropped debug statements in a different function than I thought and was mystified that they didn't come out.
kintel has joined #openscad
mmu_man has quit [Ping timeout: 252 seconds]
mmu_man has joined #openscad
<gbruno> [github] kintel pushed 1 modifications (Check validity of manifold before exporting (#5339)) https://github.com/openscad/openscad/commit/1c17fb0cbc58c478bb964e6ffadd0161c2c73a7d
<gbruno> [github] kintel closed pull request #5339 (Check validity of manifold before exporting) https://github.com/openscad/openscad/pull/5339
TylerTork has quit [Ping timeout: 256 seconds]