01:23.25 |
CIA-23 |
BRL-CAD: 03Al Da Best 07http://brlcad.org * r4156
10/wiki/User:Al_Da_Best/devlog: Update 11th July |
01:23.25 |
CIA-23 |
BRL-CAD: 03Cprecup 07http://brlcad.org * r4157
10/wiki/User:Cprecup/GSoC2012_progress: 10-11/07/2012 - removed
entries from the hash table; memory for *value* allocated outside
the hash table; freed memory for these values |
01:24.12 |
*** join/#brlcad ibot
(~ibot@rikers.org) |
01:24.12 |
*** topic/#brlcad is BRL-CAD
Open Source Solid Modeling || http://brlcad.org || logs: http://ibot.rikers.org/%23brlcad/
|| Congratulations to our 11 accepted GSoC
students!! |
01:24.47 |
CIA-23 |
BRL-CAD: 03cprecup * r51462
10/brlcad/trunk/src/libged/dag.cpp: Don't allocate space for the
*value* field inside the bu_hash_entry. Instead, use a copy of a
pointer for the outside allocated memory. Added a method that frees
the space allocated for the *value* field. |
01:47.49 |
brlcad |
andrei_: toasted??? what happened (and that
was too long) |
01:48.16 |
brlcad |
andrei_: 1-2048 in steps of 2 should be better
if you restart -- plot what you had |
02:01.44 |
andrei_ |
It overheated and I found it shut down. Now
seems to be working. I did what you said ( steps of two ) and i
also decreased the average tests from 10 to 5 |
02:02.15 |
andrei_ |
the other script ( the one with files loop
aswell ) is moving so much better. |
02:02.17 |
brlcad |
kanzure: as far as I know, none of the big
commercial CAD engines perform truly exact evaluation |
02:02.50 |
brlcad |
even the watertight "exact" ones are merely
exact "within tolerance", which is pretty much as good as we're
going to get with floating point arithmetic |
02:03.09 |
kanzure |
what is the definition of tolerance
here? |
02:03.13 |
brlcad |
even with sampling methods, you can sample
below 0.0005 precision |
02:03.21 |
brlcad |
which is our baseline tolerance |
02:03.32 |
kanzure |
like i can define a tolerance on a dimension,
but what is the tolerance in the context of an intersection
curve? |
02:04.57 |
brlcad |
I'm referring to baseline computation
tolerance -- not engineering tolerances that might go on a
model |
02:05.13 |
brlcad |
the CAD system's built-in absolute
tolerance |
02:05.19 |
brlcad |
they all have that |
02:05.28 |
brlcad |
some are 0.1, 0.01, etc |
02:06.00 |
brlcad |
I used to have a paper that described all the
major kernel computation tolerances |
02:06.53 |
kanzure |
i'd be interested in seeing that. i still
don't understand this tolerance. |
02:08.13 |
brlcad |
generally speaking, it's akin to ULP with
floating point |
02:08.33 |
kanzure |
? |
02:08.40 |
brlcad |
it's the minimum difference between two
numbers for them to be considered different |
02:08.55 |
brlcad |
floating point hardware is ULP, but CAD
systems are much more coarse |
02:09.21 |
brlcad |
http://en.wikipedia.org/wiki/Unit_in_the_last_place |
02:10.29 |
brlcad |
basically if i have a 3D point at 0,0,0 and
0.1,0.0 -- are they the same point? |
02:10.36 |
brlcad |
for some CAD kernels, the answer is
yes |
02:11.02 |
brlcad |
for some it's 0.01,0,0 for others still it's
0.001,0,0 etc |
02:11.19 |
brlcad |
for BRL-CAD, our default absolute tolerance is
0.0005 |
02:12.58 |
brlcad |
32-bit single precision floating point
hardware is around 0.0000001 ULP so that's the best one might hope
to be able to achieve (with values near zero), but in practice it's
a number much bigger -- most are between 0.01 and 0.0001 |
02:13.44 |
brlcad |
what that means, from an algorithm development
standpoint |
02:15.20 |
brlcad |
is that I can subdivide to some given flatness
and then sample or use triangles or curve approximations, but the
stepping/sampling have to go below the absolute tolernace (step
size of 0.0005 in our case) and you will be effectively watertight
and numerically robust (to the quality of your input
data) |
02:16.45 |
brlcad |
segmenting to polylines generally sucks, for
example, but if I walk a NURBS curve in increments less than
0.0005, it will be exact "within tolerance" |
02:17.11 |
brlcad |
(it'll be slow too, you have to balance
numbers and do some other tricks like the subdivisioning) |
02:17.22 |
kanzure |
i see |
02:17.26 |
kanzure |
that makes sense, thank you |
02:19.22 |
brlcad |
that said, I agree that getting the bounding
subdivision working is more work so the natural first
step |
02:19.49 |
kanzure |
is more work than calculating intersection
curves? |
02:19.55 |
brlcad |
once we've isolated a "region of interest", we
can look into what method(s) make sense to get the calculations as
precise as we need |
02:20.21 |
kanzure |
i'm a little unclear on how to handle all the
edge cases, like singularities and other misfeatures |
02:20.42 |
brlcad |
yeah, because zoomed out the curves are not
well-behaved |
02:20.45 |
kanzure |
does that happen in the surface merging step,
or does that raise an exception during intersection? |
02:20.54 |
brlcad |
once you subdivide to a tiny region, things
get really stable |
02:21.10 |
kanzure |
sure |
02:21.53 |
kanzure |
but is a well-behaved algorithm supposed to
fail for singularities (like single point intersections)? |
02:25.17 |
brlcad |
the curve and/or surface evaluations are
well-behaved |
02:25.49 |
brlcad |
what you do with the result is a completely
separate matter... for that I'm a proponent of stable building
blocks |
02:30.02 |
brlcad |
a solid boundary representation based on euler
operators, point+point, point+curve, point+surface, curve+curve,
curve+surface, surface+surface |
03:18.45 |
kanzure |
is that an order of preference? |
03:43.06 |
*** join/#brlcad petaflot
(~root@85-218-19-88.dclient.lsne.ch) |
03:51.17 |
*** join/#brlcad anuragmurty
(~anurag@14.139.128.11) |
04:15.31 |
CIA-23 |
BRL-CAD: 0314.139.128.11 07http://brlcad.org * r4158
10/wiki/User:Anuragmurty: /* Development Log */ |
04:58.26 |
*** part/#brlcad anuragmurty
(~anurag@14.139.128.11) |
06:34.37 |
andrei_ |
brlcad : the script seems to be a bit faster
now, I hope it will finish today ( it s at 1200 now) |
06:35.54 |
andrei_ |
if there s time, could you please have a look
on the test unit that I pasted. It s only one function so it should
be easy to review. Thank you |
07:19.04 |
andrei_ |
brlcad : Sorry, I just saw your e-mail. I
shall take a closer look into the patches I submitted and make sure
they are all ok. |
08:52.45 |
CIA-23 |
BRL-CAD: 03phoenixyjll * r51463
10/brlcad/trunk/src/librt/ (opennurbs_ext.cpp opennurbs_ext.h): Add
a surface-surface intersection function (WIP). Surface trees are
generated and intersections of bounding boxes are
calculated. |
09:00.48 |
CIA-23 |
BRL-CAD: 03Phoenix 07http://brlcad.org * r4159
10/wiki/User:Phoenix/GSoc2012/Reports: /* Week 8 */ |
09:02.06 |
CIA-23 |
BRL-CAD: 03Phoenix 07http://brlcad.org * r4160
10/wiki/User:Phoenix/GSoc2012/Reports: /* Week 8 */ |
09:11.00 |
andrei_ |
Sorry to bother but I downloaded the
test_rbtree from sourceforge to fix it. I did but when I try to
recompile ( using make test_rbtree) I get two erros in parallel.c :
function bu_nice_set |
09:11.16 |
andrei_ |
error : Implicit declaration of function
getpriority & setpriority |
09:12.42 |
andrei_ |
is anyone else working on that ? should I fix
it ? |
11:27.53 |
CIA-23 |
BRL-CAD: 03brlcad * r51464
10/brlcad/trunk/src/librt/opennurbs_ext.cpp: extern is practically
meaningless on the function definition, it's for prototype
declarations prior to definitions or other compilation units.
consistency, return type goes on separate line too. |
11:34.22 |
brlcad |
andrei_: I don't think anyone else is getting
that -- cmake should have detected and enabled/disabled |
11:34.41 |
brlcad |
so yeah, feel free to fix it, or run make
test_rbtree/fast |
13:59.43 |
*** join/#brlcad andrei_
(~andrei@188.25.27.225) |
14:18.05 |
CIA-23 |
BRL-CAD: 03anrgmrty * r51465
10/brlcad/trunk/src/libged/voxelize.c: voxelize.c for voxelize
command |
14:18.53 |
CIA-23 |
BRL-CAD: 03anrgmrty * r51466
10/brlcad/trunk/src/libged/CMakeLists.txt: CMakelist including the
voxelize file |
14:19.30 |
CIA-23 |
BRL-CAD: 03anrgmrty * r51467
10/brlcad/trunk/src/libged/Makefile.am: Makefile.am including the
voxelize file |
16:04.24 |
CIA-23 |
BRL-CAD: 03starseeker * r51468
10/brlcad/trunk/ (46 files in 45 dirs): Get MAN_DIR working with
both DocBook and regular man pages, and put both in man instead of
down in the data directory. |
16:48.00 |
CIA-23 |
BRL-CAD: 03n_reed * r51469
10/brlcad/trunk/src/ (adrt/CMakeLists.txt mged/CMakeLists.txt):
ignore some files |
16:52.41 |
brlcad |
kanzure: I'd say that's an order of need, but
you could arguably skip the point+* functions |
16:53.08 |
brlcad |
by implementing them, though, you can deal
with a whole class of topology singularities |
16:55.40 |
CIA-23 |
BRL-CAD: 03n_reed * r51470
10/brlcad/trunk/src/other/ (3 files in 3 dirs): Include
fedex_python subdir to make it easier to build fedex_python for
testing. Make paths relative to avoid CMAKEFILES warning. |
17:09.38 |
kanzure |
okay |
17:35.24 |
CIA-23 |
BRL-CAD: 03n_reed * r51471
10/brlcad/trunk/src/other/step/src/fedex_python/src/ (5 files):
update fedex_python sources to SCL git 7ffbb73 versions, but use
the classes.h declaration of the FundamentalType func for
consistency |
17:51.35 |
CIA-23 |
BRL-CAD: 03n_reed * r51472
10/brlcad/trunk/src/other/step/ (5 files in 4 dirs): apply changes
for fedex_python from SCL git 10999e7 and 2dcfaed |
18:12.41 |
CIA-23 |
BRL-CAD: 03n_reed * r51473
10/brlcad/trunk/src/other/step/src/fedex_python/ (17 files in 2
dirs): update python scripts to SCL git ee13526 versions |
19:10.23 |
*** part/#brlcad piksi
(piksi@pi-xi.net) |
19:35.18 |
CIA-23 |
BRL-CAD: 03r_weiss * r51474
10/brlcad/trunk/include/analyze.h: Update to "analyze.h" to allow
"analyze.c" to build on Windows with Visual Studio 2008. |
19:36.23 |
CIA-23 |
BRL-CAD: 03r_weiss * r51475
10/brlcad/trunk/src/libged/analyze.c: Update to "analyze.c" to
allow building on Windows with Visual Studio 2008. |
19:41.58 |
CIA-23 |
BRL-CAD: 03starseeker * r51476
10/brlcad/trunk/src/other/step/ (12 files in 3 dirs): Start
building towards an SCL build that can work with or without
perplex/re2c/lemon. Fair bit more work to do - these are just the
fundamental essentials. |
19:43.14 |
brlcad |
http://www.cise.ufl.edu/research/SurfLab/papers/1109reyes.pdf |
19:44.09 |
brlcad |
maybe of interest, a method to guarantee that
you sample below a specified tolerance |
19:55.19 |
CIA-23 |
BRL-CAD: 03starseeker * r51477
10/brlcad/trunk/src/brlman/ (CMakeLists.txt brlman.tcl
brlman.tcl.in): Generalize the brlman script - need to deal with
potentially arbitrary man dir locations. |
19:56.25 |
CIA-23 |
BRL-CAD: 03starseeker * r51478
10/brlcad/trunk/misc/CMake/ (5 files): Sync the Find and Util
scripts for perplex/lemon/re2c. |
20:01.09 |
CIA-23 |
BRL-CAD: 03starseeker * r51479
10/brlcad/trunk/src/other/perplex/perplex.cpp: Add missing
newline |
20:05.33 |
CIA-23 |
BRL-CAD: 03Stattrav 07http://brlcad.org * r4161
10/wiki/User:Stattrav/GSoC2012_log: Updation of the logs.
Frontend |
20:06.18 |
CIA-23 |
BRL-CAD: 03Stattrav 07http://brlcad.org * r4162
10/wiki/User:Stattrav/GSoC2012_log: Updation of the logs.
Frontend |
20:10.23 |
CIA-23 |
BRL-CAD: 03n_reed * r51480
10/brlcad/trunk/src/other/perplex/scanner_template.c: remove var
'abs' to avoid shadowing a global symbol of the same name |
20:22.55 |
CIA-23 |
BRL-CAD: 03starseeker * r51481
10/brlcad/trunk/ (10 files in 4 dirs): Don't want a BRL-CAD path
hardcoded into the perplex CMake macros, now that the prospect of
them being used elsewhere is real. |
20:32.44 |
CIA-23 |
BRL-CAD: 03starseeker * r51482
10/brlcad/trunk/ (2 files in 2 dirs): Try to be a little more
helpful with the template error message. |
20:54.27 |
CIA-23 |
BRL-CAD: 03starseeker * r51483
10/brlcad/trunk/src/other/perplex/perplex.cpp: Teach perplex to
output a version number. |
21:00.56 |
CIA-23 |
BRL-CAD: 03starseeker * r51484
10/brlcad/trunk/src/other/perplex/perplex.cpp: Fix tabbing on
perplex usage |
21:24.33 |
CIA-23 |
BRL-CAD: 03n_reed * r51485
10/brlcad/trunk/src/other/step/src/express/ (expparse.y
token_type.h): use generated lemon variables to avoid unused
warnings |
22:42.45 |
CIA-23 |
BRL-CAD: 03n_reed * r51486
10/brlcad/trunk/src/other/step/src/clstepcore/ (7 files): missed ws
and doxification changes from SCL git f9b9383 |