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 |