IRC log for #brlcad on 20071119

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 :)

Generated by irclog2html.pl Modified by Tim Riker to work with infobot.