IRC log for #brlcad on 20140909

00:29.23 Notify 03BRL-CAD:n_reed * 62593 (brlcad/branches/brep-debug/src/libbrep/boolean.cpp brlcad/branches/brep-debug/src/libbrep/debug_plot.cpp brlcad/branches/brep-debug/src/libbrep/intersect.cpp): sub_curve sometimes returned a non-NULL result given a degenerate interval. Make it throw an exception so we never leave a degenerate interval unhandled.
00:32.40 Notify 03BRL-CAD:n_reed * 62594 (brlcad/branches/brep-debug/src/libbrep/brep_except.h =================================================================== and 44 others): exception classes moved to separate file
00:39.30 Notify 03BRL-CAD:starseeker * 62595 (brlcad/branches/dm-work/include/dm.h brlcad/branches/dm-work/src/libdm/dm-generic.c brlcad/branches/dm-work/src/mged/dozoom.c): Fix illumination
00:40.49 *** part/#brlcad chick_ (~chick@41.205.22.41)
00:51.18 Notify 03BRL-CAD:starseeker * 62596 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h and 2 others): Make a couple functions to set the DOWN flags for all solids.
01:02.11 Notify 03BRL-CAD:starseeker * 62597 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h brlcad/branches/dm-work/src/libged/zap.c): refactor zap headSolid code
02:00.32 *** join/#brlcad clock (~clock@77-58-143-135.dclient.hispeed.ch)
02:09.13 *** join/#brlcad teepee (~teepee@gateway/tor-sasl/teepee)
03:33.53 *** join/#brlcad kintel_ (~kintel@unaffiliated/kintel)
03:43.12 *** join/#brlcad FreezingCold (~FreezingC@CPE602ad06bea2a-CM602ad06bea27.cpe.net.cable.rogers.com)
05:16.57 *** join/#brlcad ries (~ries@D979EA84.cm-3-2d.dynamic.ziggo.nl)
05:47.28 *** join/#brlcad clock (~clock@77-58-143-135.dclient.hispeed.ch)
09:57.35 *** join/#brlcad Ch3ck (~localhost@195.24.220.134)
11:49.32 Notify 03BRL-CAD:indianlarry * 62598 brlcad/trunk/src/librt/primitives/brep/brep.cpp: Added function PointInPolygon() based off of private function found in clipper library that is used to determine if point is inside of a polygon. Also added ShiftInnerLoops() that is called from poly2tri_CDT()'s closed surface checking routine to make sure holes don't need shifted across a closed seam so that they are inside of the outer
11:49.33 Notify polygon.
12:54.03 *** join/#brlcad ries (~ries@D979EA84.cm-3-2d.dynamic.ziggo.nl)
13:23.53 *** join/#brlcad konrado (~konro@41.205.22.54)
13:36.08 Notify 03BRL-CAD:starseeker * 62599 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h brlcad/branches/dm-work/src/libged/how.c): refactor solid list out of how.c
13:39.50 Notify 03BRL-CAD:starseeker * 62600 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h brlcad/branches/dm-work/src/libged/nirt.c): Hide wflag setting
14:04.30 Notify 03BRL-CAD:starseeker * 62601 (brlcad/branches/dm-work/src/libged/CMakeLists.txt brlcad/branches/dm-work/src/libged/display_list.c and 3 others): Break plotting of solids out into a routine for ged_plot
14:22.00 Notify 03BRL-CAD:starseeker * 62602 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h brlcad/branches/dm-work/src/libged/png.c): refactor png logic
14:32.19 *** join/#brlcad teepee- (bc5c2133@gateway/web/freenode/ip.188.92.33.51)
14:34.18 Notify 03BRL-CAD:starseeker * 62603 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h brlcad/branches/dm-work/src/libged/polybinout.c): rework polybinout
14:49.10 brlcad kanzure: api docs say it appends a copy
14:49.40 brlcad the array arg is a const parameter
15:02.56 Notify 03BRL-CAD:starseeker * 62604 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h brlcad/branches/dm-work/src/libged/ps.c): refactor ps
15:04.16 kanzure got it
15:04.20 kanzure brlcad: http://verbnurbs.com/
15:12.50 Notify 03BRL-CAD:carlmoore * 62605 (brlcad/trunk/src/librt/primitives/brep/brep.cpp brlcad/trunk/src/util/bwrect.c brlcad/trunk/src/util/pixrect.c): cosmetic changes in bwrect.c & pixrect.c (files to look as much alike as possible), and fix spellings
15:14.38 Notify 03BRL-CAD:starseeker * 62606 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h brlcad/branches/dm-work/src/libged/report.c): refactor report
15:25.03 Notify 03BRL-CAD:starseeker * 62607 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h brlcad/branches/dm-work/src/libged/rt.c): Not quite all of it yet, but start reworking rt.c to clear headSolid.
15:31.19 Notify 03BRL-CAD:starseeker * 62608 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h brlcad/branches/dm-work/src/libged/rt.c): finish removing headSolid from rt.c
15:36.53 *** join/#brlcad teepee- (bc5c2133@gateway/web/freenode/ip.188.92.33.51)
15:46.45 Notify 03BRL-CAD:starseeker * 62609 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h brlcad/branches/dm-work/src/libged/select.c): refactor select
15:56.18 Notify 03BRL-CAD:starseeker * 62610 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h brlcad/branches/dm-work/src/libged/set_transparency.c): Remove the last headSolid use in libged in functional code. This is still an ugly, hack-and-slash stage - the next step will be to look at how to abstract things to allow both default behaviors for libged and the ability for a
15:56.20 Notify particular dm to override things (png image creation, for example, would be a candidate).
16:04.12 Notify 03BRL-CAD:starseeker * 62611 (brlcad/branches/dm-work/src/libged/autoview.c brlcad/branches/dm-work/src/libged/bigE.c and 26 others): Remove solid.h from most of the individual files in libged - not properly a private header yet, but need to clear out these includes before we can get there.
16:06.48 *** join/#brlcad konrado (~konro@41.205.22.54)
16:08.04 *** join/#brlcad clock (~clock@77-58-143-135.dclient.hispeed.ch)
16:29.16 *** join/#brlcad archivist (~archivist@host81-149-189-98.in-addr.btopenworld.com)
17:12.24 *** join/#brlcad clock (~clock@77-58-143-135.dclient.hispeed.ch)
17:26.07 *** join/#brlcad Stragus (~alexis@modemcable008.161-160-184.mc.videotron.ca)
17:28.22 *** join/#brlcad Stragus (~alexis@modemcable008.161-160-184.mc.videotron.ca)
18:12.19 Notify 03BRL-CAD:starseeker * 62612 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h): remove some items no longer needed in ged_private.h
18:14.57 *** join/#brlcad kintel_ (~kintel@unaffiliated/kintel)
18:34.12 Notify 03BRL-CAD:starseeker * 62613 (brlcad/branches/dm-work/src/libged/bot_dump.c brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h): Approach the bot_dump hiding more like the other commands. Need to avoid any exposure of individual struct solid objects if this is going to work.
18:54.12 Notify 03BRL-CAD:n_reed * 62614 brlcad/branches/brep-debug/src/libbrep/intersect.cpp: Since ON_PolylineCurve::Split() snaps parameters within tolerance to the domain ends, we have to handle parameters within that tolerance specially when creating a subcurve.
19:33.10 Notify 03BRL-CAD:starseeker * 62615 (brlcad/branches/dm-work/src/libged/display_list.c brlcad/branches/dm-work/src/libged/ged_private.h): Start trying to ease the callbacks for struct solids out of the main logic loops - if we can do these updates after the main logic without error, it's a major step towards getting struct solids out of the callback types.
19:40.38 Notify 03BRL-CAD:starseeker * 62616 (brlcad/branches/dm-work/src/libtclcad/tclcad_obj.c brlcad/branches/dm-work/src/mged/dodraw.c and 2 others): inch towards switching from struct solid to struct display_list for callback...
19:50.38 Notify 03BRL-CAD:starseeker * 62617 (brlcad/branches/dm-work/include/ged.h brlcad/branches/dm-work/src/libged/display_list.c and 4 others): switch to struct display_list instead of struct solid in libged callbacks.
19:55.28 Notify 03BRL-CAD:starseeker * 62618 (brlcad/branches/dm-work/src/libged/bigE.c brlcad/branches/dm-work/src/libged/display_list.c and 2 others): the existing_sp is never used - remove it and hide another struct solid use.
19:59.06 brlcad kanzure: nifty js lib there
20:04.26 kanzure surface-surface is missing but this seems like the only missing piece
20:05.16 brlcad n_reed: it looks like it has curve+curve, curve+surface, and surface+surface intersection functions, might be useful to compare
20:05.51 brlcad missing? it looked like (from the docs) that it's there
20:06.58 brlcad also, didn't look to see if it's doing everything in tessellation space, evaluating a tessellation, or if it's evaluating the actual geometry
20:07.45 Notify 03BRL-CAD:starseeker * 62619 (brlcad/branches/dm-work/include/dm/bview.h brlcad/branches/dm-work/include/ged.h and 2 others): And now, solid.h comes entirely out of ged.h. Remaining exposures of struct solid other than display_list.c and libdm are in libtclcad and mged - the latter, in particular, makes extensive use of struct solid.
20:20.27 *** join/#brlcad konrado (~konro@41.205.22.54)
20:28.06 konrado Please i am new to cad and would like to find out how cad drawings or objects are actualy stored in files.For example what information is actualy stored about objects in the .g file of brlcad. I would like to get some pointer on how i can learn more about cad data exchange.
20:29.08 brlcad hi konrado! for our .g format, we store pretty much exactly what is used to create those objects
20:30.22 brlcad cad data exchange, however, is a pretty broad topic that entails understanding of geometry format representations and file formats (these are two separate albeit related concepts)
20:32.06 brlcad our format supports hybrid representations, so you can have implicit and explicit representation types, with or without boolean operations (i.e., implicit feature edits), and we export to a number of other common formats (predominantly explicit polygonal formats)
20:33.46 konrado brlcad: are csg and nurbs examples of geometry format representation?
20:34.53 brlcad csg is a boolean operation (an implicit feature edit) that is usually associated with an implicit representation (lets call it "csg+implicit")
20:35.06 brlcad csg+implicit is a geometry representation format
20:35.28 brlcad nurbs is another geometry representation format (as is nurbs+csg)
20:35.57 brlcad triangle or polygonal mesh geometry is yet another
20:37.23 *** join/#brlcad Izakey (~Isaac@41.202.196.204)
20:38.52 konrado What part of the brlcad code handles this representation?
20:39.51 brlcad volumetric data is another (e.g., MRI/CT medical data), point cloud data (e.g., laser scan data from an xbox kinect)
20:40.16 brlcad our librt library predominantly handles the representation
20:40.38 brlcad though some formats are so utterly complicated that they are backed by libraries of their own
20:41.15 brlcad our .g format is encapsulated by librt
20:41.28 Izakey brlcad having some problems computing the curvature of the heart-shape. What do you suggest ?
20:42.10 brlcad konrado: curious why this is of interest, just exploring / understanding or trying to accomplish something?
20:42.24 brlcad there's a good paper on solid modeling that talks some about representation formats
20:42.53 konrado brlcad: I am intereted in contributing to brlcad
20:42.54 brlcad Izakey: look at some of the other primitives is probably the best suggestion
20:43.19 brlcad konrado: awesome, what's your background?
20:43.59 konrado brlcad: I have not done any cad related studies before
20:44.20 Izakey I have obviously already done that brlcad. Still finding it hard understanding how the curvature of the torus was conceived. There are no comments in the code for example
20:44.38 brlcad konrado: so then what's interest in how the data is stored? something in particular in mind?
20:46.05 brlcad Izakey: yeah, it's really somewhat complicated .. read wikipedia at least? probably a good starting point
20:46.25 konrado brlcad: you gave me task to make the converter convert object from a .g file without the user specifying the object and i have submitted a patch but it has not yet been reviewed
20:46.59 brlcad konrado: yes, this I know .. I reviewed it briefly last week but couldn't integrate it at the time to close it out
20:47.00 Notify 03BRL-CAD:carlmoore * 62620 (brlcad/trunk/doc/docbook/system/man1/en/pixbgstrip.xml brlcad/trunk/src/util/pixbgstrip.c): fixes to pixbgstrip
20:47.11 brlcad i'm hoping to get back to it this week
20:47.26 brlcad the quick read looked REALLY good
20:47.35 Izakey I have done that. I read the entry of Curvature on Wikipedia. A little bit enlightening but when I compare that with what I see in the code base : The discrepancy is frightening
20:48.01 brlcad discrepancy?
20:48.21 Izakey Anyway, Is there a command used to test this curvature. I can use that to know if the heart's own is well written
20:48.42 brlcad maybe start with a far simpler case, like rt_ell_curve()
20:48.42 Izakey I mean that the theory and the code don't tie (at least for me)
20:49.07 brlcad you can visualize the curvature! .. that's probably the best way :)
20:49.27 brlcad man rt, but iirc, it's a lighting model option like -l5
20:49.50 brlcad that might help for understanding what the other primitives are doing too
20:50.47 Izakey Okay. That one should help for curvature.
20:51.25 Izakey What about centroid, surface area, volume functions. How do I test those ?
20:53.18 konrado brlcad: Thanks for the compliment. I tested the patch and it works fine for me. I was waiting for it get reviewed so i can also move on to the other converters.
20:54.54 konrado brlcad:I am primarily interested in cad data exchange and would like to work basicaly on the brlcad converters.
20:55.14 brlcad Izakey: you can test centroid and volume with the gqa command/tool
20:56.02 Izakey Thanks brlcad. A good mentor you are.
20:56.04 brlcad it will sample the heck out of the geometry and (if the ray tracing is implemented correctly) will converge to the correct centroid and volume within some specified tolerance
20:56.57 brlcad we don't yet have a good way to estimate surface area with that same approach (but that'd be a great extension of gqa .. it has all the information needed)
20:57.27 brlcad konrado: understood about needing feedback before you can move on to the other converters
20:58.04 brlcad konrado: fantastic to hear about the converters, but are you stuck with where you're currently with pov?
21:00.24 konrado brlcad: I am the one working the g-pov converter
21:00.40 brlcad I know, that's why I'm asking if you got stuck :)
21:00.40 konrado brlcad: I am not the one working the g-pov converter
21:00.51 brlcad ooooh, my bad!
21:00.59 brlcad well shoot, you need your own then :)
21:01.18 brlcad are you comfortable reading files in binary and working with structs?
21:01.32 konrado brlcad: Yes i am
21:01.48 brlcad then might I recommend implementing a sat-g importer
21:02.23 brlcad it's the Solidworks file format, which is one of the most prolific and older file formats around
21:02.36 brlcad and you can read all about it here: http://paulbourke.net/dataformats/sat/sat.pdf
21:03.32 konrado brlcad: Thanks i would be glad to such task.
21:05.41 konrado I just check out the pdf and i think this task would help me understand cad data exchange better.
21:06.01 brlcad you can easily find sat files around the web with google searches, just search for a keyword like "filetype:sat acis"
21:06.40 brlcad undoubtedly will help .. the sat file format is pretty detailed and will strongly introduce you to boundary representation nurbs geometry
21:07.02 brlcad last pov
21:07.06 Izakey Is this "filetype:sat acis" Python code brlcad ?
21:07.13 brlcad gurwinder was pov
21:07.36 brlcad Izakey: nope, that's something you'd type into a google search to find some .sat files
21:08.12 brlcad give it a try
21:08.28 brlcad filetype is loads of fun ;)
21:09.08 Izakey It's some programming of some some right ?
21:09.25 brlcad not at all
21:09.30 Izakey some form
21:10.19 Izakey Got some results from that
21:10.20 brlcad yes, there is a form .. they call them search operators
21:10.37 Izakey That's it.
21:10.55 brlcad but it's the same that lets you limit what servers you get search results from too (e.g. "milk site:wikipedia.org")
21:11.01 Izakey Are they mark-ups /
21:11.04 Izakey ?
21:11.18 brlcad https://support.google.com/websearch/answer/136861?hl=en
21:12.15 brlcad of course that one doesn't list filetype: heh
21:12.44 brlcad better: http://www.sourcinghacks.com/google-search-operators-and-more/
21:15.29 Izakey With this chat I can make more rapid progress with finishing the heart. And learned about Search operators too
21:15.43 Izakey Good night
21:15.59 brlcad konrado: another desirable importer we don't have is vrml (explicit polygonal representation)
21:16.23 brlcad buenas noches izak
21:17.04 brlcad konrado: vrml is much more simple, but you'd probably want to use an existing library to read in the vrml data instead of trying to write a parser on your own
21:17.32 konrado brlcad: Yes i just saw something about that format while surfing the web today
21:18.01 brlcad so pick your poison or do one then the other ;)
21:18.43 brlcad sat is probably more fun because you basically have to write a parser, but might get really complicated
21:19.17 brlcad vrml is easier, but you have to learn how to use someone else's library (or write an even harder parser)
21:19.54 konrado brlcad: Do all this implimentation require proper knowledge of geometry format representations and file formats
21:20.13 Notify 03BRL-CAD:starseeker * 62621 brlcad/branches/dm-work/src/mged/chgview.c: Should be able to let ged_zap and dl_zap under it use the ged_free_vlist_callback to do the cleanup...
21:20.17 konrado ?
21:21.02 brlcad sort of but not really
21:21.14 konrado brlcad: When reading a book on cad what should be my point of focus?
21:21.54 konrado brlcad:In other to be able to handle cad data exchange
21:22.00 brlcad if you're dealing with geometry, the format of that geometry will usually matter and it'll be quite apparent when you have to convert from one format to another because it's usually painful and lossy
21:22.52 brlcad some conversions are lossless ... we're a hybrid system, for example, so we have containers for most formats ... so writing an *importer* is easy
21:23.05 brlcad exporting, it depends on what format or CAD system you're exporting to
21:23.28 brlcad I don't recommend any particular book on CAD
21:23.36 brlcad the resources on the web are prolific
21:24.13 konrado brlcad: Would have to deal with mainly with conv/ and librt/ for this task
21:24.37 brlcad yep
21:24.44 brlcad mainly src/conv
21:25.06 Notify 03BRL-CAD:carlmoore * 62622 brlcad/trunk/doc/docbook/system/man1/en/pix-orle.xml: minor touchup of pix-orle; more, such as removal of -h, cannot be done since I can not locate source code for this command
21:25.28 brlcad if you implement sat-g, you'll probably want to look at how 3dm-g creates geometry as what you'll probably need is VERY similar
21:26.22 brlcad if you implement vrml-g or x3d-g, you'll probably want to look at ply-g.c
21:26.35 konrado I was just about asking your opinion on existing converters to base on
21:27.16 brlcad you can always start from scratch and just figure it out as you go along ;)
21:30.50 konrado i would start with implementing from scratch and use a library if it get to complicated since there is more to learn starting from scratch
21:31.35 brlcad there is no library for sat
21:32.29 brlcad implementing vrml/x3d from scratch is something I'd hesitate even attempting unless you've written other complex parsers before .. that's nearly full SGML syntax
21:32.39 brlcad sgml/xml
21:32.57 brlcad that's NO fun... :)
21:33.25 konrado Wow!
21:35.25 konrado My interest in the open source is all about learning new stuff so i would put in my best
21:38.37 konrado It would mean alot for me to impliment something or add some enhancement to brlcad
21:41.16 brlcad I suggest giving x3d-g a try first (using openvrml), it's just a little bit easier and it'll give you a solid foundation to tackle harder geometry
21:41.39 konrado I learnt about brlcad from Izakey. We used to live in thesame neighborhood
21:41.48 brlcad ah, awesome!
21:42.00 brlcad he's a good guy
21:42.03 konrado also Check Nyah
21:42.17 brlcad he'd show you the book he helped write if I'd finish putting it in the mail
21:43.56 brlcad that's another thing I need to get back to .. reformatting that and getting stickers printed
21:44.21 konrado Ok goodnite
21:44.26 brlcad konrado: we're here all the time, so hang out and have fun ... someone is usually here ;)
21:44.38 brlcad share your progress if you like, even if nobody responds
21:44.42 brlcad many are listening ;)
21:44.46 brlcad cheers!
21:45.14 konrado Thanks i had a great time.
23:03.28 kanzure brlcad: missing yes, frontpage says "Algorithms for surface-surface intersection are in the works" and i don't see it in the source code
23:16.14 Notify 03BRL-CAD:n_reed * 62623 brlcad/branches/brep-debug/src/libbrep/boolean.cpp: fix handling of segments with opposite directions; don't depend on segment order for loop construction

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