UmbralRaptor changed the topic of #kspacademia to: https://gist.github.com/pdn4kd/164b9b85435d87afbec0c3a7e69d3e6d | Dogs are cats. Spiders are cat interferometers. | Космизм сегодня! | Document well, for tomorrow you may get mauled by a ネコバス. | <UmbralRaptor> … one of the other grad students just compared me to nomal O_o | <ferram4> I shall beat my problems to death with an engineer.
GreeningGalaxy has joined #kspacademia
GreeningGalaxy has quit [Client Quit]
e_14159 has quit [Ping timeout: 190 seconds]
e_14159 has joined #kspacademia
<Ellied> inspircd supports cuss censoring, which is obviously a losing battle, but it's also tempting to use it for hilarity.
<Ellied> You could just feed it the xkcd news substitutions and say that channel mode +G is now xkcd mode
icefire has quit [Read error: Connection reset by peer]
<egg|zzz|egg> !wpn e_14159
* Qboid gives e_14159 an Artinian cylinder
<egg|zzz|egg> !wpn Ellied
* Qboid gives Ellied a Kronecker isobaric ⚛
<e_14159> !wpn egg
* Qboid gives egg an icy 1N4148
ferram4 has quit [Ping timeout: 200 seconds]
<egg|zzz|egg> !wpn whitequark
* Qboid gives whitequark a depressurized breadboard
<Iskierka> when asked to produce a 50/50 split choice, humans pick 36/64 in favour of second. When asked for 10/90, 25/75. When asked for 1/99, 21/79
<Iskierka> humans are terrible RNGs
<Iskierka> https://twitter.com/DanNerdCubed (three most recent tweets at the moment)
<egg|zzz|egg> !wpn Iskierka
* Qboid gives Iskierka a 5-choosable rotation
<Iskierka> don't ask humans to choose it
<bofh_> LOL
<egg|zzz|egg> d2 -- first one
<Soozee> egg|zzz|egg: 2
<egg|zzz|egg> d10 -- second one
<Soozee> egg|zzz|egg: 9
<egg|zzz|egg> d100 -- third one
<Soozee> egg|zzz|egg: 18
<Iskierka> https://i.imgur.com/BqeEzVM.mp4 people talk about walking locomotion for search and rescue in disaster areas but I feel like this has potential with a few upgrades
<egg|zzz|egg> !wpn UmbralRaptor
* Qboid gives UmbralRaptor a dysprosium dæmon
<egg|zzz|egg> UmbralRaptor: phl is writing a Молния test!
<UmbralRaptor> \o/
<egg|zzz|egg> UmbralRaptor: also having an LϘΛΗ φραμε ισ χοολ
<egg|zzz|egg> υυυη
<egg|zzz|egg> I accidentally switched to my custom greek keyboard >_>
<egg|zzz|egg> UmbralRaptor: having an LVLH frame is cool
<egg|zzz|egg> we've accumulated a bit of technical debt by doing that for Cartan though, we'll probably focus on cleaning things up in Catalan
<egg|zzz|egg> hmm, I should probably make myself a custom cyrillic keyboard like I have a custom greek keyboard
<UmbralRaptor> .choose pass out|coffee
<UmbralRaptor> ;choose pass out|coffee
<kmath> UmbralRaptor: coffee
<kmath> <CassiniSaturn> We spied an egg* in space in 2012. *space egg is actually Methone, an egg-shaped moon of #Saturn #HappyEaster… https://t.co/hP66RELb6C
<egg|zzz|egg> UmbralRaptor: !!!
<egg|zzz|egg> space me!
<UmbralRaptor> <egg|♄|egg> = 1
ferram4 has joined #kspacademia
<soundnfury> !wpn ferram4
* Qboid gives ferram4 a burnt warhead
<egg|zzz|egg> !wpn UmbralRaptor
* Qboid gives UmbralRaptor a prime lamp
<UmbralRaptor> !wpn egg
* Qboid gives egg a ray tube
<UmbralRaptor> egg|zzz|egg: you keep, on not zzzing…
egg|zzz|egg is now known as egg
* UmbralRaptor ? ? in the punctuation
<egg> UmbralRaptor: principia#1339 >_>
<egg> UmbralRaptor: semilatus rectum!
<UmbralRaptor> AAAAAAA
<UmbralRaptor> egg: does this mean you'll get a bending angle for hyperbolic orbits?
<egg> UmbralRaptor: what's a bending angle
<egg> UmbralRaptor: tbh atm KeplerOrbit only does the elliptic case because I was lazy
<egg> there's a TODO and a LOG(FATAL) if you're hyperbolic >_>
<egg> UmbralRaptor: I guess an eggscess v for the hyperbolic case would make sense too
<UmbralRaptor> Not sure if I got the term right, but the angle between the asmyptotes.
<egg> UmbralRaptor: ... there's a characteristic energy C_3, and that's just double the specific orbital energy? O_o
<UmbralRaptor> I don't really understand C_3, but hyperbolic excess velocity sounds nice.
<egg> UmbralRaptor: ... also does that mean that an elliptic orbit has imaginary excess velocity
<UmbralRaptor> :D
<egg> UmbralRaptor: I don't have support for complex quantities, so it will just have NaN excess velocity :D
<UmbralRaptor> D:
<egg> UmbralRaptor: true anomaly of the asymptote seems to be a good name for θ∞
<egg> UmbralRaptor: there's a turning angle too, that's twice θ∞
<UmbralRaptor> seems reasonable
<egg> UmbralRaptor: how does the period work in the hyperbolic case? is it negative? imaginary?
<UmbralRaptor> Infinite/NaN, I think.
<egg> makes sense.
<UmbralRaptor> Though there's probably a way to get imaginary numbers out.
<egg> UmbralRaptor: yeah, it's 2π a^(3/2) / sqrt(μ), so if a is infinite (parabola) it's infinite, and if it's negative (hyperbola)...
<UmbralRaptor> Imaginary time without relativity.
<egg> \o/
<egg> UmbralRaptor: aaaaaa https://hastebin.com/owonecomom.cpp (any others?)
<egg> UmbralRaptor: hmm, time since periapsis I guess
<egg> UmbralRaptor: do people use the eggscentric anomaly?
<UmbralRaptor> Yes, but would it even be defined for a hyperbola?
<egg> aaaaaaaaaaaaa
<egg> E=iH
* egg is confused
<egg> Thomas: quite often the logs give me a 502
<Thomas> Blame caddyserver
<Thomas> No idea whats wrong with it
<Thomas> At some point I should take the time to switch to nginx / certbot
<Thomas> Actually, lets do this now
* Thomas copies the nginx config of his school
<egg> UmbralRaptor: aaaah so the way it works is that the hyperbolic mean anomaly is actually the mean anomaly (computed normally) divided by i because we don't want to deal with imaginaries
<egg> UmbralRaptor: and both get called i because aaaaaaaaaaaa
<egg> s/i/M
<Qboid> egg meant to say: UmbralRaptor: and both get called M because aaaaaaaaaaaa
<UmbralRaptor> ααααα
<egg> UmbralRaptor: same for hyperbolic mean motion, n = n/i >_>
<egg> (i the imaginary unit, not ? the inclination)
* UmbralRaptor tries to picture imaginary inclination.
regex has joined #kspacademia
<Iskierka> I'm disappointed that google has no results for "do cockatoos get tinnitus"
regex has quit [Remote host closed the connection]
<egg> UmbralRaptor: "Kepler's equation, again" http://control.asu.edu/Classes/MAE462/462Lecture05.pdf
<egg> Iskierka: otter! \o/
<UmbralRaptor> egg: hah
<UmbralRaptor> ;kmath abuse python's numeric integration?
<kmath> UmbralRaptor: Signs point to yes
<UmbralRaptor> Theoretically, I could use Principia's integrators. In reality, with the Planck function…?
* UmbralRaptor has an evil thought.
<UmbralRaptor> I have a bunch of realistic (not blackbody) spectra, and code to sum them up over a wavelength range as part of my research.
* UmbralRaptor ponders using silly tools on this homework.
<UmbralRaptor> Er, wait. 2 of these stars are too hot.
<egg> UmbralRaptor: so, um, 10 different code paths for the possible 2 out of 5 >_>
* UmbralRaptor doesn't see distance between foci, but I don't think that has a real use. <_<
<egg> and inside category 2, 7 different code paths depending on your chosen way of defining the energy
<egg> UmbralRaptor: yes, I saw that one, I can't tell whether it's actualy used in astrodynamics/astrophysics? anything that mentions it seems to be about conics per se
<UmbralRaptor> I think it's only used in pure math because no one cares about the empty focus in astrodynamics.
<egg> UmbralRaptor: yeah
egg is now known as egg|nomz|egg
<egg|nomz|egg> UmbralRaptor: otoh, maybe people use the distance of apoapsis?
<egg|nomz|egg> or maybe they don't, I dunno
<UmbralRaptor> distance of apoapsis?
<UmbralRaptor> arc length? altitude? from focus?
<egg|nomz|egg> UmbralRaptor: ?
* egg|nomz|egg doesn't understand the raptor
egg|nomz|egg is now known as egg
<egg> UmbralRaptor: what elements can you think of that are used in astro(physics|dynamics) and aren't in there
* UmbralRaptor is unclear as to what "distance of apoapsis" means
<egg> UmbralRaptor: distance from the focus
<UmbralRaptor> ah
<egg> UmbralRaptor: I don't think I want to deal with altitude in there, since that's very hard to define (altitude above a reference ellipsoid? above a mean sphere? above a kitten?)
<Iskierka> if lat/lon are accurate something else should be able to convert r into terrain altitude
<UmbralRaptor> Uh, add mean longitude to the conic orientation?
<egg> UmbralRaptor: ah yes
<UmbralRaptor> Above a kitten, as approximated by n² spherical harmonics.
<egg> UmbralRaptor: and the longitude of periapsis ϖ too I guess
<UmbralRaptor> Where n is the principal catum number
<egg> mean longitude is instead of mean anomaly
<UmbralRaptor> yeah
<egg> UmbralRaptor: uhh, there's a true longitude too?
<egg> UmbralRaptor: do people use that one too?
* UmbralRaptor isn't sufficiently familiar to say.
<egg> aaaaaaaaaaaa
<UmbralRaptor> This channel has a worryingly large amount of anguished screams.
* egg summons the spirit of nomal
<egg> UmbralRaptor: O_o this uses the true longitude http://articles.adsabs.harvard.edu//full/1980CeMec..21..149J/0000149.000.html
<UmbralRaptor> Guess it is used, then?
<egg> apparently
<egg> UmbralRaptor: so, r_pe is used, is r_ap?
<UmbralRaptor> I don't think much for planets, asteroids, etc. But it has some clear uses. Especially for KSP like porpoises.
<egg> UmbralRaptor: yeah, probably used for astrodynamics (I think satellites orbits are oftenish described as pe/ap?)
<UmbralRaptor> Oh, right.
<egg> UmbralRaptor: of course, because quadratic, this moves this from 10 code paths to 15 :D
<egg> UmbralRaptor: this is going to have to be seriously tested >_>
<UmbralRaptor> … is Principia going to need a fuzzer?
* egg pets a rabbit
<egg> UmbralRaptor: nah, that's still in the realm of the manually testable I think
<Iskierka> ... this anime just made an arrow to the knee joke, assuming that was translated accurately
* UmbralRaptor meeps
<UmbralRaptor> bofh_, Ellied: I assume you've heard of appending "with a chainsaw" to the end of a fortune? >_>
<bofh_> Like I've not encountered the joke before, but I do find it fitting.
<whitequark> Iskierka: fan TL groups often take *extreme* liberties with content
<Iskierka> whitequark, possible but going through trying to interpret it does come up with the word for knee and arrow
<Iskierka> (though arrow is ya so very hard to confirm anything)
<Iskierka> definitely something about the knee though, and I don't think it's a fan TL given it broadcast like 3 hours before upload
<egg> o/ whitequark
<egg> !wpn whitequark
* Qboid gives whitequark a tardigrade
<egg> <egg> whitequark: is the third item on each row here a lofting? http://i.imgur.com/F3VDTVm.png
<egg> i.e. does it follow the Frenet frame
<egg> UmbralRaptor: *sob* any others? https://hastebin.com/ihuhupejat.cpp
<egg> oh right forgot mean longitude
<UmbralRaptor> oops
<Iskierka> https://translate.google.com/#ja/en/%E8%86%9D%E3%81%AB%E7%9F%A2%E3%82%92%E5%8F%97%E3%81%91%E3%81%A6%E3%81%97%E3%81%BE%E3%81%A3%E3%81%9F%E3%81%AA%E3%80%82 got text from a forum and it's what the guy said
<egg> UmbralRaptor: do people use the mean longitude for hyperbolic orbits too
* UmbralRaptor does not know.
icefire has joined #kspacademia
<Ellied> UmbralRaptor: yes
<whitequark> egg: 1. no, 2. yes ?
<egg> whitequark: ?
<whitequark> the answer to your question
<whitequark> in that pic
<egg> whitequark: uh, but they both use the Frenet trihedron
<whitequark> egg: I have no idea what any of that is
<whitequark> I just know, as a CAD user, what I want
<whitequark> I neither care nor want to care what the underlying math is, insofar as I get the result I expect
<egg> whitequark: so, you said that the plane contour remains normal to the curve
<whitequark> yup
<egg> whitequark: that does not define fully what you want
<whitequark> okay
<egg> whitequark: because you still have one degree of freedom
<egg> how do you orient that contour in that normal plane
<whitequark> let's say you pick a point somewhere on the contour
<whitequark> the curve traced by that point should be the same as the curve used to drag the contour
<egg> whitequark: but that's not possible
<egg> e.g. say your curve is a circle, and your contour is a circle (the surface you want is a torus); your points trace circles of different sizes
<egg> if they were to all trace the same circle, your contour wouldn't remain normal to the curve
<whitequark> egg: ... oh
* whitequark thinks
<whitequark> good point
<whitequark> okay
<egg> whitequark: also, "
<egg> <whitequark> I neither care nor want to care what the underlying math is, insofar as I get the result I expect" << you've made me aware of that already, and I try to do my best not to drown you in too much math, but please don't reiterate it too much; sometimes that's mildly Xi :-p
<whitequark> that's fair.
<whitequark> but I'm a person who wants to draw and instead I have an endless barrage of bugs which I will have to study for years just to understand.
<whitequark> that is also quite Xi.
<whitequark> anyway
<whitequark> how about this
<whitequark> so the closed contour has a coordinate system associated with it.
<whitequark> it's fully in XY plane.
<egg> aah, the contour is plane?
<whitequark> yeah, absolutely
<whitequark> (I thought you asked already and I answered yes?)
<egg> whitequark: oh wait, right, the contour
<egg> but the curve isn't right
<whitequark> the curve isn't
<egg> ok
<whitequark> you could already do a lot if it is, but generally it isn't
<egg> right, but if it isn't the question of twist actually arises
<whitequark> basically what I'm trying to say is
<whitequark> I can give you the position of the contour at the start of the curve and at the end of the curve
<whitequark> well, the rotation
<whitequark> as an absolute value
<egg> hm
<whitequark> and doing a linear interpolation between those is fine
<whitequark> as a first approximation, rotation at the start and at the end could be the same
* egg tries to figure out whether that's well-defined
* egg *thinks* it's not actually well-defined
<egg> i.e. that relies on there existing a concept of "not twisting along the curve", which is what I'm trying to figure out
<whitequark> well, what's the closest thing to it that's well-defined?
<egg> there's one that I can think of, which would be "follwing the Frenet frame"
<egg> (that requires there to be no straight bits in the curve but let's ignore that)
<egg> following the Frenet frame is what I showed you though
<egg> whitequark: that is the orientation is given by the osculating circle
<egg> the direction in which the curve is curving
<whitequark> the second one looks wrong but maybe it's just the shading of the solid
<whitequark> can you export it as, like, STL or STEP
<egg> uh
<whitequark> s/second/first/
<Qboid> whitequark meant to say: the first one looks wrong but maybe it's just the shading of the solid
<egg> whitequark: I shall try
* UmbralRaptor accidentally breaks scipy.integrate.quad by using astropy.units
<egg> whitequark: ASCII STL or Binary STL or does my question not make sense (I have no idea what I'm doing :-p)
<egg> whitequark: ok, I think I have an STL file, whatever that is
<egg> whitequark: how shall I transmit it to you
<egg> !wpn whitequark
* Qboid gives whitequark a Александров exact fountain pen
<egg> whitequark: sent you a mail
<egg> UmbralRaptor: ow
<UmbralRaptor> It works without units, but I think that means I'm now halfway through summoning Nyarlathotep.
<egg> ah yes
<egg> UmbralRaptor: cgs everywhere? >_>
<whitequark> egg: thanks! looking
<whitequark> meshlab says "cannot open stl", do you think you can do a "binary STL"
<egg> whitequark: sure
<egg> whitequark: if that fails I guess I can try generating a few views under a few angles or something
<egg> whitequark: I think I can do DXF and LWO too, whatever those are
<egg> also 3ds
<egg> and wrl
<SnoopJeDi> DXF is an AutoCAD drawing format
<SnoopJeDi> drawing exchange format, I think?
<UmbralRaptor> egg: worse, but converted to mks at point of entry.
<egg> D: worse
<UmbralRaptor> Remember: radius/mass of sun/earth/jupiter are units.
<egg> ah. yes.
<UmbralRaptor> Also parsecs. >_>
<UmbralRaptor> And the occasional ångström.
<egg> whitequark: you should have the binary stl file btw
<whitequark> *stare* hm, that doesn't open too
<whitequark> let me try something else
<whitequark> oh, I needed to "import" it and not "open".
<egg> :D
<whitequark> uhm
<whitequark> well I'm pretty sure it is rotating, no?
<egg> whitequark: well, it's following the curvature
<egg> whitequark: I took a *very wobbly* curve to follow
<egg> so the plane of curvature wobbles a bit, and we follow that
<egg> whitequark: what I'm following here is the Frenet frame, see https://en.wikipedia.org/wiki/Frenet%E2%80%93Serret_formulas#/media/File:Frenet-Serret-frame_along_Vivani-curve.gif for an example
<egg> for reasonable curves that should do a good job of being intuitively "not overly twisty", e.g. for a helix we stay aligned with the direction of the axis https://en.wikipedia.org/wiki/Frenet%E2%80%93Serret_formulas#/media/File:Frenet-Serret_moving_frame1.png
<whitequark> okay, I will trust you that this is the best we can do.
<whitequark> doing the right thing for helices sounds ok.
<whitequark> most curves encountered "in real world" will be not more complex than a helix.
<whitequark> actually, I think all of them except helices will lie in a 2d plane, and the rest will just be helices.
<egg> whitequark: mind you if it lies in a 2d plane and changes direction of curvature that will mean the frame will twist around
<egg> whitequark: I'm trying to figure out if there's something else that can be done
<whitequark> huh
<whitequark> that is definitely not the intent
<egg> whitequark: maybe something can be done with this https://en.wikipedia.org/wiki/Torsion_of_a_curve
<egg> hmm, but then if we want to follow the Frenet frame for a helix we need constant torsion
<egg> hm
<egg> whitequark: yeah I think this embodies your problem: this is a plane curve, and the third one is probably doing exactly what you want except there's a singularity and there it goes nuts http://i.imgur.com/etBhfny.png
<egg> whitequark: ok, so I can't think of something that's not "follow the curvature" that will do a helix correctly (assuming we both have the same intuition of what the frame should be on a helix); it works on a plane curve if the sign of the curvature remains the same; if the sign of the curvature changes it means you have a point where the curvature vanishes, which means there the definition "follow the curvature" is
<egg> singular, and that needs special handling (flip around the thing you're carrying around the curve, and resume on the other side of the sign change I guess)
<whitequark> hm
<whitequark> I think this is why lofting is hard
<egg> defining things is hard; though it helps with making sense of them at least
<egg> most of principia's abstractions are just that
<egg> I think now I understand what a reference frame is and how rotating reference frame work, after 3 iterations of bad abstractions
<egg> note: I went through some physics classes where I was supposed to have learned that; I knew how to compute with them, but not how they made sense
<egg> also there's something different that seems garbled in my plots but that's probably a trivial mistake in my calculations, doesn't affect the existence of those singularities
<egg> riight forgot to transpose a matrix
<egg> whitequark: ok, now with the matrix properly transposed so that it looks to me like I expect it to look http://i.imgur.com/zpcCVQy.png
<egg> which doesn't tell me whether it looks like you expect it to look, but hey, at least it's something :-)
<egg> whitequark: I'll send you the stl of the new flowery wibbly wobbly thing too, because the ones I sent you were garbage because of that missing transpose
<egg> and the Frenet frame is one solutions, others exist, everything sucks :D
<egg> whitequark: ok, so the weird "parallel transport" (quotes because that actually means something in differential geometry which we probably shouldn't get into) is really just a discretization of what the Frenet frame would do; and they have special casing (if the tangent hasn't rotated do nothing) that handles the 0-curvature case
<egg> whitequark: so the analytic version of that is exactly what I was describing: Frenet on curved bits, where the curvature vanishes special handling that doesn't rotate
<egg> whitequark: and I guess in a parametric CAD thing you really want an analytic form, rather than some discretization, so that would be it
<whitequark> no, the parametric bits end at curves
<whitequark> even an intersection of two NURBS surfaces doesn't often have an analytical representation
<egg> whitequark: thing is, that discretized Frenet frame allows you to "jump over" some twisting, but you need to feed in some discrete step that has little to do with the geometry
<egg> (in that case that's a book about games so it's the game timestep; let's not get into my ranting about the bad physics and geometry in games)
<egg> (and numerics)
<whitequark> hmm
<egg> as that timestep becomes small, you'll get exactly the Frenet frame (except in the case where the curvature vanishes at a single point, but there you need special casing anyway)
<egg> whitequark: do that last imgur pic and that last stl model look better btw?
<egg> whitequark: now that game book also mentions "fixed up", and if you can have the user define a reference direction that's "mostly normal" to the osculating plane (so the normal to the plane if the curve you're following is plane, or the axis of the helix for a helix), you can use this direction to orient your frame; but that will completely break down if the direction goes near the tangent (and it feels wrong to require
<egg> an additional vector)
<whitequark> slightly better I think
<egg> yay
<egg> !choose sleep|combinatorial explosion of code paths for orbital elements|whitequark and the nurbs
<Qboid> egg: Your options are: sleep, combinatorial explosion of code paths for orbital elements, whitequark and the nurbs. My choice: whitequark and the nurbs
<egg> ;choose sleep|combinatorial explosion of code paths for orbital elements|whitequark and the nurbs
<kmath> egg: sleep
<egg> hmm
<Thomas> !choose kmath|Qboid
<Qboid> Thomas: Your options are: kmath, Qboid. My choice: Qboid
<egg> ;choose kmath|Qboid
<kmath> egg: Qboid
<whitequark> lol
<egg> whitequark: so, I have come to the point where I have a struct that can be filled from any 2 among 6 categories of parameters
<egg> (and one of those categories needs one among 7)
<egg> so many codepaths
<egg> whitequark: :D https://hastebin.com/opubatomob.cpp :D
<egg> that probably means 15 exclusive branches for the 2 among 5 :D
<egg> (for the 1 among 7 of course it's 7)
<egg> !wpn Thomas
* Qboid gives Thomas a mass-driver
<egg> !wpn whitequark
* Qboid gives whitequark an iodine trie
<egg> !wpn UmbralRaptor
* Qboid gives UmbralRaptor an ISO 8601-compliant minion with a guillotine attachment
* UmbralRaptor decapitates the minion with its own standards.
<egg> UmbralRaptor: I *think* I added minion thinking of the cannon, but that works too :D
<UmbralRaptor> They were a fun side bit of dispicable me, that have overrun everything else.
<whitequark> egg: std::experimental::optional >_>
<whitequark> do you not have using;
<egg> whitequark: we tend not to use using for std stuff; but we should probably move optional to std (it's our own anyway) >_>
<egg> whitequark: for our own stuff we using a lot, which is why we have all those internal namespaces to avoid polluting things (everything is in headers)
<egg> "we using a lot" >_> <_< C++ makes me bad at grammars
<egg> oh, I have a presentation by Mark Davis tomorrow
<egg> Unicode fhtagn
<whitequark> wait what
<whitequark> you have your own std?
<egg> whitequark: nah, we have our own optional, because neither the libc++ version we use nor the MSVC version we use have that
<whitequark> oh
<whitequark> and you put it into std::experimental?
<egg> whitequark: MSVC has filesystem but not the libc++ we use, so on linux we have the shittiest workaround https://github.com/Norgg/eggsperimental_filesystem/blob/master/experimental/filesystem
<whitequark> std::filesystem is the most useless thing ever
<egg> whitequark: well we yoink it from somebody's github and they put it into experimental
<egg> dunno, I quite like filesystem
<whitequark> actually, I'm convinced that the path-related stuff in STL is written by morons
<whitequark> you can't use it on windows.
<whitequark> at all.
<whitequark> ever.
<egg> huh?
<whitequark> well, the only paths you can use on windows are UTF-16 std::wstring (or wchar_t*, I guess) pats
<whitequark> paths*
<egg> well, MSVC provides it and we use it? (admittedly very little of it)
<whitequark> and these aren't in the C++ stdlib
<egg> aaah right
<whitequark> these *are* in MSVC stdlib, but *not* in MinGW
<whitequark> so we don't use them in solvespace. std::fstream is banned from it
<egg> we have managed to avoid mingw :-p
<whitequark> well I don't believe in closed-source toolchains
<egg> or anything that touches gcc tbh, thanks to our wonderful identifiers :D
<whitequark> most of solvespace-on-windows work is done using mingw and wine
<whitequark> ncidentally
<egg> !wpn whitequark
* Qboid gives whitequark a noun polar manifold/NaN hybrid
<egg> but what kind of NaN is it
<egg> !wpn -add:adj quiet
<Qboid> egg: Adjective already added!
<egg> !wpn -add:adj signaling
<Qboid> egg: Adjective added!
* egg should zzz
<egg> goodnight Iskierka UmbralRaptor whitequark et al.
egg is now known as egg|zzz|egg
<UmbralRaptor> Good night, and good luck zzzing
<Ellied> night egg|zzz|egg
technicalfool_ has joined #kspacademia