whitequark changed the topic of #solvespace to: SolveSpace--parametric 2d/3d CAD · latest version 2.3 · http://solvespace.com · code at https://github.com/solvespace/solvespace · logs at https://irclog.whitequark.org/solvespace
<_whitenotifier-b> [solvespace] phkahler commented on issue #174: if a constraint is selected, prioritize it for starting a drag - https://git.io/JJMRm
<_whitenotifier-b> [solvespace] Success. AppVeyor build succeeded - https://ci.appveyor.com/project/whitequark/solvespace/builds/34565342
<TheSocialHacker> I saw issue #615, and I'm not sure if it would solve my problem, or if there's some other solution. Basically, I've got a shape made of a number of group combinations, and I would like to then copy it a number of times in a circle and remove each copy from a base object. Is that possible currently? I'm modeling a ball chain sprocket, and want to model the cavity once, then subtract it from the sprocket blank around the rad
<TheSocialHacker> he blank.
<_whitenotifier-b> [solvespace] Error. The Travis CI build could not complete due to an error - https://travis-ci.org/github/solvespace/solvespace/builds/716402265?utm_source=github_status&utm_medium=notification
pandrew has joined #solvespace
<pandrew> Hi all
<pandrew> New to solvespacer here, I have a probably stupid question
<pandrew> why does constraining two normals to point in the same direction disallow rotation?
<pandrew> Correct me if I'm wrong but I think vectors should have 2 rotational degrees of freedom (and one of magnitude, which doesn't matter in this case)
<pandrew> So if I import a new assembling file, I start out with 6 DOF
<pandrew> and then if I "Constrain normals in same orientation", I should get 4 DOF
<pandrew> but I get 3 DOF
<pandrew> I can work around this by constraining two normal vectors to be perpendicular to one axis
<pandrew> each perpendicular constraint removes 1DOF
<pandrew> But it still seems to me that the same-orientation constraint removing 3dof is a bug
<TheSocialHacker> pandrew, I believe that the normal constraint is actually an orientation constraint. I had the same confusion. I think I would rename it.
<whitequark> pandrew: TheSocialHacker is correct, the normals are actually full quaternions
<_whitenotifier-b> [solvespace] whitequark commented on pull request #672: Fix issue161 and 174. Use the same logic for selction and dragging, b… - https://git.io/JJMru
leorat has joined #solvespace
leorat has quit [Read error: Connection reset by peer]
leorat has joined #solvespace
leorat has quit [Remote host closed the connection]
leorat has joined #solvespace
pandrew has quit [Quit: Leaving.]
leorat has quit [Quit: Leaving]
rpavlik has joined #solvespace
pandrew has joined #solvespace
leorat has joined #solvespace
ezzieyguywuf has joined #solvespace
<ezzieyguywuf> does solvespace use a third-party kernel like, say, opencascade, or is it written entirely from scratch?
<whitequark> latter
<ezzieyguywuf> that's awesome!
<ezzieyguywuf> I can see it implements its own openGL stuff too
<ezzieyguywuf> or rather, I see some openGL shaders in the code
<whitequark> yeah, it uses a (fairly straightforward) rendering abstraction with a few backends
<ezzieyguywuf> so what external dependencies (if any) does solvespace have?
<whitequark> depends on the OS
<whitequark> the README lists most of them
<whitequark> extlib/ has the rest
<ezzieyguywuf> ah, great thanks
<ezzieyguywuf> also, I'm curious about how solvespace implements topology, and how it matches topology↔geometry. Would you know where in the source I may look for this type of stuff?
<ezzieyguywuf> i.e. the difference between a Vertex (topological entity) versus a Point (a geometric entity)
<whitequark> i'm not quite sure what you're asking
<ezzieyguywuf> For example, openCascade has a "MakeVertex" function that takes a geometric Point and creates a topological Vertex: https://www.opencascade.com/doc/occt-6.9.1/refman/html/class_b_rep_builder_a_p_i___make_vertex.html#a2f025603ebf5cbde6485fa776523fb75
<ezzieyguywuf> in general, it seems that in CAD one must worry about relational information (topology) and geometric information (geometry). This is discussed on this wiki page under "Overview" https://en.wikipedia.org/wiki/Boundary_representation
<ezzieyguywuf> I'm interested how these concepts are implemented in solvespace
<whitequark> so, with the caveat that i work almost exclusively on parts of solvespace that are *not* its geometric kernel,
<whitequark> i believe it doesn't try to track topology
<ezzieyguywuf> hrm, very interesting.
<ezzieyguywuf> 😍 wow y'all even have a step exporter!
<whitequark> it's quite hacky
<whitequark> but it does work usually
<ezzieyguywuf> dang, forrill?
<ezzieyguywuf> STEP is so terrible
<ezzieyguywuf> lol.
<whitequark> i think someone tried to add colors to it and failed
<whitequark> to the exporter that is
<whitequark> none of us could figure out what went wrong either
<ezzieyguywuf> are any of the other exports "robust"?
<whitequark> all the others should work fine
<ezzieyguywuf> i think you need a different step schema altogether or colors or something
<ezzieyguywuf> also I think the FreeCAD guys figured out STEP with colors, but they use opencascade
<whitequark> yeah, opencascade is famously terrible though
<whitequark> 'deal with the devil' kind of library
<ezzieyguywuf> shoot, don't I know it
<ezzieyguywuf> I'm trying to write my own cad kernel from scratch, thus why I'm so interested in solvespace
<whitequark> quite a hill to die on; i applaud your bravery and look forward to your results
<ezzieyguywuf> lol thanks, I've gotten similar responses from others
rpavlik has quit [Remote host closed the connection]
cr1901_modern has quit [Quit: Leaving.]
cr1901_modern has joined #solvespace
leorat has quit [Read error: Connection reset by peer]
pandrew has quit [Quit: Leaving.]
leorat has joined #solvespace
cr1901_modern has quit [Ping timeout: 265 seconds]