<wpwrak>
btw, what are all these "Vector::WithMagnitude(N) of zero vector!" and such about ? slvs produces LOTS of complains of this sort, and i'm not sure if this is indicative of me doing something horribly wrong or if it's just very chatty about some insignificant internal condition
cr1901_modern has quit [Ping timeout: 240 seconds]
<wpwrak>
and is there any way to link a comment to, say, a dimension ? where "link" would be some relation that's reasonably easy to find in the .slvs file ? i'm toying with the idea of retrofitting variables this way, i.e., let an external script check that things that claim to have the value of "VAR" do indeed have that variable's value, or maybe even edit values in the .slvs directly
cr1901_modern has joined #solvespace
ohsix_ has quit [Quit: Reconnecting]
ohsix has joined #solvespace
<wpwrak>
whitequark: hmm, the "N items selected" screen could als benefit from having a list. expecially if one can deselect an item there.
<whitequark>
(WithMagnitude(N)) the latter
<whitequark>
sppecifically... something is calling Vector(0,0,0).WithMagnitude(>0)
<whitequark>
which is obviously nonsensical
<whitequark>
and no, you can't link comments to anything
<wpwrak>
sneef :(
<wpwrak>
is there a way to reorder groups ? e.g., if i have sketch/extrusion A and create two "offspring" sketches B and C, there C should use some of the geometry of B, but as it happens, the partial order slvs chose is A, C, B, how do i make this A, B, C ?
<wpwrak>
or maybe there's a way to simply pick a point from a "later" group ?
<whitequark>
no, no way to reorder groups, precisely because there's no way to pick a point from a later group.
<whitequark>
if you think about it a little you'll realize why
<whitequark>
right now the solver is linear (in the number of "solve a single group" operations)
<whitequark>
this is what makes it quite fast, compared to some other parametric CAD software
<whitequark>
(most of the regeneration time is spent building meshes. btw, you can disable the display of mesh and removal of hidden lines, and the mesh won't get generated)
<wpwrak>
reordering groups shouldn't really affect processing time of A->B and A->C without other dependencies.
<wpwrak>
s/of/if/
<whitequark>
no, but someone has to write the "no dependencies" check
<wpwrak>
and yes, i saw that sneaking in the constraint i'm trying to place at the end doesn't work :)
<wpwrak>
heh :) new "bug" ?
<whitequark>
mmmh, actually, I wonder if I can punt at it
<whitequark>
like, just drop every orphan
<whitequark>
then if you don't like the result, ^Z
<whitequark>
sure. file an issue.
<wpwrak>
i guess it could be implemented as a swap. if C is later than B, and C has no ancestor >= B, then you can swap them, else not
<whitequark>
of course it will be implemented as a swap
<whitequark>
though, hmmm
<whitequark>
no, bad idea
<whitequark>
that will require you to create dummy groups or something
<wpwrak>
naw, bubblesort :)
<whitequark>
nope
<wpwrak>
may not be the greatest user experience, but should be manageable if the design isn't too complex
<whitequark>
horrible hacks like that is not what i will ever implement
<wpwrak>
;-)
<whitequark>
in any case, there's no reason to use a swap primitive in the first place. there's a Group::order field already
<whitequark>
the problem is not actually physically reinserting a group
<wpwrak>
btw, do you actually like that the last segment of an open polyline is entered by pressing Esc (as opposed to Esc cancelling the current segment and ending the line with the previous one), or is this a historical accident ? my muscle memory has a really hard time adjusting to "Esc means 'end", not 'cancel'"
<whitequark>
historical accident
<whitequark>
you can finish a line with RMB though
<travis-ci>
solvespace/solvespace#333 (master - db75e06 : EvilSpirit): The build passed.
cr1901_modern has quit [Read error: Connection reset by peer]
cr1901_modern has joined #solvespace
balrog has quit [Read error: Connection reset by peer]
<wpwrak>
whitequark: oh, and when rotating, why is there a temporary green line with Ctrl+Button2, but not with Button2. historical accident ? (not that the line seems particularly useful)
<whitequark>
it's indicating the center of rotation
<whitequark>
whereas when normally rotating it's the center of the screen
<wpwrak>
ah, i see
balrog has joined #solvespace
<wpwrak>
when selecting items for constraints, sometimes the selection is potentially ambiguous, e.g., point A, line B, point C, line D, then Q. does slvs record the sequence in which things were selected (e.g., first point with first line), does it use some algorithm to determine which pairing is used, is it chance ? (so far, i got the right result every time, but each time i pause a little and wonder how it could go wrong)
<whitequark>
wpwrak: it does, and it happens in order of selection
<whitequark>
I *think* it never actually affects semantics, just numeric guesses
<whitequark>
I didn't write that code though so I may be wrong in some subtle case
<wpwrak>
(semantics) point A, line B, point C, line D, Q should produce quite different results for (A, B) = (C, D) vs. (A, D) = (C, B)
<wpwrak>
but sequence is a good criterion. very intuitive and easy to use.
<whitequark>
oh right!
<whitequark>
so what will be affected is equal pt-line-pt-line distance
<wpwrak>
hmm, in a part that consists of overlapping volumes, i get a lot of red. what to do ?
<wpwrak>
forcing NURBS to mesh seems to do the trick. will that cause trouble later ?
<whitequark>
not really
<whitequark>
this just doesn't let you export exact curves
<whitequark>
most oerations, like exorting mesh and measuring volume etc, work on triangle meshes anyway
<wpwrak>
good. so far it's holding up pretty well :) i had a few "captive" chirality inversions, but nothing a lot of undo couldn't fix
<whitequark>
you can also check "relax all constraints" and then just move them wehre they belong
<wpwrak>
ahh, that should be very useful. thanks !