IRC log for #brlcad on 20120204

00:41.28*** join/#brlcad jordisayol (~jordisayo@unaffiliated/jordisayol)
01:37.28MaloeranThis might be a stupid question... but why is BRL-CAD's ./configure trying to find OpenGL/OpenGL.h and -lopengl32? (rather than GL/gl.h and -lGL ) And hence apparently doesn't want to enable OpenGL
01:38.26Maloeran(Trying to install on an Ubuntu laptop, hunting down missing -dev packages...)
02:13.21CIA-48BRL-CAD: 03brlcad * r49223 10/brlcad/trunk/src/libged/trace.c: another unused vls
02:16.35CIA-48BRL-CAD: 03brlcad * r49224 10/brlcad/trunk/src/libged/ls.c: and another unused vls masked by a bu_vls_init()
02:25.23CIA-48BRL-CAD: 03brlcad * r49225 10/brlcad/trunk/src/ (113 files in 12 dirs): (log message trimmed)
02:25.24CIA-48BRL-CAD: replace 580 calls to bu_vls_init() with static initialization via
02:25.24CIA-48BRL-CAD: BU_VLS_INIT_ZERO. this eliminated the need for more than 100 conditionalized
02:25.24CIA-48BRL-CAD: inits, which in turn eliminates the risk that a vls might get used prior to
02:25.24CIA-48BRL-CAD: initialization (whereby it crashes). this improves memory management as well
02:25.24CIA-48BRL-CAD: eliminating the function call and memory allocation should the vls not actually
02:25.25CIA-48BRL-CAD: be needed; and it eliminates a memory leak if a vls were initialized but not
02:25.39brlcadMaloeran: hey, long time no see .. not a stupid question but definitely misunderstood
02:26.37brlcadMaloeran: it searches for OpenGL/OpenGL.h but *also* searches for GL/gl.h (and a variety of other headers found on various platforms), same for library searches too
02:27.25brlcadundoubtedly a missing dev package, if you read the config.log and find the GL/gl.h header test, it will say why
02:28.27brlcadmore importantly, though .. if this is at all a recent source, you should be using the newer cmake build system instead of the configure-based autotools build system.  mkdir .build && cd .build && cmake .. && ccmake ..
02:52.12MaloeranHey, long time no see indeed
02:52.38MaloeranSo you are moving away from autoconf and friends after all, nice
03:31.06brlcadalready done, few months back
03:32.53brlcadtook a few months to get a near-equivalent cmake build in place, but cliff bootstrapped a good setup
03:40.13MaloeranNice. I'm integrating my ball pivoting point cloud mesh reconstruction into Lee's VSL hence the need for BRL-CAD
03:44.10MaloeranI'm not quite convinced that raytracing, gathering point and reconstruction is the best way to convert CSG geometry to triangles (the edges of a cube will appear rounded), but it's probably good enough, I guess
03:45.59brlcadheh, that's funny
03:46.49brlcadI implemented a proof of concept for that about 7 years ago
03:46.54MaloeranOh?
03:47.11brlcadgot it working, but then abandoned the project because I thought it sucked
03:48.15MaloeranI'm sure there would be a much better way to generate surface points than raytracing, by inspecting the actual primitives. Or just converting each primitive to a triangle mesh and doing boolean operations on triangle meshes...
03:48.27brlcadthen erik worked on something similar about two years ago (again for lee), and came to similar results but after many more months trying to bring it up to production-quality
03:48.40brlcadsimilarly abandonded
03:48.44MaloeranWhat was the approach?
03:49.32brlcadmine was a textbook marching cubes eval
03:49.33MaloeranI think my point cloud mesh reconstruction code is very nice (very robust, extremely fast), but I'm not sure it's the right solution to the problem to begin with
03:49.43brlcadlike I said, just proof of concept reconstruction
03:50.00MaloeranMarching cubes from point cloud data? You'll get rounded cubes too...
03:50.24brlcadi saw that "yeah.. this can .. sorta work ..." but not for lots of types of geometry, not very robustly, and not well at all for flat surfaces and hard edges without a lot more work
03:50.43MaloeranYes, I see
03:51.48MaloeranThe ball pivoting algorithm was terribly unreliable and unstable too. It took about 2 months to fix the whole thing with a truly robust algorithm
03:52.52Maloeran(including the time to write it multithreaded, algorithms built of atomic instructions for perfecty scalability, NUMA-aware, etc.)
03:53.04brlcadlee seems enamored by the approach, but I guess I just fundamentally dislike the premise of point-sampling CSG
03:53.43MaloeranSo do I, it's not the right approach... unless your points are generated from the actual primitive surfaces
03:54.14MaloeranIf you have a cube, you should have points right on all the edges and corners, or your geometry gets messed up
03:55.02MaloeranMaybe it's just a first step until a better point sampling method is implemented
03:55.15brlcadyou don't need point sampling -- you have perfect surface information
03:55.36brlcadthe real solution is to just construct the boundary information, then evaluate your boundaries
03:55.41MaloeranSure. You could convert to triangle meshes and perform boolean operations on triangle meshes
03:55.43brlcadthat's what we've been working towards
03:56.05brlcadno no .. that's what we already do, it's terribly difficult to do robustly
03:56.10MaloeranOh? I see
03:56.32brlcadpolygonal boundary representation is only sufficient when your starting geometry is polygonal
03:56.57brlcadthat's where nurbs/brep come in (and why pretty much EVERY other commercial CAD system uses them)
03:57.00MaloeranWell, a conversion to a polygon based representation has many advantages these days
03:57.10brlcadyou can still convert to polygonal
03:58.02brlcadthe issue is when the boolean is evaluated
03:58.07MaloeranCan I ask what you mean exactly by constructing the boundary information, and evaluating boundaries?
03:58.51brlcadso take two overlapping mathematical spheres in implicit form (point+radius) being unioned together
03:59.30brlcadI can evaluate polys for both then join those two meshes, eliminate the interior faces, slice the boundary faces, etc
03:59.53MaloeranThat's what you presently do, and it's difficult to do robustly, right?
04:00.01brlcadbut the problem is that you're attempting to perform the boolean evaluation on already lossy data
04:00.11brlcadvery, np-hard iirc
04:00.46brlcadit ends up being a search domain problem with an undefined solution with real geometry
04:00.49MaloeranA different approach would be to generate points all over the spheres, then points precisely on the intersection disk between the two spheres, then reconstruct a mesh from these points
04:01.00MaloeranThat approach doesn't sound too hard
04:01.21brlcadit's knowing that intersection disk
04:01.28MaloeranMy problem is mostly with the present point sampling method, raytracing...
04:01.30MaloeranOh.
04:02.04MaloeranSo you are saying that generating actual points for the intersection between 2 boolean primitives is difficult
04:02.10brlcadpoint sampling the implicit definitely has better potential than trying to stitch a mesh that has already thrown away the curve of intersection
04:02.19MaloeranI guess the primitives involved must be complex than the basic ones I have in mind
04:02.39Maloeranmust be more* complex
04:02.40brlcadnot saying that, but yes for many of the primitives it's insanely difficult
04:02.46MaloeranI see.
04:02.48MaloeranInteresting
04:02.56brlcadpolynomial equations of nth order where n can be in the hundreds
04:03.29brlcadthe robust way to do it is convert those implicit spheres into explicit spheres using a spline-suface representation
04:03.44MaloeranWell, that complicates things a little. I can understand why Lee would want to bombard a CSG object with billions of rays and just reconstruct the geometry
04:03.48brlcadthen perform surface-surface evaluation to evaluate the actual curve of intersection
04:04.15brlcadyou use the curve of intersection to trim the actual original surfaces, resulting in two trimmed surfaces joined by a curve
04:04.31brlcadfrom there you can tessellate the two surfaces precisely to whatever resolution one desires
04:04.38MaloeranRight
04:04.42brlcadrobust, fault and floating point tolerant
04:05.24MaloeranThat surface-surface evaluation sounds tricky with high degree nurbs and such
04:05.51brlcadit is, but there are some pretty straightforward algorithms out there (and even the dead simple approaches work well enough)
04:06.17MaloeranI can imagine doing it by bruteforce and converging
04:06.24brlcadsure
04:06.32brlcadeven that is better than point-sample raytracing ;)
04:06.34MaloeranIf there's some better mathematical magic, I don't presently see it
04:06.40MaloeranAgreed :D
04:07.00brlcadfor lower-order surfaces, you actually can evaluate the exact curve with some simple reductions
04:08.29MaloeranSounds good. It's probably a very complex approach given the wide range of techniques and specialized codes required to handle intersection between any kind of primitive
04:08.55brlcadnot as complex as one would think
04:09.17MaloeranAh perhaps... Though I feel I understand Lee a little better in his desire to just bombard billions of rays and get something "close enough"
04:09.28brlcadgetting a nurbs representation in place was a big step, but not as big as directly ray-tracing nurbs, which is done now
04:09.59brlcadalso done was the complex piece of turning each of our primitives into nurbs/brep geometry
04:10.22MaloeranSo every primitive is nurbs/brep?
04:10.32MaloeranThat would simplify things quite a bit
04:10.59brlcadthe only piece remaining (which is slated for later this year) is the surface-surface trimming evaluation
04:12.12MaloeranI'm a little surprised that both you and Erik worked on something similar years ago
04:12.24MaloeranAnd Doug at SURVICE also wrote a new marching cube implementation
04:12.39MaloeranThen I was asked to write a fast ball pivoting based implementation
04:15.15brlcadthe other problem I have with the sampled approach is that it's inadequate for anything but visualization as there's no way to guarantee that you didn't change topology or miss geometry
04:15.35brlcadat best you can say you think you got everything within some tolerance
04:15.56MaloeranExactly. You can say you didn't miss anything below X milimeters
04:16.21brlcadif you're lucky and the implementation is sufficiently robust, you might be able to say topology seems to be consistent .. but you can't guarantee that
04:17.01MaloeranI'm quite confident in my ball pivoting implementation... but I'm biased, and I certainly see your point
04:18.02MaloeranI guess there's a point where details below a defined size of X can be overlooked for some purposes
04:18.06brlcadthe biggest practical problem I recall running into is how the algorithm responds to real geometry where there are cracks, voids, overlaps, etc
04:18.18brlcadthat and thin-walled geometry being a royal pain
04:18.37brlcadsheet metal surfaces that are infinitely thin .. and absurdly common
04:18.44MaloeranYes, marching cubes have problems with that
04:19.09MaloeranBall pivoting has problems too, but of a very different nature
04:19.15brlcadnods
04:20.13brlcadso that's why I abandonded the approach 7+ years ago :)
04:20.48MaloeranI wrote some automatic testing code, generating a big random point cloud kind-of thorus shaped, and I had it running for days on a 24 cores machines, doing thousands of runs to find any kind of error
04:20.57brlcadI figured even spending just a couple months to get something working robustly enough was wasted time, time I could spend getting closer towards a provably robust, accurate, and the defacto industry approach
04:21.01MaloeranSo until proved otherwise, I remain confident in my code :)
04:21.17MaloeranAh yes, I can agree with that
04:21.44MaloeranBut I also see beyond VSL, good point cloud reconstruction code can find uses elsewhere
04:21.50brlcadoh, I saw that "it 'could' work" even back then .. just not worth it to me :)
04:22.02MaloeranAh :)
04:22.17brlcadworth it to lee, which is why he's kept pressing on
04:22.55brlcadand if your work is as robust as he hopes, he'll finally have what he was looking for :)
04:23.18MaloeranIn some rare cases, the code can generate a topology that looks a little "weird", but certainly no holes, overlaps or any such error
04:23.22brlcadsurface reconstruction from point cloud data is very useful in itself, no doubt
04:24.06brlcadhell, that'd be great functionality I've had in mind to add to brl-cad for a while, it's just such a limited domain
04:24.12brlcadusually model acquisition
04:24.38MaloeranYes. Mark from SURVICE said they probably could use that in Metrology
04:24.50brlcadand if you can get point clouds, you have a lot more surface information right in front of you :)
04:24.55Maloeran(Instead of paying tens of thousands for software that doesn't always work that well)
04:27.11MaloeranCompletely different topic: compilation of OpenSceneGraph fails due to a lack of -fPIC, do you know their build system for the best way to plug that in?
04:27.28MaloeranI would fix manually but there are about 300 Makefiles
04:40.55starseekerMaloeran: which version of OpenSceneGraph are you using?
04:41.54*** join/#brlcad IriX64 (~kvirc@64.229.211.15)
04:41.55starseekerThey're CMake based, IIRC...
04:42.28starseekerusually they build without too much fuss
04:42.44MaloeranTrying to manually install the latest, my Ubuntu is too old and its packages are worthless ;)
04:42.58starseekerheh
04:43.12starseekerand the latest fails complaining about -fPIC?
04:43.15starseekerthat's surprising
04:43.20MaloeranYes... but -fPIC is already there and it complains anyway. Trying to figure out what's going on.
04:43.32starseekeryeah, that doesn't sound right
04:43.57MaloeranMore precisely : "/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/4.4.3/../../../../lib/libavdevice.a(alldevices.o): relocation R_X86_64_32 against `alsa_muxer' can not be used when making a shared object; recompile with -fPIC"
04:44.32starseekeruh... that sounds like it's complaining about a system library - libavdevice.a
04:44.43MaloeranYes, sounds like I have to rebuild that
04:45.09starseekeralsa is the sound architecture... you need sound support?
04:46.08MaloeranNot at all, I'll try disabling that, thanks for the tip
04:46.53starseekerBob did some quick OpenSceneGraph tests with MGED's display manager, but we didn't see much in the way of performance improvement - are there some settings to turn on with OSG to get speed-ups?
04:47.49MaloeranI'm totally unfamiliar with OSG, I'm just trying to build Lee's VSL on my laptop (for the last 3 hours ;))
04:49.53brlcadMaloeran: on a related topic, any chance of getting your point cloud code open sourced and added to brl-cad? ;)
04:50.28MaloeranThat would be nice, but VSL is going to be open-source or not?
04:50.50brlcadnot
04:50.58brlcadmake it a stand-alone lib
04:51.07MaloeranOw.. but I don't think I own the copyright on that code
04:51.16brlcadso to whomever owns it :)
04:51.54MaloeranI'll ask Lee, I know Mark wanted to use it somewhere too
04:52.43MaloeranI'm surprised VSL isn't going to be open-source, but I'm not too informed about the politics
04:52.52brlcadif it was under contract, mark may have finagled gpr (gov purpose rights) in which case open sourceability is entirely mark's decision
04:53.23MaloeranI see, I'll have to ask
04:53.25starseekerMaloeran: just curious - you know anything about this?  http://pointclouds.org/
04:53.28brlcadif it's gov unlimited rights, then it's lee's call
04:53.51MaloeranNever heard of it, starseeker, reading
04:54.48MaloeranI know Lee made me investigate MeshLab months ago, their ball pivoting mesh reconstruction was terrible
04:55.10MaloeranIt was 400 times slower than mine, and it created tons of holes, overlaps
04:55.42starseekerPCL claims to have surface reconstruction and are BSD licensed...
04:56.11starseekerMaloeran: too bad about Meshlab, but then they're GPL so BRL-CAD can't snarf code from them anyway...
04:56.42MaloeranAh right. MeshLab is most horrible anyway
04:57.05starseekerthey can be handy when converting bot formats (stl, obj, etc.) - that's mostly what I use it for
04:57.12starseekerand they're not a bad viewer
04:57.29starseekercompiling it... sucks.  royally.
04:57.40MaloeranEheh
04:58.05starseekerhas pondered feeding points into PCL from raytracing to see what they can do, but it's not been a high priority
04:58.06MaloeranI'm not finding how to disable sound in OSG, do you have another tip in reserve?
04:58.23starseekerum.  which component is failing?
04:58.36starseeker(i.e. what are you trying to build when the linker fails)
04:58.41Maloeranosgdb_ffmpeg.so
04:58.56starseekermaybe video support?
04:59.02starseekerFFMPEG is video
04:59.11MaloeranUnder osgPlugins-3.0.0, so it's probably not essential
04:59.44MaloeranExactly. Except I'm not finding how to disable it, I never bothered to familiarize myself with the build systems (I mostly hate them)
04:59.56starseekeryou're using cmake-gui?
05:00.08Maloeran./configure && make
05:00.15starseekererm
05:00.29starseekerI'd suggest installing cmake, if osg supports it
05:00.44starseekerUbuntu does have a CMake package, even if it's a bit old
05:01.19starseekerI'll stand a lot better chance of helping you if you're building with CMake ;-)
05:01.32MaloeranOkay :), let me try this
05:01.56starseekerdownloads latest osg
05:02.47starseekerMaloeran: too bad you hadn't run into PCL before, was hoping you might have some insight into it - now I'll have to do some work :-P
05:02.47MaloeranInteresting little thing, this cmake-gui
05:02.55MaloeranSorry :D
05:05.16starseekerhmm.  well, if it does need ffmpeg you may need to build that from source
05:05.19MaloeranI can change paths but that doesn't help much. I guess I'll reinstall ffmpeg with more -fPIC
05:06.25starseekerMaloeran: if you go with the CMake build, you'll probably need to replace all the FFMPEG_* variables with the values for your local build of ffmpeg
05:06.40starseekerconfigure might give you some options
05:07.05MaloeranYes I saw. Running an outdated Ubuntu and having to install everything manually is a lot of trouble actually
05:07.15MaloeranI have been installing packages manually for 3-4 hours
05:07.22starseekeryou *might* be able to set FFMPEG_ROOT from the get-go, e.g. cmake .. -DFFMPEG_ROOT=/my/ffmpeg/install
05:07.36starseekerMaloeran: ``Erik would tell you to upgrade to FreeBSD :-P
05:08.09starseekerfinds Gentoo a good step in the BSD direction without losing all his Linux frame of reference...
05:08.57MaloeranYes, my desktop runs Gentoo, it was a bad call to try Ubuntu on the laptop
05:18.04MaloeranWonderful, with the latest ffmpeg, OSG just spits out a bunch of compilation errors
05:18.31MaloeranI think I'll just carry my desktop to keep working on the week-end :)
05:31.06starseekeror upgrade your laptop OS :-)
05:35.18starseekerhmm - looks like PCL takes advantage of qhull
05:35.41starseekerreally needs to bug the qhull author about his license (or figure out if it's compatible as-is...)
05:40.03CIA-48BRL-CAD: 03brlcad * r49226 10/brlcad/trunk/ (include/bu.h src/libbu/str.c): add a bu_strcasecmp companion for bu_strcmp.
05:41.08starseekerbrlcad: did we ever decide if qhull's license is OK for our use?
05:46.39CIA-48BRL-CAD: 03brlcad * r49227 10/brlcad/trunk/include/bu.h: add a BU_STR_SIMILAR() macro for converting the return value from bu_strcasecmp() into a boolean. future version may wrap a different function if it's expanded to disconsider insignificant whitespace too.
05:51.03MaloeranI looked at the website, there doesn't seem to be much of a license in the legal sense
06:14.57brlcadstarseeker: my relatively brief reading is that qhull seems fine
06:15.05brlcadI don't see any new terms that lgpl doesn't already require implicit or explicit
06:15.31brlcadI'd expect to see some serious feature already using it, not just planned, before it gets integrated though..
06:16.03brlcadrather specific algorithms to just toss in without regard to our own api and duplicate functionality
06:20.57CIA-48BRL-CAD: 03brlcad * r49228 10/brlcad/trunk/include/bu.h: rename to BU_STR_EQUIV for equivalence since it's slightly less ambiguous (but shortened to match BU_STR_EQUAL length).
06:22.15CIA-48BRL-CAD: 03brlcad * r49229 10/brlcad/trunk/src/ (5 files in 3 dirs): propagate BU_STR_EQUIV() where strcasecmp() was being used
06:24.10CIA-48BRL-CAD: 03brlcad * r49230 10/brlcad/trunk/HACKING: bu_strcasecmp() and BU_STR_EQUIV() instead of stricmp()/strcasecmp()
06:46.45*** join/#brlcad juanman (~quassel@unaffiliated/juanman)
07:03.40MaloeranIn case anyone was curious, the -fPIC error was caused by a direct reference in assembly in ffmpeg, and the latest OSG can only compile with a ffmpeg 6 months old
10:29.41*** join/#brlcad jordisayol (~jordisayo@unaffiliated/jordisayol)
12:52.10*** join/#brlcad csanyipal (~csanyipal@185-169-85-95.dynamic.stcable.net)
12:52.22csanyipalHi,
13:00.10csanyipalcan one make an aeroplan with brlcad and after that to investigate it's aerodynamic attributes?
13:00.27csanyipala model of aeroplan, of course..
13:45.58CIA-48BRL-CAD: 03brlcad * r49231 10/brlcad/trunk/src/ (28 files in 21 dirs): since 'new' is a reserved c++ keyword, avoid using it throughout our code. one step closer to being able to compile everything as c++ sources.
13:53.42CIA-48BRL-CAD: 03brlcad * r49232 10/brlcad/trunk/src/mged/ (chgview.c sedit.h): what? eliminate evil unused global strings
14:36.37starseekerbrlcad: oh, I wasn't planning on snarfing it in now - just wanted to be sure condition 3 requiring name, date and reason for modification to be present if changes were made, wasn't over and above LGPL requirements
14:37.13starseekerif it is, no point in even investigating qhull without first trying to discuss the license question with the author
14:37.26CIA-48BRL-CAD: 03brlcad * r49233 10/brlcad/trunk/src/remrt/remrt.c: straggler bu_vls_init() to = BU_VLS_INIT_ZERO conversion
14:39.08starseekercsanyipal: um... we don't have much in the way of tools specific to aerodynamic analysis - my understanding is that's a rather specialized sort of analysis
14:43.31starseekera quick look around the web turns up XFoil from MIT... http://web.mit.edu/drela/Public/web/xfoil/
14:44.43starseekerfrom the finite element perspective there's also http://sourceforge.net/projects/elmerfem/ (GPL) which seems to have some active development...
14:46.20starseekerthere's CEASIOM, but it's not open source... http://www.ceasiom.com/index.php
14:50.29starseekermight be something of interest here:  http://www.dept.aoe.vt.edu/~mason/Mason_f/MRsoft.html
14:53.51*** join/#brlcad juanman (~quassel@unaffiliated/juanman)
14:54.54starseekercsanyipal: if you have access to Rhino, this might be of interest:  http://wiki.mcneel.com/developer/scriptsamples/airfoil
14:55.05starseekerBRL-CAD can import 3dm files
14:56.33starseekeralso http://sourceforge.net/projects/xflr5/
14:56.59starseeker(might be more friendly than xfoil)
14:57.44starseeker(intended for model aircraft though)
15:01.48starseekeroriginal NACA report on airfoil shapes... http://hdl.handle.net/2060/19930091108
15:04.18starseekerand the "5-digit" report... http://hdl.handle.net/2060/19930091610
15:43.24brlcadstarseeker: that clause is interesting, but I didn't read that condition as conflicting lgpl requirements
15:43.59starseekerum.  so the notion of *requiring* something like ChangeLog updates isn't an issue?
15:45.13brlcadcopyright doesn't allow you to claim ownership of something you didn't write, so requiring changes be annotated fulfills that requirement (outside of lgpl)
15:45.22brlcadi.e., it's something you have to do anyways in some form
15:45.31starseekerah.  hadn't considered that
15:45.55starseekerso I guess the only problem spot would be requiring a notation about the reason for the mod
15:46.03brlcadI mean, I wouldn't bet the farm on it, but the intent is pretty clear to me
15:46.49brlcadthe real question would be if someone downloaded brl-cad that had code from it included, could they comply with both
15:46.56starseekernods
15:47.00brlcadand I'm thinking that they can
15:47.44starseekerdoesn't look to be viral either, if I'm understanding it right - i.e. linking in libqhull doesn't propoagate those requirements to all code
15:48.03CIA-48BRL-CAD: 03starseeker * r49234 10/brlcad/trunk/src/other/CMakeLists.txt: whoops, get the lib dir symlinks too.
15:48.24brlcaddoesn't even require source, if I recall
15:48.47brlcadjust IFF you provide source code, you have to make it clear what you've changed
15:49.11starseekernods - so pretty much like Apache then - we can't mix it straight in, but we can use it
15:49.52brlcadstill, the fundamental issue also comes back to what they provide that would be more useful than another less complicated lib or even a more minimal subset that we'd write ourselves
15:50.29brlcadconvex hull is a function someone could write in a day
15:50.41brlcadand wouldn't require data massaging
15:51.09starseekerdoesn't know for sure - just keep seeing qhull pop up when things like triangulation come into play
15:53.12starseekerShewchuk's Triange code is a definite no-go - crappy licensing
15:54.43brlcadqhull's main feature is for supporting convex polyhedra, which is basically a form of our arbn primitive
15:56.13starseekerwonder what PCL is using it for then
15:56.52brlcadconvex hull undoubtedly
15:56.58brlcador delauney triangulation
15:57.46brlcadgiven a set of 3d points, get the convex hull, you build up a surface
15:59.06*** join/#brlcad KimK (~Kim__@209.248.147.2.nw.nuvox.net)
16:00.07brlcadby itself though, it's just a solution in search of a problem ... :)
16:00.26brlcadnow pcl, that's more interesting and immediately useful ;)
16:01.23starseekersure - but I'm guessing pcl's features would probably require qhull's presense, based on my attempt to compile it last night
16:01.40starseekerhence the qhull question :-)
16:02.27brlcadfrom what i read, it's not required
16:03.13brlcadbut I could still see them using qhull under the hood for point cloud processing .. "get me a bounding surface around these points"
16:03.29brlcadpart of pcl's segmentation feature
16:05.39starseekernods - k. My initial thought was they were probably using it to triangulate the point cloud into a mesh, but I admit I didn't look closely
16:06.03starseekerpcl looks to be a mean compile... yay C++
16:06.04brlcadthat'd be why you'd get a bounding surface around points, gives a mesh
16:06.43starseekerah, right
16:06.58starseekerdoesn't normally think in terms of meshes as bounding surfaces :-)
16:07.14starseekerusually come up in geometry conversion questions
16:07.15brlcadit's fringe interest .. getting it to play with our points primitive would be the main use, and that's not a great modeling interface
16:07.58starseekerwas thinking raytrace to get points -> stuff into PCL -> get back bot...
16:08.09brlcadyep
16:09.13brlcadthat's the whole discussion from last night
16:09.42brlcadsure you can do that ... but is it actually less work (to do it well, reliably, robustly) than implementing surface-surface intersections?  I think not
16:10.24brlcadit's data explosion, a sampled approximation, you throw away everything you know about the geometry's structure and then try to recreate it .. .wtf? :)
16:10.59starseekerheh
16:11.19starseekersure - was thinking more of the case of a scanner barfing a point cloud than our own geometry
16:11.53brlcadyeah, that's the main usefulness to us
16:12.33brlcadmetrology equipment, lidar, vulcan
16:13.15starseekereven there, would be better to get a NURBS surface than a mesh...
16:14.06brlcadif you're starting with points, there's not much difference
16:14.28brlcadyou could extract nurbs from mesh, or mesh from nurbs, either derived from point cloud
16:16.13starseekertrue
16:22.04brlcadthat's basically what geomagic does, which comes with most scanners
16:22.44brlcadand you'd be hard-pressed to implement something better than them without device drivers
16:23.27brlcadthat said, you know it's on our must-do this year to implement bot->nurbs right? if you're looking for a fun project ;)
16:25.28brlcadand nurbs->mesh
16:30.03MaloeranIs anyone familiar with Lee's VSL source here?
16:35.29starseekerMaloeran: nope, sorry :-/
16:50.50*** join/#brlcad KimK (~Kim__@209.248.147.2.nw.nuvox.net)
17:11.56CIA-48BRL-CAD: 03starseeker * r49235 10/brlcad/trunk/doc/docbook/resources/other/standard/ (3 files in 2 dirs): Will need some tweaks to the docbook resources setup. This will break things temporarily, but need to change files then move them.
17:17.12CIA-48BRL-CAD: 03starseeker * r49236 10/brlcad/trunk/doc/docbook/resources/other/docbook-schema/docbook-5.0.tar.bz2: Another change-before-move commit
17:42.11CIA-48BRL-CAD: 03starseeker * r49237 10/brlcad/trunk/doc/docbook/resources/other/ (19 files in 6 dirs): Move some docbook stuff around
17:44.03CIA-48BRL-CAD: 03starseeker * r49238 10/brlcad/trunk/doc/docbook/resources/other/ (docbook-schema/ standard/svg/ standard/xsl/): Remove empty dirs
17:45.09brlcadsome exciting possibilities with gsoc 2012
17:46.12starseekercusses out the article TEMPLATE.xml file... why did you suddenly stop validating???
17:46.23starseekernot just the last few commits, either...
17:46.35brlcadhuh, validated when I added it I thought
17:46.40brlcadat least it spit out html
17:46.59starseekeryeah, it generates html - I tried enabling the xmllint validation
17:47.08starseekersort of "strict flags for docbook"
17:47.44starseekeroh, wait - is that that new example file you added?
17:48.04starseekeroh, OK - no wonder, I probably hadn't hit it with xmllint
17:48.07starseekerphew
17:48.13starseekernevermind, carry on
17:49.00starseekerif you're curious, variable is BRLCAD_EXTRADOCS_VALIDATE
17:49.13starseeker(marked as advanced for now - set it to ON and you'll see why...)
17:52.04starseekereventually, once we get our xml cleaned up, I'd like to tie the default setting of BRLCAD_EXTRADOCS_VALIDATE to the overall strict compilation variable
17:52.36brlcadah, okay
17:52.44brlcadit was pulled together by hand so no surprise
17:54.04brlcadyep and concur, the same reasons and maintainability benefits for adhering strict applies to xml "code" too :)
18:05.43*** join/#brlcad kanzure (~kanzure@131.252.130.248)
18:10.11CIA-48BRL-CAD: 03starseeker * r49239 10/brlcad/trunk/src/other/libpng/projects/vstudio/pngstest/: empty directory
18:28.55CIA-48BRL-CAD: 03starseeker * r49240 10/brlcad/trunk/ (3 files in 3 dirs): Turn on the distclean rule. This should be a real distclean, working both in and out of the source directory. Needs more testing. Currently is only likely to work with systems using Makefiles
18:33.46starseekercool - http://google-opensource.blogspot.com/2012/01/data-and-code-open-sourced-from-googles.html
18:38.10starseekerbrlcad: it will take more testing, and I'm sure it's not the fastest distclean in the world, but hopefully that will do the job
18:38.33starseekersuddenly in-src-dir development of BRL-CAD becomes viable again :-/
18:38.36starseekersort of
18:49.45csanyipalstarseeker: Thanks!!
19:15.03*** part/#brlcad csanyipal (~csanyipal@185-169-85-95.dynamic.stcable.net)
19:34.17*** join/#brlcad Yoshi47 (~jan@d72-39-60-53.home1.cgocable.net)
20:44.22*** join/#brlcad bmoez_ (~bmoez@197.1.11.223)
22:23.32*** part/#brlcad bmoez_ (~bmoez@197.1.11.223)
22:25.06starseekerhah - cool, Leslie (former GSoC organizer) has a chapter in the open-advice.org book
22:44.10starseekerheh - awesome lines from Rich Bowen
22:44.17starseekerparaphrase:
22:44.38starseeker"This is the true laziness - not merely shirking work, but doing the work once so well that it never has to be done again."
22:46.04starseekerprogrammer zen :-)
22:56.49starseekerthis Open Advice book is actually really cool
23:41.33*** join/#brlcad n_reed_ (~molto_cre@BZ.BZFLAG.BZ)
23:44.27*** join/#brlcad yiyus_ (1242712427@je.je.je)
23:51.13*** join/#brlcad kanzure (~kanzure@131.252.130.248)

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