IRC log for #brlcad on 20090216

01:40.34 ``Erik O.o
01:41.10 *** join/#brlcad Maloeran (n=maloeran@glvortex.net)
02:24.14 *** join/#brlcad inacio (n=inacio@c-71-60-83-9.hsd1.pa.comcast.net)
02:32.28 starseeker ``Erik: help
02:33.05 ``Erik heh, uh, O.o no, the appropriate way to fix a light socket is not with a paperclip?
02:33.39 starseeker where would autotools be getting lib/itcl3.4 instead of lib?
02:34.01 ``Erik erm, from a script?
02:34.12 starseeker ok, but which script?
02:34.34 ``Erik <-- not sure what you're talking about
02:34.38 starseeker apparently no one else is having this problem - me fears autotools is doing something odd
02:34.54 starseeker oh, my itcl/itk installation is acting oddly
02:35.04 starseeker I think it may be why I can't start archer
02:35.58 ``Erik <-- never really dicked with the itcl/itk stuff other than merging in some cvs stuff to make it work with tcl85
02:36.17 starseeker ah
02:36.54 starseeker hunts for some sort of "minimal" itk test file
02:38.17 ``Erik to the best of my knowledge, itcl/itk is a nasty hack to emulate basic oo type stuff for tcl/tk, is going to be deprecated by tcl86 or something, and I have no clue what it's used for or why in brlcad :D I haven't spotted any of its goofy syntax in any tcl script I've dug into, unless I'm mistaken about the goofiness of it
02:38.47 starseeker uh oh
02:39.03 starseeker I think Bob has been using it quite a bit, both in archer and possibly his libtclcad
02:39.21 ``Erik is generally unhappy when he has to venture into tcl land, likes the straight C path to rt*
02:39.29 starseeker agrees
02:39.48 ``Erik were it lithp or thcheme or thomething, I might feel differently
02:40.11 ``Erik but I was, uh, mortified by tcl when I messed with it a little around a decade ago for eggdrop stuff
02:40.13 starseeker ironically enough, this problem started when I tried to get a tcl/tk debugger working in bwish in order to debug archer
02:40.30 ``Erik I even TRIED to like it! it shared certain things I could claim were almost scheme like
02:40.57 ``Erik meh, shoulda just shoved a bunch of printf() and echo ""'s in
02:41.07 starseeker apparently
02:41.14 starseeker that just feels so... crude
02:41.20 starseeker to say nothing of time consuming
02:42.13 ``Erik often uses printf() debugging in C, even though he knows gdb reasonably well
02:45.28 starseeker in this case, I know what's failing - I'm just not sure WHY
02:46.18 ``Erik the nice thing about the printf style is you pick and choose all the data you want to examine and where, then just pull the trigger and get a nice log of what the program did to contemplate
02:46.39 ``Erik instead of setting break points and examining before continuing
02:47.03 ``Erik different tools for different problems *shrug* dismissing one 'just because' is limiting yourself :D
02:47.33 starseeker oh, sure - I've used printf sometimes too
02:48.01 starseeker but in the case of huge mass of code where I don't know what any of it is doing...
02:48.43 ``Erik mass, or mess?
02:48.50 ``Erik :D
02:49.24 starseeker isn't ready to call it a mess yet...
02:49.29 starseeker maybe later
02:49.41 ``Erik <-- never debugged tcl stuff where he didn't have a good idea of what was going on and where the problem was before
02:49.52 starseeker ah
02:50.20 ``Erik http://crit.brlcad.org:9090/ ucw sorta doing something almost semi interesting
02:50.59 ``Erik oddly, (push val history) didn't work, but (setf history (cons val history)) did
02:51.30 starseeker cool
02:51.38 starseeker is impressed
02:53.42 ``Erik oh, heh, I screwed something up
02:56.35 *** join/#brlcad IriX64 (n=IriX64@bas2-sudbury98-1128565748.dsl.bell.ca)
03:01.11 ``Erik sweet, idiocracy on tv
03:04.12 Dr_Phreakenstein so...
03:04.20 Dr_Phreakenstein isn't that what is usually on?
03:07.06 ``Erik no, usually it's idiotic, this is a movie mocking that :D
03:07.14 ``Erik starseeker: fixed that ucw page, check it out now O.o
03:07.53 starseeker heh - neat?
03:08.20 ``Erik it's weired wiring it up, I THINK that involves all teh hard pars
03:08.21 ``Erik parts
03:08.38 starseeker wonders if anyone else has successfully muddled through ucw
03:08.54 ``Erik um, there're like, 4, apparently
03:09.32 ``Erik http://bees-kneesfilms.com is one of the few ucw sites out there O.o
03:16.51 *** join/#brlcad inacio (n=inacio@c-71-60-83-9.hsd1.pa.comcast.net)
03:19.15 ``Erik wtf
04:12.32 *** join/#brlcad kanzure (i=bryan@66.112.232.233)
04:22.00 *** join/#brlcad Axman6 (n=Axman6@pdpc/supporter/student/Axman6)
06:34.08 *** join/#brlcad Ralith (n=ralith@216.162.199.202)
06:59.13 *** join/#brlcad IriX64 (n=IriX64@bas2-sudbury98-1128565748.dsl.bell.ca)
07:02.59 *** join/#brlcad mafm (n=mafm@223.Red-83-49-86.dynamicIP.rima-tde.net)
07:26.05 mafm hi
07:51.54 *** join/#brlcad mafm_ (n=mafm@223.Red-83-49-86.dynamicIP.rima-tde.net)
08:25.59 *** join/#brlcad mafm (n=mafm@223.Red-83-49-86.dynamicIP.rima-tde.net)
08:46.33 *** join/#brlcad _sushi_ (n=_sushi_@84-72-93-63.dclient.hispeed.ch)
09:18.49 CIA-40 BRL-CAD: 03d_rossberg * r33777 10/brlcad/trunk/src/libged/CMakeLists.txt: additional include directory because of new TCL version
09:37.14 *** join/#brlcad d_rossberg (n=rossberg@bz.bzflag.bz)
09:40.12 CIA-40 BRL-CAD: 03d_rossberg * r33778 10/rt^3/trunk/include/brlcad/common.h: new constructor for Vector3D
09:46.11 CIA-40 BRL-CAD: 03d_rossberg * r33779 10/rt^3/trunk/ (4 files in 2 dirs): some minor improvements
09:47.15 CIA-40 BRL-CAD: 03d_rossberg * r33780 10/rt^3/trunk/ (include/brlcad/Database.h src/coreInterface/Database.cpp): Add() to add an object to the database
10:41.38 *** join/#brlcad madant (n=madant@117.196.137.167)
11:58.07 CIA-40 BRL-CAD: 03d_rossberg * r33781 10/rt^3/trunk/ (3 files in 2 dirs): moved the Hit and HitCallback objects into ConstDatabase.h and deleted the now unnecessary header
12:30.43 *** join/#brlcad Ralith (n=ralith@216.162.199.202)
12:49.30 *** join/#brlcad BigAToo (n=BigAToo@pool-96-230-124-136.sbndin.btas.verizon.net)
12:54.08 *** join/#brlcad inacio (n=inacio@c-71-60-83-9.hsd1.pa.comcast.net)
12:58.34 *** join/#brlcad inacio (n=inacio@c-71-60-83-9.hsd1.pa.comcast.net)
13:25.10 *** join/#brlcad Satisfied (n=soros@d57-90-79.home.cgocable.net)
13:30.05 Satisfied i'm looking for a cad program for a number of small projects that involves gear trains and pulley systems.... is brlcad appropriate or should i look into one of the commercial packages like solidworks or inventor?
13:34.18 ``Erik are you looking for something to automatically tell you ratios and number of teeth and stuff, or model it? and are you looking for drafting output, or just visualization/analysis?
13:34.35 *** join/#brlcad elite01 (n=omg@unaffiliated/elite01)
13:37.02 Satisfied well, I'm not anxious to spend hours constructing gears manually. I think Inventor has builtin templates that for the standard involute curves and such
13:37.28 ``Erik hm, we have template and pattern tools, but no automagic gear build
13:37.41 _sushi_ Satisfied: I even had to write a complicated program to approximate threads from oblique cylindrical slices
13:37.57 _sushi_ The result is that BRL-CAD becomes overwhelmed with the number of component and the partitioning algorithm clogs
13:38.09 ``Erik overwhelmed, or just slow? :D
13:38.12 _sushi_ BRL-CAD doesn't have any thread primitive
13:38.25 _sushi_ ``Erik: well it renders horribly slow
13:38.41 _sushi_ Just because there are 20,000 non-overlapping slicesw
13:38.51 ``Erik ohyeah, your freaky cut case
13:38.53 ``Erik that was weird
13:38.56 _sushi_ and one cut through all that
13:39.03 _sushi_ with the cut it's 216 times slower as with
13:39.05 ``Erik john added the -k to make that go fast for you
13:39.19 _sushi_ We already talked about this with Sean and he said there is nothing that can be done against it
13:39.27 _sushi_ Well - BRL-CAD is still the choise #1 :)
13:39.40 _sushi_ ``Erik: what does the -k do?
13:39.44 ``Erik (there's something you WON'T see with inventor or solidworks or catia, satisfied, we listen to the "little guy" users ;)
13:39.52 ``Erik rt -k <cutting plane>
13:39.55 _sushi_ ``Erik: right I agree
13:40.18 _sushi_ ``Erik: maybe I could try to incorporate that into the scripts
13:41.05 _sushi_ ``Erik: right that's what I hate on commercial packages - they are like if you don't like it fuck you you already gave us your money
13:41.13 ``Erik but like a bicycle gear would be something like a squat cylinder to make the disc, subtract the hole, subtract one cutout for the link, then use clone or pattern to zip around the edge of the disc, and sub those tooth cylinders, bam, done
13:41.23 _sushi_ here you don't have to give away any money, get the source code plus a reasonable support
13:41.41 _sushi_ ``Erik: a bicycle cogwheel would be extremely simple I think
13:41.51 _sushi_ I am not sure how I would do the invloute for an ordinary gear though
13:42.04 ``Erik cut an arb8 for a sharp tooth
13:42.27 ``Erik union two cylinders and cut that comb for a pedal tooth
13:42.52 _sushi_ but teeth are not cylinders but some complicated math curve called involute aren't they?
13:43.11 ``Erik <-- dunno, archivist is the gearmaster here :D
13:43.29 _sushi_ But I think some primitives could be integrated into the program
13:43.32 ``Erik I stay in the low level guts myself
13:43.37 _sushi_ But you won't take my code since it's GPL only :)
13:43.53 ``Erik I thought we had some gpl pieces already
13:43.57 _sushi_ And Sean said something I would have to transfer the copyright
13:44.06 ``Erik ohhh, yeah
13:44.15 _sushi_ At least you could link my tool from your homepage
13:44.22 ``Erik make a wiki for it
13:44.23 ``Erik :D
13:44.25 _sushi_ I think in some jurisdictions this is not even possible
13:44.27 ``Erik wiki page
13:44.33 _sushi_ You write something you have the (c) and you can't give it up
13:44.45 _sushi_ You can licence sublicence but not transfer it's you who made it you have the copyright
13:45.10 ``Erik yeah, the US isn't like that, and gets really ugly when you start talking things like "work for hire" issues
13:45.41 _sushi_ Here is the thread tool http://ronja.twibright.com/3d/lib/thread.c
13:45.55 _sushi_ And here is the hex tool http://ronja.twibright.com/3d/lib/hex.c
13:46.09 _sushi_ Writing a doc for it would take too much time for me
13:47.21 _sushi_ There are some random thread tables picked from the Internet and embedded into the program
13:47.40 _sushi_ It's for metric only, I have no clue about withworth threads
13:47.53 ``Erik should probably slap the GPL header on those so'z people know it's gpl
13:48.02 _sushi_ All I know about them is a) they are used on water pipes, b) they are used on camera and c) they are next to impossible to get here
13:49.16 _sushi_ ``Erik: you want a full GPL header?
13:50.06 ``Erik I'm just sayin', GPL demands the gpl header on all files under the gpl, no?
13:51.14 _sushi_ where the fuck do I get this header?
13:51.19 _sushi_ I am googling and getting just junk!
13:51.35 ``Erik it's in the gpl license itself
13:52.40 _sushi_ is unable to find GPL quickjly
13:53.14 ``Erik http://ronja.twibright.com/3d/lib/thread.c
13:53.17 ``Erik damnit
13:53.24 ``Erik http://bz.bzflag.bz/~erik/gpl.h
13:53.33 ``Erik there ya go, fill in the blanks :)
13:53.40 _sushi_ thanks youre my savior
13:54.00 ``Erik hardly, heh :D
13:55.47 ``Erik Satisfied: BRL-CAD is free, download it and give it a try :) we even have tutorials at http://brlcad.org and a reasonably active channel here :)
13:55.52 _sushi_ warning: million pointer targets differ from billion others
13:56.12 _sushi_ And it also rulez
13:57.31 _sushi_ ``Erik: here with header: http://ronja.twibright.com/3d/lib/hex.c
13:58.51 ``Erik heh, *shrug* I don't care too much, was just pointing out one of those non-technical issues that seem to be important these days (unfortunately)
13:59.18 _sushi_ ``Erik: oh I thought it's an obstacle
14:00.23 ``Erik nah, just advice on protecting yourself :)
14:00.47 _sushi_ What does a GPL header protect me against?
14:01.13 ``Erik hm, src/mged/point/ src/other/libpng/ other/tcl/generic/tclDate.c and src/tab/script.c all seem to be GPL'd
14:02.00 ``Erik some theoretical protection of your 'intellectual property', and is a way of letting fellow developers know how they can use your code
14:02.09 ``Erik without a header, people might assume it's public domain
14:02.34 ``Erik src/other/libpng/contrib rather
14:02.39 _sushi_ ``Erik: that's maybe in the US, here if you don't have any info then you have to assume it's proprietary
14:03.41 ``Erik <-- ain't a lawyer, just read that lawyers say it's a good idea to mark your work with copyright info and if necessary, license info *shrug*
14:04.04 starseeker here's a spring subtracted from an rcc http://bzflag.bz/~starseeker/thread_test.png
14:04.59 _sushi_ looks like the thread in which ball bearings run
14:05.09 starseeker heh
14:05.13 starseeker just a quick test
14:05.30 starseeker tries an arb8 cut, just out of curiosity
14:05.51 ``Erik nerds
14:05.58 _sushi_ http://ronja.twibright.com/3d/hardware_4.png
14:06.04 _sushi_ How did you make the spring?
14:06.18 ``Erik http://static.arstechnica.com/2009/02/15/evercrack.jpg nice
14:07.51 starseeker pipe primitive
14:08.02 _sushi_ how do you make a helix with the pipe primitive?
14:11.19 starseeker it's documented in Volume III
14:11.43 starseeker I'm working on a procdb to automate it, but it's not done yet
14:12.21 starseeker http://bzflag.bz/~starseeker/thread_cut.png
14:12.39 starseeker doesn't seem to be incredibly slow, but I don't have 200+ threads either
14:15.14 starseeker _sushi_: Given time, I might be able to duplicate that setup using a pipe, but I don't know that there would be much performance benefit
14:15.42 _sushi_ And you would get non-metric thread shape
14:16.11 _sushi_ http://www.mech.uwa.edu.au/DANotes/threads/mechanics/recircBallBIG.jpeg
14:16.54 starseeker non-metric?
14:17.03 starseeker heh - that's cool
14:17.19 starseeker talk about a great candidate for a brlcad model
14:17.50 _sushi_ starseeker: normal threads don't look like what you've done
14:17.55 _sushi_ The thread has a different shape
14:18.00 starseeker sure
14:18.15 starseeker what I did was a quick test using a spring I happened to have around
14:18.43 starseeker I take it you were able to do metric thread?
14:23.49 _sushi_ It's not exactly metric because it has near sinusoidal shape
14:23.53 _sushi_ But it looks like metric :)
14:24.16 _sushi_ metric is V-shape with round ends
14:24.41 _sushi_ Actually only the convex end is round the concave one is V
14:26.04 starseeker it might be possible to do that with some insane combination of existing primitives, but it would be difficult and would almost have to be scripted
14:26.37 _sushi_ wouldn't it be possible to make a thread primitive?
14:26.53 _sushi_ Cause a thread is just a stack of slices where the slice rotates
14:27.11 _sushi_ Therefore a cylinder equation would suggest a rough place where the ray hits
14:27.19 starseeker that's what I'm thinking - pipe indicates it is possible, but meta-primitives like pipe are (geometrically) composed of more simple primitives
14:27.29 _sushi_ And then some local iteration would give the exact place of the hit
14:27.34 starseeker a sweep primitive would allow it
14:27.46 _sushi_ what's a sweep primitive?
14:28.11 starseeker basically a generalization of extrude
14:28.24 starseeker take a sketch, and sweep it through 3D space
14:28.25 _sushi_ if you can sweep along a spiral...
14:28.27 starseeker right
14:28.45 starseeker rotate would be another subset of sweep
14:29.11 _sushi_ but this is rotation and translation running at the same time
14:29.25 starseeker right - that's why it would take a general sweep primitive
14:29.28 starseeker which we don't have yet
14:29.52 _sushi_ you can either sweep a little circle along a spiral
14:30.12 _sushi_ Or you can sweep a large slightly eccentric circle along a straight line and rotate it in the process
14:30.15 starseeker with sweep, we would sketch the exact profile of the thread, and sweep in a spiral
14:30.24 _sushi_ Or you can sweep a square and get a funky 4-gang thread
14:30.52 starseeker _sushi_: there's a project - make a sweep primitive :-)
14:30.53 _sushi_ How would you make a conical thread
14:30.58 _sushi_ like you have on wood screws>
14:31.10 starseeker tries to visualize that
14:31.16 _sushi_ Would be nice if we could at least model everything they have in hardware store
14:31.26 _sushi_ without choking the system with a $ 0.1 item
14:31.51 starseeker _sushi_ thread modeling is not one of our normal use cases
14:31.51 _sushi_ we have this height field primitive right?
14:32.02 starseeker that's out of date, I believe
14:32.18 _sushi_ do we have some kind of bump map?
14:32.45 _sushi_ cause thread is a kind of periodical bump map mapped on a cylinder or cone :)
14:33.10 _sushi_ Where the parameter is some combination of the position and angle
14:33.15 starseeker _sushi_: If we were going to do it "right", it would be by creating the sweep primitive
14:33.45 _sushi_ but imagine the system throws a ray and if you have 100 turns it has to test each of them for intersection
14:33.59 starseeker it's an optimization problem
14:34.05 _sushi_ Whereas if you map on surface you calculate approx place of hit and then just reiterate to get the exact one
14:34.33 _sushi_ there's an interesting electrical component called conical coil
14:34.35 starseeker probably will need to go into the details with brlcad
14:34.39 _sushi_ Which is a coil wound on a cone :)
14:34.47 starseeker pipe can probably do that
14:34.53 louipc how does the pipe primitive work?
14:35.06 starseeker combinations of cylindars and tori, IIRC
14:35.15 louipc isn't it like a psudo primitive? ok
14:35.28 starseeker I consider it an example of a metaprimitive
14:35.36 louipc so you could expand it to maybe use other shapes other than rcc
14:35.51 louipc and you would get the correct shape for what type of thread you want
14:36.07 starseeker you might be able to use the logic behind pipe for such purposes, but it wouldn't be "plug and play"
14:36.19 louipc like 60degree, acme, square threads
14:36.24 starseeker that would be a new primitive
14:36.25 louipc yeah
14:36.30 starseeker sweep :-)
14:36.45 louipc hmm
14:37.29 starseeker one of the earlier projects created part of a revolve primitive, as a stepping stone to the general case
14:37.35 starseeker gsoc project
14:37.49 louipc yeah you would need sweep
14:38.15 starseeker it would be VERY powerful, given a proper sketch editor
14:38.28 louipc hehe
14:38.41 starseeker ours needs a little help, I'm afraid
14:38.55 starseeker it does make a bit more sense now that I understand the data structures
14:39.41 starseeker IIRC, sweep and revolve of sketches is actually a pretty common paradigm in other cad systems for shape creation
14:39.59 starseeker its very general
14:41.26 louipc yep, especially for cylindrical stuff
14:41.39 starseeker the advantage of CSG the way we do it is that it constrains the model into representing things with simple geometry.
14:41.40 louipc lathework
14:42.00 starseeker that has both benefits and limitations
14:42.19 starseeker as long as the simple geometric representation is a good approximation, it's better
14:42.27 louipc yeah
14:42.32 starseeker where "good" is defined by the application
14:42.36 louipc well you have to choose the right tool for the application
14:42.44 louipc jinx
14:42.47 starseeker obviously for precision surface creation, it's not ideal
14:43.11 starseeker but then we don't model too many sports cars ;-)
14:43.49 starseeker may be speaking too soon though, given brlcad's new car
14:43.59 starseeker OK, time to start getting chores done
14:47.33 archivist ``Erik, I heard my name :)
14:47.33 starseeker Not sure what this paper is or if it is any good, but Figure 10 gives a reasonable example of what a swept primitive looks like: http://www.unknownroad.com/publications/SweepsTRApril2005.pdf
14:47.33 ``Erik there was talk about BRL-CAD's ability to do gears :D
14:47.43 starseeker intends to do that
14:47.53 starseeker but must do chores/shopping first
14:47.54 archivist many sorts of gears exist
14:48.07 starseeker should make a fun tool :-)
14:48.15 archivist and some have the fiddle factors
14:48.24 starseeker tire all over again :-)
14:49.10 ``Erik bump map is a visual hack based on normals and exists in shader land... displacement map would be a closer notion, but is still a shader issue, not true geometry
14:50.52 ``Erik starseeker: did you see the updated ucw thingy?
15:03.30 starseeker the roman numerals?
15:03.34 starseeker yeah, that was cool
15:04.31 ``Erik where you could input? the first one I showed had the input part broken :)
15:04.43 starseeker yeah, input worked :-)
15:04.56 ``Erik okie, now to figure out something 'real' to do to extend my knowledge heh
15:05.03 starseeker :-)
15:05.11 starseeker gets real with laundry :-(
15:05.29 ``Erik the guy to look at my door jam is late
15:24.07 *** join/#brlcad jin354 (n=jin354@161.130.146.120)
15:53.51 *** join/#brlcad mafm (n=mafm@223.Red-83-49-86.dynamicIP.rima-tde.net)
15:59.05 *** join/#brlcad Elrohir (n=kvirc@p5B14F777.dip.t-dialin.net)
16:55.39 *** join/#brlcad mafm_ (n=mafm@223.Red-83-49-86.dynamicIP.rima-tde.net)
17:33.59 *** join/#brlcad mafm (n=mafm@223.Red-83-49-86.dynamicIP.rima-tde.net)
17:38.40 *** join/#brlcad mafm (n=mafm@223.Red-83-49-86.dynamicIP.rima-tde.net)
17:44.35 *** join/#brlcad punkrockg (n=Pandora@c-69-242-189-29.hsd1.mo.comcast.net)
18:47.07 *** join/#brlcad mafm_ (n=mafm@223.Red-83-49-86.dynamicIP.rima-tde.net)
19:38.05 *** join/#brlcad mafm (n=mafm@223.Red-83-49-86.dynamicIP.rima-tde.net)
20:16.37 *** join/#brlcad Ralith (n=ralith@216.162.199.202)
20:39.17 *** join/#brlcad BigAToo (n=BigAToo@pool-96-230-124-136.sbndin.btas.verizon.net)
21:02.08 *** join/#brlcad samrose (n=samrose@sa-ga143065.reshsg.uci.edu)
21:14.20 *** join/#brlcad _sushi_ (n=_sushi_@77-58-241-205.dclient.hispeed.ch)
21:51.09 *** join/#brlcad Elrohir (n=kvirc@p5B14F777.dip.t-dialin.net)
22:51.01 *** join/#brlcad samrose (n=samrose@sa-ga143065.reshsg.uci.edu)

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