00:00.49 |
``Erik |
oh yay :) |
00:05.01 |
``Erik |
learn something new about submariners every
day :> http://slashdot.org/comments.pl?sid=985373&cid=25264311 |
00:05.03 |
``Erik |
*duck* *run* |
00:08.36 |
``Erik |
apparently, research time is dictated by the
number of research labs you had at the beginning, adding more
during research does NOT change the duration |
00:09.58 |
``Erik |
on the up side, you can downgrade all the way
down to the minimum number for the current level without impacting
it as well |
00:27.15 |
starseeker |
louipc: That's the idea |
00:31.08 |
starseeker |
The individual files can be xincluded into a
convenient larger document, and the individual ones can generate
things like man pages |
00:36.51 |
starseeker |
eventually, there should be very little
distinction between "command line" and "mged" commands - the latter
can usually be run from the command line if they make sense, and a
unified system of documentation simplifies a lot |
00:49.58 |
starseeker |
the new docbook "one per command" files are
intended to serve the purpose of man pages, and one of their output
formats actually IS man |
00:50.22 |
starseeker |
the nice part is we also get other formats
(like html and pdf) for free |
00:50.56 |
starseeker |
html in particular will be handy - I'm
currently looking at ways to get MGED to display html
pages |
00:53.31 |
*** join/#brlcad Ralith
(n=ralith@216.162.199.202) |
00:58.29 |
mafm |
hi Ralith |
00:58.42 |
mafm |
and good night all, I go to sleep :) |
01:18.18 |
``Erik |
starseeker is just itching to see the dreaded
"filesystem out of inodes" message |
01:27.01 |
starseeker |
``Erik: suck it up, BSD man ;-) |
01:29.52 |
``Erik |
heh, all *nix have that issue, dude
O.o |
01:30.13 |
starseeker |
I know, but surely the leet BSD hackers will
get around it |
01:31.04 |
``Erik |
sure, we just create fs's with more inodes
*shrug* even linux can do that, but it requires a newfs |
01:31.15 |
``Erik |
uh, mkext2fs for you leenewx weenies
:) |
01:34.53 |
starseeker |
will switch to opensolaris
and the almighty ZFS |
01:35.40 |
``Erik |
um, hrm, I d'no if zfs has the ability to
tweak inode count on the fly O.o (but fbsd does fully support zfs,
and mostly supports dtrace!) |
01:35.41 |
``Erik |
:D |
01:35.43 |
starseeker |
eyes Tokeneer project with
interest |
01:36.19 |
starseeker |
heh - BSD license is nice sometimes |
01:37.12 |
starseeker |
REALLY doesn't understand the
appeal of 3D television |
01:37.54 |
starseeker |
can only see 2D without
moving around - how can the couch potato adapt to such an
environment |
01:40.41 |
``Erik |
immediately patents a moving
barka |
01:41.02 |
``Erik |
barcalounger |
01:41.09 |
``Erik |
:D |
01:43.26 |
starseeker |
that would be a patent worth framing |
01:44.00 |
``Erik |
does scifi count as prior art? O.o |
01:44.25 |
starseeker |
wished it did - probably
depends on the circumstances |
01:45.02 |
starseeker |
still wants to contact the
dude who has the cat laser pointer patent after it expires and
purchase the original document |
01:46.55 |
Ralith |
starseeker: is your depth perception
borken? |
01:47.09 |
starseeker |
eh? |
01:47.18 |
Ralith |
starseeker: also, what about DragonflyBSD and
it's shiny new HammerFS? |
01:47.25 |
Ralith |
18:37:53 * starseeker can only see 2D without
moving around |
01:47.43 |
starseeker |
depth perception is deduced based on two
dimensional information |
01:47.54 |
Ralith |
everyone else can see full 3D while sitting
still |
01:48.01 |
Ralith |
why do you think we have two eyes :P |
01:48.24 |
starseeker |
Sure, but the benefits of 3d television are
minor unless you move around it |
01:48.39 |
starseeker |
you're losing most of the information due to a
limited vantage point |
01:49.00 |
starseeker |
It might make more sense with a holographic
sterogram type display |
01:49.18 |
Ralith |
I'm not personally interested in a multi-PoV
3D display |
01:49.24 |
Ralith |
but I would love to have a depth-capable
display. |
01:49.35 |
starseeker |
that's different |
01:49.36 |
Ralith |
e.g. stereo glasses |
01:49.41 |
starseeker |
nods |
01:49.51 |
Ralith |
wants a nice high res pair,
but it'll be forever before he can afford one :( |
01:49.58 |
starseeker |
amen |
01:50.00 |
Ralith |
at least by the time I buy one, hardware to
drive it will be cheap |
01:51.14 |
starseeker |
Ah yes, here it is: http://www.google.com/patents?id=OfwkAAAAEBAJ&dq=5443036 |
01:51.20 |
Ralith |
I have this deep-set desire to custom-build
and integrate an enhanced-reality set in a car. |
01:51.28 |
starseeker |
my favorite monument to the flaws of the US
patent system |
01:51.52 |
starseeker |
Ralith: Heh - there was this ride at
universal studios that was pretty good at that... |
01:52.23 |
Ralith |
oh? |
01:52.34 |
starseeker |
I think it was back to the future
relate |
01:52.35 |
starseeker |
d |
01:52.58 |
starseeker |
I may have been too young to really appreciate
its flaws though |
01:54.05 |
Ralith |
I'm obsessed with the potential
useful||entertaining aspects of something actually built to help
you out |
01:54.11 |
Ralith |
lots of fun to think about |
01:54.25 |
starseeker |
:-) |
01:54.51 |
starseeker |
's particular fun with
thought experiments is renewable energy and efficient house
design |
01:55.13 |
Ralith |
lacks sufficient technical
knowledge to cover that sort of area |
01:55.15 |
Ralith |
also, bbs |
01:55.44 |
starseeker |
didn't say he had sufficient
knowledge either ;-) |
01:56.16 |
Ralith |
hehe |
02:17.09 |
louipc |
starseeker: cool. I wonder if it could somehow
be integrated into the mged help system |
02:17.25 |
louipc |
that would be sweet |
02:20.17 |
Ralith |
</bbs> |
02:20.59 |
Ralith |
starseeker: what *would* make a multi-PoV
display neat is if it was opaque and projected in such a way that
you could walk in the middle of it without interrupting
anything |
02:24.30 |
louipc |
http://www.ipwatchdog.com/patent/animal-toy/ |
02:24.39 |
louipc |
this one is awesome |
02:43.32 |
``Erik |
could be worse, starseeker, check out
australias awesomeness
http://edition.cnn.com/2001/WORLD/asiapcf/auspac/07/02/australia.wheel/ |
04:18.31 |
brlcad |
fixes libged |
04:23.24 |
brlcad |
iirc, there are about 300 mged commands, 400
unix command-line commands |
04:25.20 |
brlcad |
there's a couple ways to ask mged for the list
of all commands, e.g. info commands |
04:36.23 |
CIA-4 |
BRL-CAD: 03brlcad * r32856 10/brlcad/trunk/
(include/rtgeom.h src/libged/make.c src/mged/typein.c): need to
update the pnts in use in libged as well for the make command.
prefix all of the pnts types with RT_ since they are (presently)
part of the API that you have to go through to use them. |
04:40.31 |
CIA-4 |
BRL-CAD: 03brlcad * r32857
10/brlcad/trunk/AUTHORS: |
04:40.31 |
CIA-4 |
BRL-CAD: add janine gettier to the
contributors list for her help with documentation. |
04:40.31 |
CIA-4 |
BRL-CAD: she's worked on reviewing some
documents in the past but has stepped up |
04:40.31 |
CIA-4 |
BRL-CAD: contributions recently with the work
on docbook integration with cliff. |
04:55.40 |
CIA-4 |
BRL-CAD: 03brlcad * r32858
10/brlcad/trunk/NEWS: |
04:55.40 |
CIA-4 |
BRL-CAD: bob improved mesh normals from Pro/E
exporter. he said that it seems like |
04:55.40 |
CIA-4 |
BRL-CAD: they're exporting with a left-hand
orientation, so the bot is now created |
04:55.40 |
CIA-4 |
BRL-CAD: accordingly set as lh or unoriented
depending on whether there are normals |
04:55.40 |
CIA-4 |
BRL-CAD: available during export. |
06:30.32 |
brlcad |
booyah |
06:30.34 |
CIA-4 |
BRL-CAD: 03brlcad * r32859 10/brlcad/trunk/
(NEWS TODO bench/Makefile.am bench/benchmark.1
bench/run.sh): |
06:30.34 |
CIA-4 |
BRL-CAD: greatly improved the usability of the
benchmark suite by providing additional |
06:30.34 |
CIA-4 |
BRL-CAD: processing commands including not
doing anything by default any more unless the |
06:30.34 |
CIA-4 |
BRL-CAD: 'run' command is requested. added
detailed usage and instruction commands along |
06:30.36 |
CIA-4 |
BRL-CAD: with updated manual page to match.
the options that control how the benchmark |
06:30.38 |
CIA-4 |
BRL-CAD: behaves can now also be specified on
the left or right side of the 'benchmark' |
06:30.40 |
CIA-4 |
BRL-CAD: command as well on the
command-line. |
06:33.07 |
brlcad |
should docify
doc/benchmark.tr and bench/benchmark.1 into one (unified) document
at some point |
07:20.03 |
*** join/#brlcad clock_
(n=clock@84-72-91-240.dclient.hispeed.ch) |
07:55.22 |
*** join/#brlcad d_rossberg
(n=rossberg@bz.bzflag.bz) |
08:24.47 |
*** join/#brlcad Bariton
(n=Bary@p5B14EEFA.dip.t-dialin.net) |
09:15.59 |
*** join/#brlcad mafm
(n=mafm@130.Red-83-49-86.dynamicIP.rima-tde.net) |
09:17.46 |
mafm |
morning |
10:07.48 |
*** join/#brlcad elite01
(n=elite01@unaffiliated/elite01) |
10:11.33 |
brlcad |
howdy mafm |
10:13.32 |
mafm |
hi brlcad |
10:14.01 |
mafm |
I'm under attack of micro-bugs, as my
flatmates calls them :P |
10:14.07 |
mafm |
other than that, pretty well |
10:15.04 |
brlcad |
sick? |
10:16.48 |
mafm |
yup |
10:17.54 |
mafm |
cold/flu |
10:18.23 |
*** join/#brlcad quentusrex
(n=quentusr@c-71-197-244-228.hsd1.or.comcast.net) [NETSPLIT
VICTIM] |
10:21.43 |
brlcad |
fun |
10:27.07 |
CIA-4 |
BRL-CAD: 03brlcad * r32860
10/brlcad/trunk/src/librt/primitives/revolve/revolve.c: remove
stray rt_revolve_prep debug printing |
11:13.03 |
*** join/#brlcad quentusrex
(n=quentusr@c-71-197-244-228.hsd1.or.comcast.net) [NETSPLIT
VICTIM] |
11:24.38 |
CIA-4 |
BRL-CAD: 03bob1961 * r32861 10/brlcad/trunk/
(10 files in 5 dirs): Added bot_dump functionality to
libged. |
11:48.05 |
starseeker |
louipc: integrating into (even replacing much
of) the current MGED help system is exactly the goal :-) |
12:21.18 |
brlcad |
gives up on the revolve bug
hoping pacman87 can make better sense of it |
12:56.40 |
claymore |
never give up, never surrender! |
13:03.33 |
``Erik |
it's not surrender, it's passing the buck
:D |
13:04.28 |
claymore |
Delgation: The greatest power on earth ;)
Men can move mountains with it..... |
13:04.52 |
``Erik |
men can delegate others to move mountains with
it, you mean |
13:05.04 |
``Erik |
will, determination, and an endless supply of
slave labor? |
13:05.06 |
clock_ |
claymore: you mean atomic bomb? |
13:05.23 |
PrezKennedy |
newkular bombs |
13:07.48 |
clock_ |
;-) |
13:10.17 |
claymore |
Erik: Bingo ;) |
13:10.40 |
claymore |
clock: Perhaps, as long as we are discussing
the delegation of deploying a nuclear weapon! |
13:11.34 |
claymore |
Erik: What's you impression of Ubuntu?
Good/Bad/indifferent? |
13:11.41 |
claymore |
you = your |
13:13.31 |
``Erik |
it's... linux... |
13:14.15 |
``Erik |
I haven't used ubuntu, I was doing kernel
development in linux and uh, was a bit terrified :D all those
nippets of MS and enterprise code that people laugh at... I've seen
worse in the kernel |
13:14.35 |
``Erik |
ubuntu is based off of debian, right? debian
was my favorite leenewx back in the day |
13:15.04 |
claymore |
cool. Since you're the OS zealot, i figured
I'd ask ;) |
13:15.29 |
clock_ |
``Erik: you want to say that in the Linux
kernel there are even worse pearls than in MS and enterprise
code? |
13:16.07 |
``Erik |
clock: there are some real stinkers. |
13:16.20 |
clock_ |
``Erik: do you remember some? |
13:16.38 |
clock_ |
A friend found a chain of functions that were
doing nothing else just one caling another |
13:16.45 |
clock_ |
So he removed that and sent a patch |
13:16.50 |
clock_ |
Don't know if they accepted it
though. |
13:17.18 |
``Erik |
um, iirc (it's been many years), ioctl is
treated as a pass through unguarded pointer remapping instead of a
guarded copy that divides top and bottom half |
13:17.32 |
clock_ |
A friend who wrote his own operating system
and did a surprising discovery in the filesystem area so maybe he
knew what he was doing ;-) |
13:17.57 |
``Erik |
which certain driver writers demonstrated
horrible ways to abuse *coughnvidiacough*, basically permitting
arbitrary overflow into kernel space |
13:17.58 |
clock_ |
I don't understand it |
13:18.03 |
clock_ |
I know what a top and bottom half is |
13:18.19 |
clock_ |
that's in interrupt drivers the top half puts
some request on a que and the bottom half then does the real
work |
13:18.30 |
clock_ |
I know what a pointer is |
13:19.13 |
clock_ |
oh nvidia is shit already just by the name
isn't it? |
13:19.43 |
``Erik |
ok, you call an ioctl, you get the ability to
write to kernel protected memory from a user process... on most
OS's you actually write to a user buffer, then the kernel copies a
kernel defined number of bytes from your user memory into kernel
space |
13:20.17 |
clock_ |
with ioctl you pass 2 ints and a variable
amount of parameters |
13:20.17 |
``Erik |
with the linux way, it just maps a pointer to
both without a guard (or it used to), so if you were malicious, you
could just keep writing into kernel memory to your hearts content
(at least for that page) |
13:20.24 |
clock_ |
I don't see any way how to write into kernel
memory |
13:20.34 |
clock_ |
Who's writing into the kernel memory is the
kernel isn't it? |
13:20.55 |
clock_ |
Or is the ioctl somehow significantly
translated by glibc? I am looking into the manpage not into the
kernel interface spec |
13:21.04 |
clock_ |
(frankly, I wouldn't expect Linux to have any
kind of interface spec) |
13:21.09 |
``Erik |
it's a syscall |
13:21.28 |
``Erik |
lemme try to find my minirant |
13:21.33 |
clock_ |
``Erik: what pointer? It returns an
int |
13:22.00 |
claymore |
technically speaking EVERYTHING is a pointer
;) |
13:22.33 |
clock_ |
Linux is crap anyway. For exacmple the whole
VT_ACTIVATE virtual terminal switching mechanism is flawed by
design, resulting in a serious and irreparable race condition that
can crash the video card and thus the whole machine |
13:22.34 |
``Erik |
https://sourceforge.net/forum/forum.php?forum_id=89042 |
13:22.51 |
clock_ |
We were debugging Links crashing when
switching VT's |
13:22.58 |
clock_ |
Kernel people keep saying it's a bug of
svgalib. |
13:23.10 |
``Erik |
this rant is trying to move the abused linux
code into the 'safe' bsd approach |
13:23.16 |
clock_ |
But I found it isn't. And then the kernel
people confirmed me that the VT_ACTIVATE mechanism in the linux
kernel is buggy by design. |
13:23.49 |
clock_ |
"ioctl address" -> what's an ioctl
adddress? |
13:23.56 |
clock_ |
knows just what ioctl is, see
ioctl |
13:23.59 |
clock_ |
see man ioctl |
13:24.12 |
clock_ |
is it an address associated with some specific
ioctl? |
13:24.38 |
``Erik |
some ioctl's act like memcpy() |
13:25.09 |
clock_ |
and? |
13:25.17 |
clock_ |
where's the problem? |
13:25.20 |
``Erik |
um |
13:25.42 |
clock_ |
you instruct the kernel to write somewhere
into the kernel space and he doesn't check if you have permission
for that? |
13:25.52 |
``Erik |
or read, and yes |
13:25.59 |
clock_ |
basic eror |
13:26.20 |
clock_ |
same like calling unlink("/etc/shadow") under
user privileges |
13:26.28 |
clock_ |
If the kernel doesn't check the permission,
youre screwed. |
13:26.30 |
``Erik |
UNIX: memcpy(dst,src,len); Linux:
dst=src; |
13:26.40 |
clock_ |
Why should this be anything different? Why
does it need discussion? |
13:26.46 |
clock_ |
Because the linux kernel developers are
retarted? |
13:27.09 |
``Erik |
or too trusting and looking for speed *shrug*
this was a while ago, hopefully that gripe has changed |
13:27.16 |
clock_ |
omg |
13:27.33 |
clock_ |
Not only Linux is crap, also the x
server |
13:27.42 |
clock_ |
they have a piece of code that is guarded by
cli and sti |
13:28.11 |
``Erik |
really? in X? neat |
13:28.11 |
clock_ |
if a page boundary happens in between and the
lower page happens to be paged in and the upper paged out |
13:28.13 |
clock_ |
it throws a page fault the fault handler asks
the disk to serve the page and waits for an interrupt. |
13:28.21 |
``Erik |
guess if you have to run it as root, you're
able to be fugly like that |
13:28.31 |
clock_ |
The disk brings the page pulls the interrupt
and NOTHING HAPPENS, BECAUSE THE INTERRUPT IS DISABLED. |
13:28.42 |
clock_ |
Now the machine hangs and he user can happily
press the RESET button. |
13:29.04 |
``Erik |
I haven't run across that issue yet |
13:29.28 |
``Erik |
these days, I sit at a mac, run X11.app and do
everything over remote X |
13:29.55 |
``Erik |
<-- been thinking about buying a linux
subnotebook, though |
13:33.12 |
clock_ |
I get all kinds of problems with X |
13:33.41 |
clock_ |
For example 99% times I shut down X in the
work with ctrl-alt-backspace, the lower edge of the screen fills
with thin vertical coloured stripes and a square is painted on the
screen. |
13:33.56 |
clock_ |
Then I have to press alt-sysrq-u-s-b because
the system doesn't react to anything else. |
13:37.38 |
``Erik |
that sounds more like a video driver
reinitialization issue than a straight up X issue |
13:38.26 |
clock_ |
Well if there are things like this - and I
have verified that myself with the cli and sti in the source code -
than I simply don't trust X |
13:38.28 |
PrezKennedy |
windows is pretty good |
13:38.38 |
clock_ |
puts a "broken by design"
stamp over X and stops worrying about any crashes |
13:39.58 |
``Erik |
uh, we're talking performance cars at a drag
strip, don't brag about your honda civic with a type R sticker and
dragging muffler, boy :D |
13:40.26 |
clock_ |
Trabant car |
13:40.43 |
archivist_ub |
car! cycle |
13:41.11 |
claymore |
Score for egging people on: PrezKennedy: 1,
Erik: 0 |
13:41.46 |
``Erik |
aw, c'mon, that ain't fair, I jump at any
excuse for an off the wall analogy :D |
13:42.24 |
claymore |
thinks Erik jumps at any
excuse to slam windows. |
13:42.53 |
``Erik |
speaking of off the wall car analogies,
funroll loops has moved O.o it's now http://funroll-loops.info/ |
13:46.10 |
claymore |
newb question: When it comes to load average,
should it be 1.0 per cpu? |
13:46.26 |
``Erik |
um, load is a red herring |
13:47.21 |
PrezKennedy |
load should be whatever is just below locking
up the system |
13:48.10 |
claymore |
Understanding that its more of a qualitative
measure than a quantitative one, is it 1.0 per cpu? |
13:48.50 |
PrezKennedy |
thats what ive heard people say |
13:50.35 |
PrezKennedy |
http://en.wikipedia.org/wiki/Load_(computing) |
13:57.14 |
claymore |
cool thanks for the link. didn't have a
browser open and figured you all would know. |
14:06.02 |
``Erik |
it's the length of the runnable queue, if you
sustain a load of 1.0 per cpu, you're probably in the neighborhood
of full utilization and minumum process latency |
14:06.08 |
``Erik |
(sorry, someone walked in my office) |
14:07.39 |
``Erik |
linux includes uninterruptible sleeps in its
load computation? laaammmeeee |
14:14.10 |
claymore |
hates the sloooowness of a
wireless connection. grrr. |
14:17.45 |
clock_ |
claymore: not every wireless connection is
slow, you should say the wireless connection! |
14:18.05 |
clock_ |
claymore: there are wireless connection with
latency less than an optical fibre, with 10^-9 BER |
14:23.59 |
claymore |
okay Mr Specific: Claymore hates the
slooooownes of a 802.11g wireless connection. |
14:25.20 |
brlcad |
if you're being pedantic, that should probably
be an 'an' too ;) |
14:25.21 |
PrezKennedy |
hates the slowness of an
802.11a/b connection |
14:25.28 |
brlcad |
yay, an |
14:26.05 |
claymore |
glares at
Sean. |
14:27.10 |
claymore |
VMware's virtual networking is kinda
strange.... Need to read more. |
14:27.58 |
PrezKennedy |
stares hard at Sean through
the monitor |
14:28.06 |
PrezKennedy |
you can't see it... but im staring
hard! |
14:28.11 |
``Erik |
hehehe |
14:29.52 |
``Erik |
so, uh, this one time, at band camp |
14:35.08 |
claymore |
I never knew you played flute
Erik.... |
14:35.30 |
``Erik |
nah, dude, oboe O.o |
14:35.40 |
claymore |
doh, my bad. |
14:35.42 |
``Erik |
that movie had some very disturbing
scenes |
14:35.49 |
claymore |
yes it did.... |
14:36.06 |
``Erik |
(that was an oboe he violated,
right?) |
14:36.07 |
claymore |
i mean, apple pie? Come on, thats a new level
of desperate... |
14:43.45 |
PrezKennedy |
yeah i mean c'mon... pumpkin pie is so much
better |
14:43.47 |
PrezKennedy |
XD |
14:44.37 |
``Erik |
backs away |
14:44.42 |
CIA-4 |
BRL-CAD: 03bob1961 * r32862
10/brlcad/trunk/misc/win32-msvc8/ (bot_dump/bot_dump.vcproj
brlcad/brlcad.sln): Update bot_dump project. |
14:53.37 |
CIA-4 |
BRL-CAD: 03bob1961 * r32863
10/brlcad/trunk/misc/win32-msvc8/brlcad/brlcad.sln: Remove bot2raw
project reference. |
14:56.36 |
*** join/#brlcad PrezKennedy
(i=Matthew@whitecalf.net) |
15:15.09 |
*** join/#brlcad PrezKennedy
(i=Matthew@whitecalf.net) |
15:22.20 |
*** join/#brlcad PrezKennedy
(i=Matthew@whitecalf.net) |
15:43.39 |
*** join/#brlcad Naaatan
(n=45461cb2@bz.bzflag.bz) |
15:48.19 |
starseeker |
oh, ICK |
15:48.37 |
starseeker |
tkhtml3 is using some kind of parser to
extract the c files before compiling |
16:01.45 |
*** join/#brlcad elite01
(n=elite01@unaffiliated/elite01) |
16:02.30 |
*** join/#brlcad docelic
(n=docelic@78.134.199.66) |
16:07.07 |
*** join/#brlcad clock_
(n=clock@77-56-86-64.dclient.hispeed.ch) |
16:51.12 |
*** join/#brlcad elite01
(n=elite01@unaffiliated/elite01) |
17:02.24 |
mafm |
going out, see you |
17:06.27 |
pacman87 |
brlcad: i've got to run now, but i should be
back in ~2hrs if you want me to take a stab at the revolve
bug |
18:02.26 |
brlcad |
pacman87: ok cool |
19:10.20 |
pacman87 |
is back |
19:15.02 |
pacman87 |
brlcad: ping |
19:54.31 |
*** join/#brlcad cad95
(n=3f44e4c5@bz.bzflag.bz) |
20:00.46 |
brlcad |
pacman87: pongo |
20:00.57 |
pacman87 |
what's the bug? |
20:01.14 |
brlcad |
did you see the revolve.g that daniel sent to
the mailing list? |
20:01.58 |
brlcad |
the hit points on the top/bottom don't seem
right (possibly just inverted) |
20:02.26 |
pacman87 |
i don't remember getting that one |
20:02.50 |
pacman87 |
sent to the -devel list? |
20:03.05 |
brlcad |
yeah |
20:03.23 |
brlcad |
ah, not the devel list |
20:03.32 |
brlcad |
posted to the help forum |
20:03.43 |
brlcad |
http://sourceforge.net/forum/message.php?msg_id=5381844 |
20:04.12 |
brlcad |
you're probably not subscribed to the
forums |
20:09.16 |
pacman87 |
i'm in winXP atm, and have another class in 20
min |
20:09.24 |
brlcad |
k |
20:09.49 |
pacman87 |
17 hours of all engr classes (2 labs, plus my
senior design project) doesnt leave much spare time |
20:10.58 |
brlcad |
http:/brlcad.org/tmp/revolve.png |
20:11.04 |
pacman87 |
but the bug you're talking about is for
revolve faces that are perpendicular to the axis of
rotation? |
20:11.17 |
pacman87 |
ah, i see |
20:11.52 |
pacman87 |
if you try that with a different bg color, are
those faces still black? |
20:12.20 |
brlcad |
I did see in a simple single ray query that it
is getting a in/out hit computed there, but it didn't seem like
they were right |
20:12.51 |
pacman87 |
so the hitpoint could be off there |
20:12.53 |
pacman87 |
? |
20:13.33 |
brlcad |
yeah, or simply inverted points |
20:13.55 |
brlcad |
the panels don't register as background, so
even with a bgcolor set, they render black |
20:14.24 |
brlcad |
both the top and the bottom |
20:15.07 |
brlcad |
basically all surfaces that are perfectly
perpendicular |
20:15.28 |
pacman87 |
if you add a rpp overlapping with the revolve,
do those surfaces intersect properly? |
20:15.50 |
pacman87 |
(to test for proper hit distance) |
20:18.24 |
brlcad |
http://brlcad.org/tmp/revolve2.png
seems ok |
20:19.09 |
pacman87 |
ok, so the distances are probably correct, and
the normals need fixing |
20:19.31 |
pacman87 |
adds it to my todo
list |
20:19.56 |
brlcad |
hm, that gives me an idea actually |
20:21.33 |
brlcad |
hm, firing straight down, I get |
20:21.43 |
brlcad |
<PROTECTED> |
20:21.44 |
brlcad |
OUT: ( 1.66, 1.00 ) 2.6224 |
20:22.33 |
pacman87 |
looking along the revolve axis is handled
seperately for hitpoints |
20:23.55 |
pacman87 |
i've got class; i'll check back in
~1.5hrs |
20:24.27 |
brlcad |
cya |
20:26.12 |
brlcad |
hm, yeah -- that in/out looks right |
20:27.23 |
*** join/#brlcad PrezKennedy
(i=Matthew@whitecalf.net) |
22:00.09 |
*** join/#brlcad Ralith
(n=ralith@216.162.199.202) |
22:00.53 |
pacman87 |
is back
again |
22:16.42 |
brlcad |
aha, vpriv is ending up with Z ==
-inf |
22:16.54 |
brlcad |
causing nan's during norm() |
22:20.34 |
pacman87 |
hmm, i though i handled that in
norm() |
22:21.28 |
brlcad |
actually, really shouldn't rely on ieee
encoding |
22:21.43 |
brlcad |
division by zero on some platforms will result
in a floating point exception instead of nans |
22:21.51 |
brlcad |
i.e., the app can crash |
22:22.18 |
brlcad |
best to always protect with NEAR_ZERO tests
and do the extra book-keeping and conditionals |
22:22.19 |
pacman87 |
is looking up the
code |
22:22.42 |
brlcad |
it's undoubtedly the m = dir[Y] / dir[X] where
things start |
22:23.23 |
pacman87 |
what happened to the sourceforge svn
browse? |
22:26.12 |
brlcad |
looks like they're in the middle of setting up
a new web server |
22:26.26 |
*** join/#brlcad Bariton
(n=Bary@p5B14EEFA.dip.t-dialin.net) |
22:26.31 |
brlcad |
it was fine just yesterday |
22:27.10 |
brlcad |
ah, interesting, it works if you go deep ..
just not the top-level places that used to redirect |
22:27.13 |
brlcad |
e.g. http://brlcad.svn.sourceforge.net/viewvc/brlcad/brlcad/trunk/ |
22:29.51 |
brlcad |
woot, fixed at least one of the
problems |
22:29.58 |
brlcad |
still have a problem if they're
dead-on |
22:31.33 |
pacman87 |
dead-on = ? |
22:31.36 |
pacman87 |
along the revolve axis? |
22:32.09 |
brlcad |
top-view |
22:32.19 |
brlcad |
yeah, looking down the revolve axis |
22:47.56 |
CIA-4 |
BRL-CAD: 03brlcad * r32864
10/brlcad/trunk/src/librt/primitives/revolve/revolve.c: |
22:47.56 |
CIA-4 |
BRL-CAD: fix at least one problem with the
revolve normals where nan's were making their |
22:47.56 |
CIA-4 |
BRL-CAD: way into the norm() calc causing
badness. this protects the division by zeros |
22:47.56 |
CIA-4 |
BRL-CAD: applying some naive fallback logic
that probably needs reviewing/improving but |
22:47.56 |
CIA-4 |
BRL-CAD: does fix the problem for at least a
few orientations. there are still problems |
22:47.58 |
CIA-4 |
BRL-CAD: with looking straight up/down the
rotation axis. |
22:52.53 |
brlcad |
pacman87: feel free to review/revert that
.. |
22:53.18 |
brlcad |
the near-zero cases should probably be handled
better than that |
22:54.11 |
brlcad |
I left some XXX debug statements in there for
you if you want to poke it |
22:54.21 |
pacman87 |
ok |
22:55.29 |
pacman87 |
don't you need an else in front of line
432? |
23:00.25 |
pacman87 |
and if dir[X] is near zero, then m would be
very large, not one |
23:01.17 |
brlcad |
ah, yeah -- there was an else there at one
point .. where'd it go |
23:03.19 |
brlcad |
yes, huge, but then they're caught with the
subsequent near_zero tests for /m to just make vpriv[z] =
0 |
23:04.08 |
brlcad |
those seem like they should be 1/-1 instead of
0, but I was following/faking intent |
23:05.50 |
pacman87 |
subsequent test == line 455? |
23:06.17 |
pacman87 |
shouldn't that be dir[X] is near zero, instead
of m near zero? |
23:07.20 |
brlcad |
heh, copy-paste ftw .. you can see how
careful/awake I am :) |
23:07.59 |
brlcad |
actually, hm, 455 you say? |
23:08.16 |
pacman87 |
and if you're worried about inf, then you need
a check for dir[Y] == 0, cause then m = 0 and 1/m is inf |
23:08.34 |
brlcad |
455 looks right to me |
23:08.37 |
pacman87 |
yeah, i'm looking at the diff on
sourceforge |
23:08.45 |
pacman87 |
<PROTECTED> |
23:08.49 |
brlcad |
it's protecting the /m |
23:09.06 |
pacman87 |
oh, right |
23:09.08 |
brlcad |
the point being to avoid inf/nan
altogether |
23:09.51 |
pacman87 |
so all the problems arise when either dir[X]
or dir[Y] are zero, yeah? |
23:10.56 |
pacman87 |
the easiest way to ensure correctness (i'd
think) would be to replace m or 1/m with dir[Y]/dir[X] or the
opposite, and it'd be easier to check the condition you
need |
23:11.37 |
brlcad |
yeah, I think so |
23:12.43 |
CIA-4 |
BRL-CAD: 03brlcad * r32866
10/brlcad/trunk/src/librt/primitives/revolve/revolve.c: ws,
indent |
23:12.43 |
brlcad |
kicks CIA-4 |
23:12.43 |
CIA-4 |
ow |
23:12.45 |
pacman87 |
another way would be to add another surfno to
designate that the face is perpendicular to the revolve
axis |
23:13.18 |
brlcad |
is that your HORIZ_SURF ? |
23:14.28 |
pacman87 |
yeah, but in shot(), i think i'm only using it
when i have to close the sketch myself |
23:14.46 |
pacman87 |
though the code should be applicable to this
problem, too |
23:15.25 |
pacman87 |
so i think that boils down to "if (dir[y] is
near zero) surfno = HORIZ_SURF |
23:18.17 |
pacman87 |
dinnertime, back soon |
23:18.56 |
*** join/#brlcad Axman6
(n=Axman6@pdpc/supporter/student/Axman6) |
23:20.44 |
brlcad |
cheerio |
23:21.03 |
``Erik |
cheerios for dinner? *ponder* |
23:28.26 |
starseeker |
never cared for
cheerios |
23:29.27 |
``Erik |
I used to get frosted miniwheats and raisin
bran, but I don't eat breakfast anymore :/ |
23:29.43 |
``Erik |
if I do, I cook up crepes or pancakes or
waffles or eggs/hashbrowns/bacon or something |
23:30.10 |
``Erik |
grabs his pink apron and
prances about |
23:30.53 |
brlcad |
yay, threats from someone 35 levels higher
than me now that I'm about to pass 30 |
23:31.02 |
starseeker |
tries to scrub that mental
image out of his head |
23:31.25 |
``Erik |
on ceti, I assume? |
23:31.44 |
``Erik |
I think 50 is the high end of epsilon right
now |
23:31.46 |
brlcad |
beta |
23:31.54 |
``Erik |
oh, beta, my bad |
23:31.59 |
``Erik |
"the other one" |
23:32.24 |
``Erik |
my first lithp web app project, I think, is
going to be a suite of ae helpers |
23:32.57 |
``Erik |
extending the notion that created http://brlcad.org/~erik/profit.html |
23:32.57 |
``Erik |
:) |
23:35.00 |
brlcad |
I find myself getting increasingly apathetic
given I only check the status every couple days now |
23:35.14 |
brlcad |
not writing enough code, even if it's only
getting 5 minutes of my day |
23:36.16 |
``Erik |
opposed to tv? :D |
23:36.31 |
brlcad |
yep, that already doesn't really get much/any
of my time |
23:37.05 |
brlcad |
especially since I moved, I've gotten weened
off of everything |
23:37.24 |
``Erik |
<-- pads ae in around his down cycles, fun
diversion :) |
23:37.26 |
brlcad |
even missing the new season of heroes (though
I *will* catch up on that at some point) |
23:37.47 |
``Erik |
bought a place yet? bob says you have another
townhouse in canton that caught your eye? |
23:37.50 |
brlcad |
heh, but you only consist of down
cycles?? |
23:38.01 |
brlcad |
yeah, it's a sweet place |
23:38.02 |
``Erik |
heh, on occasion |
23:38.20 |
``Erik |
when, say, I svn up, run make and it breaks,
yeah, that's a downtime day :D *duck* |
23:39.06 |
brlcad |
you sound like someone else now |
23:39.31 |
``Erik |
heh |
23:39.45 |
``Erik |
pizza time :D |
23:39.49 |
brlcad |
someone who shall go unnamed but doesn't even
read the error message before "giving up" on even simple typo
errors :P |
23:41.11 |
``Erik |
oh, I saw the message, followed the commit
message, looked at the diff, looked at the infracting
code |
23:41.37 |
``Erik |
and figured you must've just forgotten to
commit src/libged/make.c |
23:41.40 |
``Erik |
:) |
23:42.12 |
brlcad |
nope, never even made the edit |
23:42.15 |
brlcad |
but it was trivial :P |
23:42.28 |
brlcad |
i was just compiling per-dir at the
time |
23:43.09 |
``Erik |
I'm thinking you gutted a void* type 'magic'
thing to overload it with switching structs using a type
enumerator |
23:43.25 |
``Erik |
but the enumeration was set up like a bit
vector in octal for some strange reason |
23:43.27 |
``Erik |
O.o |
23:45.23 |
``Erik |
so *shrug* it was paperwork, answering make
questions, etc |
23:45.43 |
brlcad |
it's exactly as you read it |
23:47.15 |
brlcad |
even down to the strange reason (exclusive id,
just so you could look up the type via bitmask or
equivalence) |
23:47.19 |
``Erik |
the part that really had me step bck and go
"uh, wtf?" was using an enumeration with a value set on every name
instead of just letting it be a real enumeration or doing
#defines |
23:47.28 |
brlcad |
custom structs just being a way to pack them
in memory tight |
23:47.46 |
``Erik |
why not a union in the struct? |
23:48.02 |
brlcad |
thought about it |
23:49.02 |
``Erik |
unfortunately, I still have loads of non-code
things to deal with :/ so something weird like that, Igo do the
unfun stuff for a bit :) |
23:49.03 |
brlcad |
but the size of a union is the size of it's
largest member iirc |
23:49.13 |
brlcad |
which defeats the whole purpose |
23:49.23 |
brlcad |
otherwise I could just have done what the DSP
did |
23:50.17 |
brlcad |
(which was to just shove it all in a struct
and access members based on the type) |
23:50.58 |
``Erik |
yeah, union will always be the biggest
member |
23:51.06 |
brlcad |
which makes for one pig of a structure .. I
was debugging it a while ago and it looked like it's using 160
bytes per cell(!) .. maybe just a bug but damn |
23:52.23 |
brlcad |
points should now take up just exactly what
they need with the only cost being that you have to typecast the
container to the right struct |
23:52.51 |
brlcad |
would also make a really trivial extension to
add per-point weights/scales now too |
23:54.29 |
``Erik |
ponder this |
23:54.45 |
``Erik |
resuming a raytrace is gone, no more, an
ex-feature |
23:54.51 |
``Erik |
<-- beats it on the countertop |
23:54.55 |
brlcad |
the other thing I could have done would have
been separate lists for the point data, normal data, color data,
etc, just having null lists for the ones that don't have that data
.. that would have avoided the void* |
23:55.09 |
``Erik |
does the 0,0,1 'base' color still make sense?
or can we have pure colors? |
23:55.18 |
brlcad |
ahhhmmmmmmmmmm |
23:55.33 |
brlcad |
that wasn't just done for resuming |
23:55.45 |
``Erik |
<-- has half been thinking about adding an
.rpx format that'd journal how much was written |
23:56.20 |
``Erik |
so my 40000x40000 -H37 -J3 poster render could
be picked back up O.o :D |
23:56.59 |
``Erik |
what else is 'not really black' used for?
O.o |
23:57.13 |
brlcad |
i'd completely go for eliminating that magic
color if we had proper alphachannel support -- knowing which are
"background"/missed pixels is a feature used by quite a few
tools |
23:58.32 |
``Erik |
heh, png is looking better and better
:) |
23:58.59 |
brlcad |
hell, I'd go for full 64-bit images, hdr
internally ftw |
23:59.15 |
*** join/#brlcad archivist_emc
(n=archivis@host81-149-119-172.in-addr.btopenworld.com) |
23:59.15 |
``Erik |
png can do that :D |
23:59.42 |
brlcad |
it does? |
23:59.49 |
brlcad |
thought they only did 16bit |
23:59.55 |
brlcad |
exr does 32-bit |