00:13.55 |
yukonbob |
brlcad vs. The Bug |
00:13.57 |
yukonbob |
ttp://coolkits.net/G%20vs%20Mothra.jpg |
00:14.02 |
yukonbob |
*http |
00:44.24 |
CIA-27 |
BRL-CAD: 03brlcad * 10brlcad/src/librt/
(dg_obj.c wdb_obj.c): remove dead code. there's closedb instead of
overriding default close command, tol is a wdb_obj
command. |
03:36.58 |
*** join/#brlcad IriX64
(n=mariodot@bas2-sudbury98-1177726729.dsl.bell.ca) |
04:01.44 |
*** join/#brlcad IriX64
(n=mariodot@bas2-sudbury98-1177726729.dsl.bell.ca) |
06:12.13 |
*** join/#brlcad louipc
(n=louipc@bas8-toronto63-1096734938.dsl.bell.ca) |
06:53.42 |
*** join/#brlcad CIA-MIA
(n=relay@bz.bzflag.bz) |
07:05.27 |
*** join/#brlcad CIA-28
(n=CIA@208.69.182.149) |
07:11.15 |
*** join/#brlcad elite01
(n=elite01@195.37.106.60) |
07:31.11 |
CIA-28 |
BRL-CAD: 03brlcad *
10brlcad/src/librt/nmg_rt_isect.c: yet another place to report an
unknown class instead of bombing out. |
07:32.16 |
CIA-28 |
BRL-CAD: 03brlcad *
10brlcad/src/librt/nmg_class.c: if we exhaust the retry count, just
give up instead of bombing out. otherwise this can cause havoc for
even simple optional operations like trying to fix
normals. |
07:37.40 |
CIA-28 |
BRL-CAD: 03brlcad *
10brlcad/src/librt/nmg_misc.c: |
07:37.40 |
CIA-28 |
BRL-CAD: if we encounter an invalid shell with
bad results, stop processing entirely. |
07:37.40 |
CIA-28 |
BRL-CAD: this avoids an avalanche of cascaded
failures and potential bomb situations |
07:37.40 |
CIA-28 |
BRL-CAD: where we can usually proceed. this
particular problem was encountered during |
07:37.40 |
CIA-28 |
BRL-CAD: g-iges that had a shell that could
not be classified (resulted in infinite loop |
07:37.43 |
CIA-28 |
BRL-CAD: and array indices that went out of
bounds, eventually crashing). |
07:50.33 |
*** join/#brlcad Defcon
(n=def@74.17-246-81.adsl-static.isp.belgacom.be) |
07:53.01 |
CIA-28 |
BRL-CAD: 03brlcad * 10brlcad/NEWS: (log
message trimmed) |
07:53.01 |
CIA-28 |
BRL-CAD: fixed variety of g-iges and other
exporter crashes and graceful handling of mesh |
07:53.01 |
CIA-28 |
BRL-CAD: normal failures. started with a
particular model that was failing in the bot's |
07:53.01 |
CIA-28 |
BRL-CAD: tess() routine during the expensive
nmg_fix_normals() processing. turned out |
07:53.01 |
CIA-28 |
BRL-CAD: that the model was going amuck while
trying to determine shell orientation |
07:53.04 |
CIA-28 |
BRL-CAD: eventually overflowing a char in an
inf loop until it crashed. the specific |
07:53.06 |
CIA-28 |
BRL-CAD: cause of the inf loop wasn't
determined, but it does now detect the shell |
08:22.53 |
*** join/#brlcad Z80-Boy
(n=clock@zux221-122-143.adsl.green.ch) |
08:51.29 |
*** join/#brlcad elite01
(n=elite01@195.37.106.60) |
09:12.01 |
*** join/#brlcad elite01
(n=elite01@195.37.106.60) |
09:45.22 |
*** join/#brlcad lachyg
(n=lachlan@ppp121-45-2-37.lns10.adl2.internode.on.net) |
09:46.04 |
lachyg |
Hi. Is there a way in which I can rotate a
combination? Or am I going about things in the wrong way? |
09:46.43 |
lachyg |
I've created a combination led.c = u
led.plastic.r u led.metal.r, and want to rotate it around. Is
there a way to do this? |
09:47.13 |
Z80-Boy |
lachyg: I do it by putting the combination
into another combination, then opening the another combination in
vi using red, loading a unit matrix from /home/clock/m and then
editing the matrix to get the desired rotation. I need only
rotation in multiples of 90 degrees. |
09:47.39 |
Z80-Boy |
the unit matrix is 1 0 0 0 0 1 0 0 0 0 1 0
0 0 0 1 |
09:47.55 |
lachyg |
So there's nothing simple like rot led.c 0 0
90? |
09:48.42 |
Z80-Boy |
maybe is but for me figuring out which command
it is what parameters it has and what meaning these parameters have
and what exactly it does is about 2 days, whereas the
aforementioned sequence is about 1 minute. |
09:49.18 |
Z80-Boy |
Cause the documentation is missing a lot of
important information and I always forget it when I figure it out,
because I use BRL-CAD not continuously, but
intermittently. |
09:49.33 |
lachyg |
Ok. I'll probably have to write a script for
it then, as I have not the patience to do it 12 times ;) |
09:49.38 |
lachyg |
Ah, I see. |
09:49.42 |
lachyg |
Thanks for your help. |
09:49.51 |
Z80-Boy |
you might benefit in finding out the
command |
09:50.07 |
Z80-Boy |
Don't worry, you don't find it in the official
doc. You either have to ask brlcad or reverse engineer the huge
codebase. |
09:50.12 |
Z80-Boy |
Or maybe experiment out |
09:50.25 |
lachyg |
heh |
09:50.43 |
Z80-Boy |
Like I never know if the angles are counter or
clockwise, which axis is the first rotation around, if it rotates
in the source or destination space etc. |
09:50.51 |
Z80-Boy |
With the matrix it's simple |
09:51.28 |
Z80-Boy |
You start with your sub-model then apply the
matrix and then you get what's one level higher in the
hierarchy. |
09:51.44 |
Z80-Boy |
The first 4 numbers are what goes into X upper
in the hieararchy |
09:52.18 |
Z80-Boy |
the first, fifth, ninth numbers are concerning
X in the original submodel. |
09:52.34 |
Z80-Boy |
Was also hell figuring if it's like this or
lower/upper is swapped |
09:53.31 |
lachyg |
Hmm, I probably should read my linear algebra
book again. |
09:53.32 |
Z80-Boy |
and in the cross, where is the letter X that's
pointing into the positive direction |
09:53.40 |
Z80-Boy |
no you don't need linear algebra |
09:53.46 |
Z80-Boy |
It's just like drink mixing |
09:54.09 |
Z80-Boy |
you have 3 bottles x y z and 3 glasses X Y
Z |
09:54.20 |
Z80-Boy |
the matrix tells you how much x, y, z should
go into X |
09:54.25 |
Z80-Boy |
how much x, y, z should go into Y |
09:54.32 |
Z80-Boy |
how much x, y, z should go into Z |
09:54.49 |
*** join/#brlcad elite01
(n=elite01@195.37.106.60) |
09:55.34 |
lachyg |
Yeah---I just need to figure out the theory
behind it again. Thanks for your help. |
09:55.45 |
lachyg |
Ah, looks like matrices are the only way to
go. |
09:56.50 |
Z80-Boy |
lachyg: no it was actually assumed that people
will use those commands to make it simpler so they don't have to
crunch matrices in their heads |
09:56.59 |
Z80-Boy |
But because of bad documentation, crunching
matrices is easier for me ;-) |
09:57.24 |
lachyg |
http://www.nabble.com/20-questions-t3863486.html |
09:57.26 |
lachyg |
#2 there |
09:59.28 |
Z80-Boy |
Oh lol this should be in the official doc and
not on google resul page number 1137 |
10:01.14 |
lachyg |
I suspect so. |
10:01.41 |
Z80-Boy |
Also if you create a complicated model like I
do then redrawing the display takes a minute |
10:01.53 |
Z80-Boy |
so one minute to shift, one minute to zoom,
one minute to change view etc... |
10:02.01 |
Z80-Boy |
really blazing workflow speed ;-) |
10:02.27 |
Z80-Boy |
ANd I have 1500 MHz Pentium III! |
10:02.57 |
lachyg |
heh |
10:03.09 |
lachyg |
Could be worse. |
10:03.12 |
lachyg |
Could be paper. |
10:03.12 |
Z80-Boy |
I suspect because someone got an idea to
wedging a blotware called X Windows system between the CPU and the
AGP bus |
10:03.21 |
Z80-Boy |
X Window is fast in theory but slow in
practice ;-) |
10:03.39 |
Z80-Boy |
Moving a piece of paper 20cm right doesn't
take a minute, but a second. |
10:04.30 |
Z80-Boy |
You can draw a line in a microsecond, but if
you first have to email the coordinates to the X Window System
through a socket it gets horrible |
10:06.04 |
Z80-Boy |
I think I should report a bug |
10:06.08 |
Z80-Boy |
"mged dead slow" ;-) |
10:06.43 |
Z80-Boy |
and that's wireframe! |
10:07.56 |
Z80-Boy |
Cause it took me a whole bus trip to put model
piece A to model piece B so that they touch each other |
10:12.08 |
lachyg |
Ah, think I've figured it out. |
10:12.20 |
lachyg |
Made a new combination like you said, then
used arced |
10:15.59 |
Z80-Boy |
oh what does it do? |
10:16.34 |
lachyg |
Applies a matrix transformation to an element
of a combination. |
10:17.00 |
lachyg |
arced led.1.t/led.c matrix rmul rot 0 0
90 |
10:17.02 |
Z80-Boy |
omg why is it called arced? With such a name I
would expect to do something with arcs |
10:17.33 |
Z80-Boy |
lachyg: where did you find out you should type
"arced led.1.t/led.c matrix rmul rot 0 0 90"? |
10:18.07 |
lachyg |
In the documentation (Volume 2), appendix A,
page 158 |
10:19.48 |
Z80-Boy |
Interesting I'll look there. |
10:26.35 |
*** join/#brlcad Blue_D
(n=bluedolf@192.57-67-87.adsl-dyn.isp.belgacom.be) |
10:41.35 |
lachyg |
Ah, now I've got it. You have to remember
that your transformations are in the element's co-ordinate
space. |
11:43.17 |
*** join/#brlcad alex_jon1
(n=juve@81.196.65.201) |
12:10.52 |
*** join/#brlcad docelic
(n=docelic@77.237.110.248) |
12:26.53 |
*** join/#brlcad elite01
(n=elite01@dslb-088-070-014-132.pools.arcor-ip.net) |
12:33.13 |
*** join/#brlcad tarzeau
(i=gurkan@bee.ethz.ch) [NETSPLIT VICTIM] |
12:38.11 |
*** join/#brlcad brlcad
(n=sean@pdpc/supporter/silver/brlcad) [NETSPLIT
VICTIM] |
12:38.11 |
*** join/#brlcad Defcon
(n=def@74.17-246-81.adsl-static.isp.belgacom.be) [NETSPLIT
VICTIM] |
12:38.11 |
*** join/#brlcad PrezKennedy
(i=Matt@74.86.45.130) [NETSPLIT VICTIM] |
12:38.11 |
*** join/#brlcad ``Erik
(i=erik@c-68-54-174-162.hsd1.md.comcast.net) [NETSPLIT
VICTIM] |
12:38.11 |
*** mode/#brlcad [+o brlcad]
by irc.freenode.net |
12:41.42 |
*** join/#brlcad elite01
(n=elite01@dslb-088-070-014-132.pools.arcor-ip.net) [NETSPLIT
VICTIM] |
12:41.42 |
*** join/#brlcad Maloeran
(n=maloeran@glvortex.net) [NETSPLIT VICTIM] |
12:41.47 |
*** join/#brlcad lachyg
(n=lachlan@ppp121-45-2-37.lns10.adl2.internode.on.net) [NETSPLIT
VICTIM] |
12:41.47 |
*** join/#brlcad louipc
(n=louipc@bas8-toronto63-1096734938.dsl.bell.ca) [NETSPLIT
VICTIM] |
12:41.47 |
Defcon |
wb all :) |
12:42.29 |
Defcon |
[13:31:07] <@brlcad> lachyg: oed /
led.c/led.plastic.r/path/to/some/prim |
13:27.07 |
*** join/#brlcad Blue_D
(n=bluedolf@192.57-67-87.adsl-dyn.isp.belgacom.be) |
13:50.08 |
Defcon |
<Z80-Boy> It's just like drink
mixing |
13:50.15 |
Defcon |
.. |
13:50.18 |
Defcon |
how... :) |
14:06.48 |
Z80-Boy |
Defcon: how what? |
14:08.12 |
Defcon |
i didn't get your logic |
14:08.18 |
Defcon |
but i guess i do now |
14:11.50 |
*** join/#brlcad Elperion
(n=Bary@p5487721C.dip.t-dialin.net) |
14:14.20 |
brlcad |
lachyg: was starting to say that the 'oed'
command is another way to do what you were asking, you go into
"object edit mode" on an object specifying where you want to apply
a matrix and what primitive to use a coordinate system
reference |
14:14.56 |
brlcad |
then you can use the 'orot' or 'objrot'
commands to do a rotate |
14:15.14 |
brlcad |
those and other commands are listed on the
mged cheat sheet reference |
14:16.44 |
Defcon |
hmmm.. ok |
14:16.46 |
Defcon |
:) |
14:26.55 |
brlcad |
in mged lingo, an "arc" is the same as an
object "path", not a 2D/3D geometric arc but a logical arc through
the geometry hierarchy |
14:27.26 |
brlcad |
arced could have just as readily been named
pathed, but the 'arc' convention goes back to early 80's |
14:29.14 |
brlcad |
so when you're specifying an 'oed' object
edit, think of all paths to primitives in your model,
/comb/path/to/region/to/primitive .. you can apply a matrix after
any one of those '/'s so you separate that to a left and right-hand
side |
14:30.25 |
brlcad |
so if I wanted to apply a matrix over the
instance of region used in that 'path' object, I would have
specified oed /comb path/to/region/to/primitive |
14:32.58 |
Defcon |
impressive |
14:33.11 |
Defcon |
a matrix = an array(in vb)? |
14:35.35 |
brlcad |
hm? |
14:35.46 |
brlcad |
a matrix can be stored as an array in most
languages |
14:36.05 |
brlcad |
it's just a list of 4 or 9 or 12 or 16 numbers
usually :) |
14:36.20 |
Defcon |
ah |
14:36.21 |
brlcad |
usually 16 for 3D homogeneous
coordinates |
14:36.31 |
Defcon |
lol |
14:36.34 |
brlcad |
4x4 matrix |
14:36.41 |
Defcon |
still way to advanced for me |
14:36.42 |
Defcon |
:) |
14:40.34 |
Z80-Boy |
I never know which *ed command can be used in
which mode |
14:40.41 |
Z80-Boy |
So I never use them that's the safest
;-) |
14:42.01 |
Defcon |
:) |
14:42.03 |
Defcon |
true |
14:42.08 |
Z80-Boy |
Matrix is just a way how to mix outputs from
inputs |
15:12.04 |
``Erik |
I thought it was where neo used to
live |
15:12.47 |
Defcon |
:D |
15:30.02 |
CIA-28 |
BRL-CAD: 03erikgreenwald * 10brlcad/NEWS: note
fix to xpush |
15:37.03 |
Z80-Boy |
brlcad: do you use CRT or LCD? |
15:38.29 |
Defcon |
whow first line in this channel i fully
understand :) |
15:41.05 |
``Erik |
people still use crt's? O.O |
15:50.10 |
Z80-Boy |
``Erik: I just had to replace a LCD with CRT -
if I ran compilation there were horizontal stripes randomly jumping
on the screen |
15:50.18 |
Z80-Boy |
I tried a different LCD and the same
problem |
15:50.41 |
Z80-Boy |
Then I tried CRT and it's OK. Plus I have more
uniform white, better black and brighter colours. |
15:53.33 |
PrezKennedy |
and 3x less desk space! |
15:55.22 |
Z80-Boy |
The video is unbeliavebly smooth on
CRT!P |
15:55.55 |
Z80-Boy |
PrezKennedy: I rather sacrifice some desk
space than having to watch stripes |
15:57.03 |
PrezKennedy |
only when you compile right? |
16:01.01 |
``Erik |
crt's are analog only, lcd's can take
digital... if you were using a full digital path, mebbe your
videocards digital part is messed up, or mebbe the analog just
'blurs' over the lines and ya don't see the bad signal.... crt
running close to full resolution will usually be 60fps, where an
lcd will be around 40fps, but the lcd won't have any kind of
'tearing' since the pixel stays 'lit' the same until next update,
where a crt has a decay e |
16:02.09 |
``Erik |
oops, too much geek, skeered him off |
16:03.06 |
``Erik |
if it was just during compilation, may've been
crosstalk effecting things... I know one of my old computers had
problems with that, heavy load and I'd start hearing it on the
speakers, and for some reason the mouse set it off, too
O.o |
16:03.48 |
PrezKennedy |
i hear that once in awhile with a computer
thats quite new... |
16:04.18 |
Z80-Boy |
Well it was analog |
16:04.30 |
*** join/#brlcad prasad_
(n=psilva@static-70-108-244-218.res.east.verizon.net) |
16:04.30 |
Z80-Boy |
and it was because the card apparently gets a
clock jitter. |
16:04.34 |
``Erik |
heh |
16:04.41 |
Z80-Boy |
But clock jitter should display as shifting of
a line. |
16:04.57 |
Z80-Boy |
Shifting an object doesn't change it's
brightness. But in this case the brightness flickered
tremendously. |
16:05.06 |
``Erik |
didja try moving the video cable around while
compiling to see if it altered the behavior? |
16:05.08 |
Z80-Boy |
That means the LCD is showing something else
than is in the signal, period. |
16:05.24 |
prasad_ |
gameboy? |
16:05.26 |
Z80-Boy |
No but I tried moving the LCD around, away
from my desk. |
16:05.30 |
Z80-Boy |
That helped. |
16:05.44 |
PrezKennedy |
do you compile often? |
16:05.56 |
Z80-Boy |
That's completely irrelevant. |
16:05.57 |
``Erik |
if two seperate lcd's showed the same thing,
then the lcd is properly showing the signal, the signal is
improper... crt's tend to be a lot more robust to 'funny data' in
analog mode O.o |
16:06.06 |
prasad_ |
gameboy has a z80 :o |
16:06.22 |
Z80-Boy |
No the LCD is showing something else |
16:06.29 |
Z80-Boy |
The problem is the sampling is done
improperly. |
16:06.45 |
Z80-Boy |
They leave out the sampling filter to satisfy
the Nyquist criterion |
16:06.58 |
Z80-Boy |
CRT doesn't do any sampling. |
16:07.10 |
Z80-Boy |
So you either 1) do no sampling, or 2) do
sampling properly |
16:07.17 |
``Erik |
crt isn't digital, it's a "natural" sampling
mechanism |
16:07.39 |
Z80-Boy |
I don't care how they implement it inside the
monitor, it just has to show what's on the line |
16:07.56 |
``Erik |
... a crt DOESN'T show exactly what's ont he
line, that's my point, dude |
16:08.02 |
Z80-Boy |
For me it's a blackbox. Shows the right
picture? stays on the desk. Doesn't? Flies away. |
16:08.25 |
``Erik |
smells to me like you're fixing the symptom,
not the problem *shrug* |
16:08.26 |
Z80-Boy |
It doesn't but it's better than with
LCD |
16:08.37 |
Z80-Boy |
And also I tried playing a music video... much
smoother movements! |
16:08.45 |
``Erik |
'sup, prasad? |
16:08.50 |
Z80-Boy |
Like fast dance and rapid camera
movements... |
16:08.53 |
Z80-Boy |
It was like in real! |
16:09.08 |
Z80-Boy |
With LCD I am feeling like losing track of the
movement. |
16:09.24 |
Z80-Boy |
Sorry, but if I am more happy with CRT then
it's better for me. |
16:09.29 |
PrezKennedy |
you need a faster LCD screen! |
16:10.15 |
Z80-Boy |
I suspect LCD's have an internal refresh rate
that runs asynchronously with the VGA refresh rate and causes
temporal aliasing |
16:10.40 |
Z80-Boy |
And the black on LCD is horrible and on white
I see Haidinger's brushes all around |
16:10.41 |
prasad_ |
even with vsync on? |
16:11.05 |
Z80-Boy |
The vsync was on all the time |
16:11.13 |
Z80-Boy |
Without vsync the picture loses vertical
sync |
16:15.13 |
*** join/#brlcad ucrit
(n=lucky@202.152.172.3) |
16:15.43 |
``Erik |
hum, older/cheaper lcd's have a 25ms response
rate, which is sorta kinda the same as a refresh rate of 40hz,
opposed to a 'normal' crt (at max res) of around 60hz... the lcd's
I'm sitting at have 14ms response, which maths out to 71hz O.o
prezkennedy may have a point there :D |
17:33.33 |
*** join/#brlcad ucrit
(n=lucky@202.152.172.3) |
17:42.51 |
*** join/#brlcad Elperion
(n=Bary@p5487721C.dip.t-dialin.net) |
18:13.25 |
*** join/#brlcad yukonbob
(n=yukonbob@198.235.198.234) |
18:17.08 |
*** join/#brlcad docelic
(n=docelic@212.15.179.226) |
18:48.34 |
``Erik |
howdy ho |
19:10.20 |
``Erik |
heheh e http://www.collegehumor.com/video:1788161 |
19:21.00 |
*** join/#brlcad prasad_
(n=psilva@static-70-108-244-218.res.east.verizon.net) |
19:27.15 |
*** join/#brlcad Z80-Boy
(i=clock@77-56-86-16.dclient.hispeed.ch) |
19:53.17 |
brlcad |
Z80-Boy: both at home, but lcd
predominantly |
19:58.28 |
Z80-Boy |
brlcad: is there a way to get rid of the
warning when I put a region into another region? |
19:58.40 |
Z80-Boy |
I thought the "inherit" flag would logically
turn it off but it doesn't |
20:19.42 |
CIA-28 |
BRL-CAD: 03brlcad *
10brlcad/misc/win32-msvc8/Makefile.am: typo, brrrrcad |
20:26.44 |
*** join/#brlcad yukonbob
(n=yukonbob@198.235.198.234) |
20:27.58 |
Z80-Boy |
``Erik: do you know how to get rid of the
warning when I put a region into another region? |
20:36.27 |
``Erik |
um, no? :) |
20:39.27 |
Z80-Boy |
It's very handy because I have a complex thing
where each part is coloured a different way and now I want to make
a variant which is all grey |
20:39.27 |
*** join/#brlcad nedko
(n=nedko@89.253.148.98) |
20:39.37 |
Z80-Boy |
So I just put it into a region and override it
all |
20:39.48 |
``Erik |
it's just a warning, though, right? it still
works? |
20:40.10 |
Z80-Boy |
I don't want all the matrices to be duplicated
because that's a bad practice |
20:40.15 |
Z80-Boy |
Yes it works but warns |
20:40.40 |
Z80-Boy |
Warning: you are using an efficient
method. |
20:40.50 |
``Erik |
heh |
20:41.25 |
``Erik |
um, one of the bigger reasons BRL-CAD gets
funded is to support another piece of software that pukes all over
itself when any primitive is seen twice in the tree... |
20:42.18 |
``Erik |
we say it's their problem, they say it's ours,
the warning keeps the poor users from stepping on landmines in a
battle between developer groups |
20:43.02 |
``Erik |
(if I'm guessing correctly... brlcad might be
able to confirm or correct me on that) |
20:44.31 |
Z80-Boy |
What ?!? |
20:45.09 |
Z80-Boy |
If I have a grille with 100x100 holes, I have
to crate 10,000 primitives to satisfy this idea of nonrepeating
primitives? |
20:45.24 |
``Erik |
ayup |
20:45.32 |
``Erik |
why do ya think I've been working on 'clone'
lately? |
20:45.41 |
``Erik |
(I think it's idiotic, too...) |
20:46.42 |
Z80-Boy |
And if I realize the filtering action of the
grille needs to be adjusted and change the holes from 4mm to 5mm, I
have to edit ebery single primitive? |
20:46.48 |
Z80-Boy |
OMG WTF |
20:47.06 |
``Erik |
um, everything in the database can be
expressed without confusion using the path, right? well, these guys
only look at the last entry on the path list and map it to their
own names... so they require a 1-1 mapping of geometric primitives
to a physically unique 'thing' |
20:47.35 |
``Erik |
which is why ya see request tickets to warn or
remove "instancing" in the sf bugs and feature
requests... |
20:48.13 |
``Erik |
and it's been that way for 20 years now
:( |
20:50.57 |
Z80-Boy |
I don't know if "everything in the database
can be expressed without confusion using the path,
right? |
20:51.01 |
Z80-Boy |
" |
20:51.55 |
Z80-Boy |
if you have 2 M5x20 hex head bolts, do you
have two physically unique things or two instances of one physical
thing? |
20:51.58 |
``Erik |
/part1/hole1/generichole
/part1/hole2/generichole ... ? |
20:52.25 |
Z80-Boy |
yes that's how I do it |
20:52.40 |
``Erik |
that would be instancing... 'generichole' only
exists once, but you know where it goes due to the full path being
a unique identifier... |
20:53.14 |
``Erik |
opposed to just taking the last part, how do
you distinguish between "generichole" and "generichole", even
though you know they are in different physical locations? |
20:53.57 |
``Erik |
we say "use the full path", they say "don't
allow instancing" |
20:53.58 |
``Erik |
:) |
20:54.24 |
Z80-Boy |
It's TIA/EIA - Training In Absurdity, Exercise
In Absurdity |
20:54.51 |
dtidrow_work |
good grief |
20:54.51 |
``Erik |
and I THINK that might be the reason for that
specific warning being in there, because now you have
/part1/hole1/generichole vs /greyview/part1/hole1/generichole... or
'generichole' vs 'generichole' for this certain consumer |
20:55.07 |
``Erik |
I *THINK* |
20:55.23 |
dtidrow_work |
somebody needs to go over there and start
swinging the cluebat around |
20:55.36 |
``Erik |
again, if brlcad were to drag his arse in and
either correct me or add something... :D |
20:56.26 |
dtidrow_work |
still |
20:56.32 |
Z80-Boy |
now the machines are fast but BRL-CAD is still
slow |
20:56.35 |
dtidrow_work |
unnecessary bloat |
20:56.44 |
Z80-Boy |
my most complex model takes 1 minute to redraw
in mged |
20:56.58 |
Z80-Boy |
open menu, close menu, wait a minute until the
black rectangle left by the menu redraws... |
20:57.04 |
Z80-Boy |
change the zoom, wait a minute. |
20:57.08 |
Z80-Boy |
Shift the zoom, wait a minute. |
20:57.15 |
``Erik |
hey, man, I don't like the practice eather,
I'm just trying to guess at the reason for that warning being in
there :) |
20:57.41 |
``Erik |
heh, we have people routinely blowing the 2g
limit on 32b builds here |
20:57.57 |
dtidrow_work |
how many parts are in that model,
Z80-Boy? |
20:58.24 |
Z80-Boy |
I don't know how do I figure out? |
20:58.32 |
``Erik |
don: fear his p233 ;) |
20:58.39 |
Z80-Boy |
I have p1500 |
20:58.49 |
dtidrow_work |
``Erik: lol |
20:59.51 |
``Erik |
being a command line dork, I'd sdo something
like "mged -c file.g ls -l | grep -v 'comb\|region' | wc
-l |
21:00.44 |
``Erik |
errr, "mged -c /usr/brlcad/share/db/moss.g ls
-l 2>&1 | grep -v 'comb\|region' | wc -l" |
21:00.47 |
``Erik |
(on fbsd, using bash) |
21:03.06 |
Z80-Boy |
0 |
21:03.11 |
Z80-Boy |
should I count >&2 instead? |
21:04.08 |
Z80-Boy |
444 |
21:06.17 |
dtidrow_work |
brlcad: morning ;-) |
21:06.37 |
``Erik |
I d'no, I'm not a csh user... bash, ksh, zsh,
I'm there... but not csh |
21:07.40 |
brlcad |
inherit is only for visual property
inheritance (i.e. shader properties) |
21:07.54 |
brlcad |
howdy dtidrow_work |
21:08.23 |
brlcad |
not quite the reason -- there is a code that
craps on itself if there's particular combinations of regions in
regions, but in this case that's not even the issue |
21:08.59 |
brlcad |
Z80-Boy: from what I'm hearing, it sounds like
a misunderstanding of what it means to have that region bit
set/unset |
21:09.21 |
brlcad |
it has nothing to do with the color
properties, it has to do with space occupancy |
21:10.53 |
Z80-Boy |
brlcad: so how do I do that
properly? |
21:10.53 |
brlcad |
you've basically said "this thing is wood, and
now this _same_ thing used in a higher-level context is now not
wood" |
21:10.56 |
brlcad |
so it (very correctly) warns you that you've
just changed the material *type* (which again has nothing to do
with color or shader properties, has to do with physical
occupancy) |
21:11.36 |
brlcad |
Z80-Boy: the easy thing is unset the region
bit on the higher level combination |
21:11.46 |
brlcad |
there should only be one region on any path
down the hierarchy |
21:12.24 |
brlcad |
think of it as the "region" simply being when
it goes from shape (blueprint/pattern) to solid (occupies space,
has mass) |
21:12.50 |
brlcad |
you're just wanting a color override, that has
nothing to do with regions |
21:13.06 |
brlcad |
you can color override any combination
node |
21:14.33 |
brlcad |
dtidrow_work: there is a cluebat needed on
that other code's behavior, but entirely unrelated to this issue
;) |
21:14.47 |
``Erik |
<-- toldja he was guessing :D |
21:14.53 |
brlcad |
they do have an instancing name conflict
problem, but they deal with it in their own "special" way |
21:15.17 |
``Erik |
and I have a tendancy to go heavy on the code
side, not so much the geometry/modeling side *shrug* O:-) |
21:15.28 |
dtidrow_work |
heh |
21:17.22 |
Z80-Boy |
brlcad: yes but if I unset the bit, the things
starts being colourful again. |
21:17.58 |
Z80-Boy |
It's this one: http://ronja.twibright.com/3d/tetrax_0.png |
21:17.59 |
brlcad |
what do you mean? |
21:18.09 |
Z80-Boy |
Normally the thing is one welded piece and all
grey from zinc plating |
21:18.35 |
Z80-Boy |
But I had to paint each piece individually to
be able to refer to it in the assembly manual. |
21:19.12 |
Z80-Boy |
So each colour is an individual region and the
resulting thing is a complicated combination of these regions,
because they must not overlap so where they join one has to "give
way" |
21:19.18 |
``Erik |
what about making every piece a combination...
then having two things that refer to it, a color manual copy with
many regions, and a seperate display copy with all zinc |
21:19.24 |
Z80-Boy |
Now I want to paint the whole thing gray. Now
making it over whole again. |
21:19.33 |
*** join/#brlcad Elperion
(n=Bary@p5487721C.dip.t-dialin.net) |
21:19.50 |
``Erik |
then the colorful regions all get grouped in
their own assembly or something to give an easy handle...
:) |
21:20.31 |
Z80-Boy |
``Erik: Once I group them I cannot paint them
individually later |
21:20.40 |
Z80-Boy |
So they have to be first painted then
grouped |
21:20.52 |
``Erik |
yes |
21:21.09 |
Z80-Boy |
I could just merge all the *.r things into one
huge and remove the "give ways" and retain the matrices |
21:21.15 |
``Erik |
/display/comb1/parts...
/manual/region1/comb1/parts... |
21:21.31 |
Z80-Boy |
But that's bad practice. It can lead to shape
inconsistency between the two copies |
21:21.35 |
``Erik |
no |
21:21.39 |
``Erik |
because comb1 is comb1 |
21:21.57 |
``Erik |
two seperate regions point to the same
combination underneath (yes, instancing, pheer) |
21:22.10 |
*** join/#brlcad dtidrow
(n=dtidrow@host131.objectsciences.com) |
21:22.16 |
Z80-Boy |
I don't want that |
21:22.22 |
Z80-Boy |
I just want to overpaint a region
grey |
21:22.33 |
Z80-Boy |
Sorry, a combo of regions |
21:22.51 |
``Erik |
then suck it up and take the warning
:) |
21:23.32 |
Z80-Boy |
what do you mean with "display" and
"manual" |
21:23.55 |
``Erik |
'display' would be a region containing all
your 'part' combinations. |
21:24.15 |
``Erik |
'manual' would be a combination, containing a
set of regions (one for each part), and each region contains one
'part' combination |
21:24.37 |
Z80-Boy |
yes |
21:24.50 |
``Erik |
so if you change a bolt size, BOTH regions see
it, and you don't violate the 'one region per path'
restriction |
21:25.53 |
Z80-Boy |
Now for example the "blue" region constains
some elements with matrices |
21:26.17 |
Z80-Boy |
so I have to copy the region into a combo,
unset the region flags and insert the combo into a region
right? |
21:26.39 |
Z80-Boy |
I can not only change sizes of things but also
their mutual positions. |
21:28.18 |
Z80-Boy |
What all do I have to do to properly
deregionize? |
21:31.27 |
``Erik |
um, I'd try to create a new region with the
material and only one 'child', the old region... then figure out
how to turn off the region bit on the old region, so it's just a
plain combination |
21:31.51 |
``Erik |
<-- doesn't know jack about USING the
software, just a tiny bit about what's under the hood |
21:32.12 |
``Erik |
I'm a mechanic, not a pilot |
21:32.44 |
Z80-Boy |
What happens if I only turn off the region bit
but don't remove LOS, material ID shader colour etc.? |
21:32.51 |
Z80-Boy |
does BRL-CAD get into an inconsistent state or
not? |
21:32.58 |
``Erik |
(kinda more the machinist building the tools
and parts for the mechanics... but that's going awful far on an
analogy tangent) |
21:35.53 |
brlcad |
Z80-Boy: again, color has nothing to do with
it being a region or not |
21:36.11 |
brlcad |
you just happened to make regions via the
commands you used (presumably the r command) |
21:36.26 |
brlcad |
you can "unset" them as regions using the
combination editor on the edit menu |
21:36.35 |
brlcad |
yep |
21:36.50 |
brlcad |
being a region really is just a 0/1 bit flip
on a combination |
21:37.05 |
brlcad |
and relating to physical space
_occupancy_ |
21:37.40 |
``Erik |
on disk... right? regions and combinations
have a few different 'in-memory' data bits, I think? |
21:38.00 |
brlcad |
so you have whatever grey hierarchy of
objects, you can create another hierarchy separate from that with
all of the colors set, or set the colors at two levels with an
override |
21:39.36 |
brlcad |
``Erik: not really for what he's doing, but
yes -- there are a few other relevant parameters like LOS
thickness, aircodes, the actual region ident code, etc |
21:39.59 |
brlcad |
basically things that affect spatial occupancy
or evaluation of that occupancy |
21:40.05 |
``Erik |
is it possible to demote a region to a
combination? |
21:40.13 |
``Erik |
without killing and rebuilding it? |
21:40.16 |
brlcad |
yep |
21:40.24 |
brlcad |
just open the combination editor and uncheck
the region box |
21:40.37 |
``Erik |
there ya go, karel :D |
21:40.56 |
Z80-Boy |
``Erik: just did it :) |
21:40.59 |
brlcad |
it really is just an on/off flag on
combinations from mge's perspective |
21:41.00 |
``Erik |
(is there a command backed way to do it? for a
geek who doesn't wanna keep grabbing the mouse? or someone doing it
in a script?) |
21:41.14 |
brlcad |
hrm, there is.. |
21:41.18 |
Z80-Boy |
I did it with red |
21:41.28 |
brlcad |
something like attr put region 0 |
21:41.29 |
Z80-Boy |
I just had to turn off the plastic and the
colour otherwise it complained warning |
21:41.40 |
brlcad |
forget the exact |
21:41.45 |
brlcad |
there's a half-dozen ways |
21:42.09 |
brlcad |
Z80-Boy: it complained probably because color
override wasn't set |
21:42.24 |
Z80-Boy |
brlcad: what is color override good
for? |
21:42.47 |
Z80-Boy |
can you have a combo with assigned color that
overrides color of underlying regions? |
21:42.48 |
brlcad |
says whether the top-level color overrides
lower-level colors |
21:43.35 |
*** join/#brlcad prasad_
(n=psilva@static-70-108-244-218.res.east.verizon.net) |
21:44.46 |
Z80-Boy |
Hmm when you do B before the previous B
finishes, it often hangs or segfaults. |
21:44.57 |
Z80-Boy |
Advanced treatment of cricial sections, I
would guess. |
21:45.24 |
brlcad |
really? huh |
21:45.35 |
brlcad |
i've not seen that |
21:45.38 |
Z80-Boy |
``Erik: I could save al lthe work you
said |
21:45.57 |
Z80-Boy |
I just got it. All I need to do is put the
colourful thing into a combo tick up inherit set colour and
plastic |
21:46.01 |
Z80-Boy |
and it doesn't complain! |
21:46.05 |
CIA-28 |
ow |
21:46.09 |
Z80-Boy |
If it's gonna segfault is a different question
;-) |
21:46.26 |
Z80-Boy |
brlcad: is that a correct method? |
21:46.53 |
brlcad |
yep |
21:47.00 |
Z80-Boy |
Why didn't you tell? |
21:47.01 |
brlcad |
(thought that's what I said) :) |
21:47.23 |
brlcad |
said create a separate hierarchy, set colors
and inherit |
21:47.30 |
``Erik |
ok, yeah, that sounds a bit easier than doing
a per-combination hoist |
21:47.46 |
Z80-Boy |
what's a separate hierarchy and a
hoist? |
21:48.05 |
Z80-Boy |
now I understand what the inherit is
for |
21:48.12 |
brlcad |
great :) |
21:48.14 |
Z80-Boy |
it should be called "overpain" or something
like that |
21:48.17 |
Z80-Boy |
overpaint |
21:49.01 |
brlcad |
it says during mater command "Lower nodes
inherit this node's material settings" or something pretty
similar |
21:49.24 |
brlcad |
likewise the help option on the comb
editor |
21:49.27 |
Z80-Boy |
does it also inherit the material
weight? |
21:49.41 |
Z80-Boy |
density I mean |
21:50.04 |
*** join/#brlcad SWPadnos_
(n=Me@216.114.141.246) |
21:51.21 |
brlcad |
good question.. I don't believe so |
21:51.32 |
Z80-Boy |
so it's just a cosmetic thing |
21:51.36 |
Z80-Boy |
and refraction index? |
21:51.45 |
brlcad |
yeah, afairemember, it's the shader |
21:51.48 |
brlcad |
and color |
21:52.31 |
brlcad |
refraction index is a shader parameter for
phong, so yeah |
21:53.30 |
Z80-Boy |
OK thanks now it's all easy |
21:53.37 |
brlcad |
lets you quickly do things like create a new
top-level combination called "glasstank" and turn a whole tank into
glass (if you wanted such an effect), and likewise up and down a
hierarchy |
21:53.51 |
Z80-Boy |
exactly! That's almost what I want! |
21:54.51 |
prasad_ |
mmm glass |
21:54.56 |
*** join/#brlcad SWPadnos_
(n=Me@dsl245.esjtvtli.sover.net) |
21:57.51 |
*** join/#brlcad CIA-MIA
(n=relay@bz.bzflag.bz) |
21:58.15 |
*** join/#brlcad SWPadnos__
(n=Me@dsl245.esjtvtli.sover.net) |
22:06.05 |
nedko |
brlcad: can you please add lash project
(http://cia.vc/stats/project/LASH)
to CIA-MIA,#lac |
22:06.54 |
CIA-28 |
BRL-CAD: 03brlcad * 10brlcad/src/tclscripts/
(geometree/Makefile.am swidgets/scripts/Makefile.am): missed a
couple dirs, include pkgIndex.tcl and tclIndex in the
dist |
22:07.08 |
CIA-28 |
BRL-CAD: 03brlcad *
10brlcad/src/tclscripts/archer/images/Themes/Windows/Makefile.am:
missed command.png, add to dist |
22:07.38 |
*** join/#brlcad SWPadnos___
(n=Me@dsl107.esjtvtli.sover.net) |
22:08.01 |
brlcad |
nedko: done |
22:08.14 |
nedko |
brlcad: thanks! |
22:09.11 |
brlcad |
np |
22:16.40 |
``Erik |
heh, nifty |
22:17.50 |
``Erik |
such a brlcad move...
http://icanhascheezburger.files.wordpress.com/2007/11/alreadylicked128392284542500000.jpg |
22:18.07 |
brlcad |
hehe |
22:30.51 |
CIA-28 |
libirc: 03JeffM2501 * r341
10/trunk/libirc/examples/stupidBot/src/stupidBot.cpp: ws |
22:31.29 |
CIA-28 |
libirc: 03JeffM2501 * r342
10/trunk/libirc/botlib/ (inc/botlib.h src/botlib.cpp): methods to
let the bot respond to methods privately instead of public if it's
a channel message. |
22:37.45 |
*** part/#brlcad nedko
(n=nedko@89.253.148.98) |
22:47.45 |
CIA-28 |
libirc: 03JeffM2501 * r343
10/trunk/libirc/botlib/ (inc/botlib.h src/botlib.cpp): |
22:47.45 |
CIA-28 |
libirc: make stuff that is supposed to be
private to the bot class, be well private. |
22:47.45 |
CIA-28 |
libirc: move the isForMe method to protected,
and make it virtual in case anyone wants to override it's logic
with more complex logic. |
23:02.36 |
*** join/#brlcad docelic
(n=docelic@212.15.179.226) |
23:03.39 |
CIA-28 |
libirc: 03JeffM2501 * r344
10/trunk/libirc/botlib/ (inc/botlib.h src/botlib.cpp): data utils
for the config class |
23:04.03 |
*** join/#brlcad illethal
(n=oden@c-69-137-199-63.hsd1.fl.comcast.net) |
23:04.23 |
*** part/#brlcad illethal
(n=oden@c-69-137-199-63.hsd1.fl.comcast.net) |
23:16.04 |
yukonbob |
!ah right -- Heroes night tonight... |
23:17.29 |
brlcad |
:) |