00:12.47 |
brlcad |
kunigami: they imply different concepts, so
yes |
00:13.07 |
brlcad |
the language just describe *how* something
should be rendered |
00:13.21 |
brlcad |
the shader system implements the
rendering |
00:23.11 |
kunigami |
hmm, in liboptical we have a shader language
or a shader system? |
00:33.38 |
brlcad |
heh, system |
00:35.38 |
brlcad |
the shader strings we set on objects could be
construed as a primitive language, example: "plastic di=0.4 sp=0.2"
another "stack {{plastic} {texture src="file"
name="foo.png"}}" |
00:39.42 |
kunigami |
cool. I think I'm understanding |
01:05.44 |
kunigami |
I saw your commentary on my patch. I'm
switching from malloc/strncpy to the wrapped version. bu_malloc has
a const char *parameter, but I couldn't get its meaning from the
commentaries. Looking its definition, it seems that it has debug
purposes (or not?). So I'm passing NULL to this function. Is that
ok? |
01:10.44 |
*** join/#brlcad crazy_imp
(~mj@a89-182-222-119.net-htp.de) |
02:25.29 |
*** part/#brlcad kunigami
(~kunigami@201.53.192.197) |
03:21.48 |
starseeker |
full movie clocks in at just over a
gig |
03:34.14 |
starseeker |
and just over 45 minutes |
03:34.36 |
starseeker |
layout's a bit skewed by trunk and brlcad
always being present |
03:36.25 |
starseeker |
brlcad: I'll probably have to bring you a dvd
- I don't know that my upload connection will tolerate such a huge
upload even if bzflag has room |
06:18.42 |
*** join/#brlcad bhinesley
(~bhinesley@adsl-99-125-83-101.dsl.bkfd14.sbcglobal.net) |
06:20.51 |
bhinesley |
I'm having build issues in Windows/Cygwin. Is
Cygwin used to build the releases of BRL-CAD? |
06:23.58 |
bhinesley |
*windows releases |
06:33.39 |
CIA-52 |
BRL-CAD: 0399.125.83.101 07http://brlcad.org * r2761
10/wiki/User:Bhinesley: /* Checklist */ Updated status |
06:34.33 |
CIA-52 |
BRL-CAD: 0399.125.83.101 07http://brlcad.org * r2762
10/wiki/User:Bhinesley: /* Checklist */ removed item no longer
working on |
06:43.12 |
*** join/#brlcad packrat
(~packrator@99-67-225-40.lightspeed.livnmi.sbcglobal.net) |
06:52.58 |
*** join/#brlcad d_rossberg
(~rossberg@BZ.BZFLAG.BZ) |
07:28.05 |
bhinesley |
Nevermind, found README.Windows |
10:05.04 |
brlcad |
starseeker: more importantly, does the graph
go nuts after 2004? |
10:06.13 |
brlcad |
bhinesley: it's not, but it 'should' build ..
it's just not a configuration that's tested very often at all.
shouldn't be more than a few minor tweaks but if it is, that could
be a patch submission |
10:12.42 |
*** join/#brlcad sachinjain
(~sachin@117.211.88.150) |
10:13.16 |
brlcad |
hello sachinjain, what's your
question? |
10:13.57 |
sachinjain |
yeah... |
10:14.27 |
sachinjain |
I was talking about the project....."Vector
output from raytracing" |
10:15.31 |
sachinjain |
I wanted to know.....how does brlcad generates
raster images? |
10:15.40 |
brlcad |
through raytracing :) |
10:16.05 |
dloman |
Mernin all! |
10:16.14 |
sachinjain |
so....it generates a set of pixels? |
10:16.17 |
brlcad |
so a ray is fired for every pixel, if it hits
something, that pixel is shaded according to the properties of what
it hits |
10:16.21 |
brlcad |
hello dloman |
10:16.46 |
sachinjain |
ok... |
10:17.22 |
sachinjain |
so...what do u mean by "generate vector
drawings" |
10:17.42 |
sachinjain |
we can only generate vector drawings if we
assume that we have raster image |
10:18.12 |
brlcad |
the idea with getting vector output is
two-fold -- you either are going to still shoot rays and
interpolate vector lines (i.e., edge/object detection) ... OR ...
you're not really going to shoot rays but instead extrace outline
representations "somehow" and project those onto a vector image
plane |
10:18.44 |
brlcad |
s/extrace/extract/ |
10:20.07 |
sachinjain |
I have done a project....where I have to a
construct a vector image out of raster image |
10:20.18 |
sachinjain |
by using bezier splines |
10:20.30 |
brlcad |
that would be the first method I
mentioned |
10:20.37 |
sachinjain |
hmmm |
10:21.08 |
brlcad |
it can work that way, but you have to be
really careful about how those curves are constructed |
10:21.36 |
brlcad |
they don't tend to sample well for small
resolution images |
10:21.43 |
sachinjain |
yeah |
10:21.57 |
sachinjain |
how small resolution images are we talkin
about? |
10:22.07 |
brlcad |
you either need to really increase the grid
size or you need adaptive sampling where there are areas of large
derivatives |
10:22.24 |
brlcad |
it's user-specified, so pretty much
anything |
10:22.33 |
brlcad |
it should still give a sensible result
though |
10:22.59 |
brlcad |
if it's basically giving the raster image
scaled, that's rather useless |
10:23.18 |
brlcad |
the whole point is to have smooth edges that
scale and interpolate cleanly |
10:24.43 |
brlcad |
that's why the method that doesn't involve
sampling is superior, but a bit harder |
10:25.09 |
sachinjain |
so what other method you can
suggest? |
10:25.33 |
brlcad |
you extract outline representations "somehow"
and project those onto a vector image plane |
10:25.45 |
sachinjain |
you mean the second approach |
10:25.45 |
sachinjain |
? |
10:26.01 |
brlcad |
that would be the other method |
10:26.35 |
brlcad |
note that there are lots of degrees of freedom
here |
10:27.14 |
sachinjain |
what do you mean by "extracting outline
representations"? |
10:27.31 |
brlcad |
you could, for example, query each individual
primitive, shoot a grid of rays at it, evaluate bezier curves for
that outline, then perform boolean evaluation of the bezier curves
all the way back up to the resulting vector iamge |
10:28.28 |
brlcad |
or instead of shooting a grid of rays, you
could use the conversion to a boundary representation format
(NURBS) and then calculate the edge contours from the NURBS
surface, and once again, perform boolean eval of those curves up
the hierarchy |
10:30.45 |
*** join/#brlcad AbhijitKane
(~Abhijit@111.93.5.194) |
10:31.44 |
brlcad |
sachinjain: feel free to post any more
questions if they come up -- it's a tricky subject but if you
already know how to interpolate bezier curves then you already have
an advantage |
10:31.57 |
sachinjain |
yeah.....I know |
10:32.01 |
brlcad |
otherwise, I have to go walkabout for a bit to
tame this congestion |
10:32.02 |
sachinjain |
how to interpolate |
10:32.54 |
sachinjain |
but...I am still trying to understand your
above suggestion |
10:37.10 |
sachinjain |
ok.... |
10:37.21 |
sachinjain |
so what I understood from your
explaination |
10:37.24 |
sachinjain |
is that |
10:37.36 |
sachinjain |
for every object in a scene |
10:37.51 |
sachinjain |
we find the outline of that object |
10:38.09 |
sachinjain |
construct a bezier curve on that
outline |
10:38.10 |
brlcad |
yes |
10:38.29 |
sachinjain |
n then do some...."boolean
evaluation" |
10:38.41 |
sachinjain |
what is this boolean evaluation? |
10:39.12 |
brlcad |
http://en.wikipedia.org/wiki/Constructive_solid_geometry |
10:39.42 |
brlcad |
so look at that image on the bottom
right |
10:40.04 |
brlcad |
that's basically our CSG hierarchy, with
primitives at the bottom, boolean operations that combine them up
to the final image on the top |
10:40.10 |
sachinjain |
http://en.wikipedia.org/wiki/File:Csg_tree.png |
10:40.12 |
sachinjain |
this one? |
10:40.16 |
brlcad |
we want a vector version of what is on
top |
10:40.24 |
brlcad |
yes |
10:41.08 |
sachinjain |
hmm |
10:41.15 |
sachinjain |
that seems pretty interesting |
10:41.22 |
brlcad |
gotta run, others in here should be able to
help further .. look forward to talking more! |
10:42.21 |
sachinjain |
yeah sure |
10:42.26 |
sachinjain |
some specific time? |
10:43.01 |
sachinjain |
last question...what do I need to have...to
work upon this project? |
10:44.44 |
sachinjain |
Hi starseeker |
10:45.52 |
dloman |
sachinjain: 'what do I need to have' ....as in
software installed on your computer? |
10:46.24 |
sachinjain |
dloman: I didn't got u |
10:46.25 |
sachinjain |
? |
10:48.00 |
dloman |
your question: "What do I need to have...to
work upon this project?" |
10:48.12 |
sachinjain |
yeah |
10:48.15 |
dloman |
do you mean: "What software do i need to have
installed to work on this project?" |
10:48.30 |
sachinjain |
I already have that software
installed |
10:48.51 |
sachinjain |
trying to go through its
documentation |
10:49.16 |
sachinjain |
is there any specific part of documentation
which I need to go through...for this project |
10:50.25 |
dloman |
you are working on the "generate vector
drawings" that you and brlcad were talking about just a few minutes
ago? |
10:50.35 |
sachinjain |
yup |
10:50.54 |
sachinjain |
I think I got the whole idea of the
project |
10:51.38 |
dloman |
I'm no expert, but I'd suggest diving into the
code. libbu was the most informative library for me when I
started, and I'd imagine libRT will be very good for you
also. |
10:54.42 |
sachinjain |
where can I find these libraries? |
10:55.04 |
dloman |
in the source code: /src/libbu and
/src/librt |
10:55.32 |
dloman |
their header files would also be good to start
with: /include/bu.h and /include/rt.h |
10:59.46 |
sachinjain |
there is no such file in this path |
10:59.57 |
sachinjain |
:-/ |
11:00.16 |
sachinjain |
I am working on windows |
11:00.33 |
sachinjain |
and the version installed is 7.14.8 |
11:00.45 |
dloman |
ah, winderz. |
11:00.59 |
sachinjain |
should I do my work in linux? |
11:01.03 |
dloman |
okay then, wherever you have it
installed: |
11:01.13 |
dloman |
<installpath>/include/bu.h |
11:01.25 |
dloman |
<installpath>/include/rtfunc.h |
11:01.32 |
dloman |
<installpath>/include/rtgeom.h |
11:01.33 |
sachinjain |
no file with name "bu.h" |
11:01.58 |
sachinjain |
I can only find "rtgeom.h" |
11:01.59 |
dloman |
well that's not right |
11:02.11 |
dloman |
did you download binaries or the
source? |
11:02.32 |
sachinjain |
just the exe files |
11:02.33 |
sachinjain |
:D |
11:02.36 |
sachinjain |
file* |
11:02.47 |
dloman |
ah, well then that's the issue. |
11:02.58 |
dloman |
if you are going to develop, you are going to
need to get an SVN checkout |
11:02.59 |
sachinjain |
hmm |
11:03.08 |
sachinjain |
on eclipse? |
11:03.41 |
dloman |
that's one way to do it, however, I have never
built brlcad using eclipse... so i dunno if its possible. |
11:03.55 |
dloman |
most windows developers for brlcad use some
flavor of visual studio |
11:04.02 |
sachinjain |
ohhh |
11:04.14 |
sachinjain |
btw...is it easy to do through
linux? |
11:04.28 |
dloman |
in my opinion, yeah, much easier. |
11:05.03 |
sachinjain |
ok...so I can work on one of my
servers.... |
11:05.06 |
sachinjain |
it has got linux |
11:05.40 |
sachinjain |
how do I get binaries or source on
linux? |
11:05.56 |
dloman |
how familiar with *nix are you? |
11:06.22 |
sachinjain |
never heard of it |
11:06.24 |
sachinjain |
:-/ |
11:06.45 |
dloman |
*nix == unix, linux, bsd, etc |
11:06.48 |
dloman |
general term |
11:06.52 |
dloman |
aka 'not windows' |
11:06.56 |
sachinjain |
kk |
11:06.57 |
sachinjain |
kk |
11:07.09 |
sachinjain |
very familiar |
11:07.10 |
sachinjain |
then |
11:07.25 |
sachinjain |
I do all my coding on unix only |
11:07.42 |
dloman |
just get an svn checkout of the brlcad
repository. |
11:08.27 |
dloman |
http://sourceforge.net/scm/?type=svn&group_id=105292 |
11:08.59 |
dloman |
aka: svn co https://brlcad.svn.sourceforge.net/svnroot/brlcad/brlcad/trunk
directoryOnYourHD |
11:10.13 |
sachinjain |
so...I have to just run this
command.... |
11:10.18 |
sachinjain |
"svn co https://brlcad.svn.sourceforge.net/svnroot/brlcad
brlcad" |
11:10.40 |
dloman |
well, that's the generic 'svn checkout'
command that sourceforge gives |
11:10.49 |
dloman |
the proper version of it is what i wrote
above |
11:11.03 |
dloman |
are you familiar with using Subversion at
all? |
11:11.12 |
sachinjain |
kk |
11:11.19 |
sachinjain |
I have used once |
11:11.24 |
sachinjain |
while building a compiler |
11:11.31 |
dloman |
okie |
11:11.42 |
dloman |
there's plenty of tutorials on the
net |
11:11.49 |
dloman |
but all you really need to know are: |
11:12.02 |
dloman |
svn checkout (or: svn co) |
11:12.10 |
dloman |
svn commit (or: svn ci) |
11:12.12 |
dloman |
and |
11:12.15 |
dloman |
svn up |
11:12.20 |
sachinjain |
okie |
11:12.32 |
sachinjain |
I am following them |
11:12.58 |
dloman |
however, commit permissions are not
automatically granted and you will likely have to 'submit a patch'
via the sourceforge website. |
11:13.14 |
dloman |
once you get the code checked out, lemme
know. |
11:13.21 |
sachinjain |
kk |
11:13.23 |
*** join/#brlcad packrat
(~packrator@99-67-225-40.lightspeed.livnmi.sbcglobal.net) |
11:13.26 |
dloman |
i *should* be here for the next 8 (ish)
hours. |
11:13.44 |
sachinjain |
I will try to do that...as soon as
possible |
11:15.00 |
dloman |
is diggin the new GSoC web
UI. |
11:24.32 |
dloman |
hrm... where's my profile editing link? Not
liking the new UI that much anymore... its pretty, but that's about
it. |
11:27.33 |
dloman |
Nice... I can't 'apply' to be a mentor without
first applying to be part of GSoC. But the only way to be part of
GSoC is to apply to be a mentor. LOL i love it. |
11:30.30 |
sachinjain |
hey dloman....where are you from? |
11:30.53 |
dloman |
I am currently living in Pennsylvania,
USA |
11:30.54 |
dloman |
you? |
11:31.30 |
sachinjain |
I am living in Hyderabad, india |
11:32.21 |
sachinjain |
so...you are one of the developer in
BRL-CAD? |
11:33.58 |
dloman |
A newbie, but yeah :) |
11:34.24 |
sachinjain |
it seems a very big open source
project |
11:39.05 |
sachinjain |
how much time does it generally takes to
download all the source and binaries... |
11:39.19 |
sachinjain |
through brl-cad repository |
11:39.48 |
sachinjain |
its taking a hell lot of time |
11:43.54 |
dloman |
its abig repo. we maintain nearly all
required deps internally in case they are not present on the
current system. |
11:54.52 |
sachinjain |
okie....while other files are being
downloaded |
11:54.57 |
sachinjain |
I have |
11:55.01 |
sachinjain |
"ru.h" |
11:55.09 |
sachinjain |
"rtedge.h" |
11:55.15 |
sachinjain |
n "rgeom.h" |
11:55.22 |
sachinjain |
what should I do with them? |
11:55.39 |
dloman |
I'd say read them. Get to know the code base
a bit. |
11:56.04 |
dloman |
before you can do any develop that's worth
anything, you have to get familiar with the existing
code. |
11:56.18 |
dloman |
not *all* of it, but enough to know where you
will be primarily working. |
11:57.53 |
sachinjain |
"ru.h" is very big |
11:58.05 |
sachinjain |
how can I get familiar with something like
that |
11:58.07 |
dloman |
bu.h? |
11:58.12 |
sachinjain |
yeah.... |
11:58.15 |
sachinjain |
"bu.h" |
11:58.52 |
dloman |
I'd think that looking at the build system,
seeing what executables and libraries are made is a good
start |
11:59.19 |
dloman |
launch mged and get a feel for what brlcad's
primary modeler looks like. |
11:59.39 |
dloman |
then start tracing backwards from the build
system. |
11:59.50 |
dloman |
see what the app touches in the way of source
files. |
12:00.15 |
dloman |
that should give you a feel for where your
project fits in to the big picture, 'source-wise' |
12:00.54 |
dloman |
its a big code base and takes years to get
familiar with, so don't sweat it if its still mostly foriegn to you
at the end of hte summer :) |
12:01.14 |
*** join/#brlcad alex_joni
(~alex_joni@emc/board-of-directors/alexjoni) |
12:04.04 |
CIA-52 |
BRL-CAD: 03davidloman * r43974
10/geomcore/trunk/include/IDataSource.h: Require classes
implementing IDataSource to have a init() fn. (Even if its a stub).
This is needed for both the FS data source(DS) and SVN
DS. |
12:05.06 |
CIA-52 |
BRL-CAD: 03davidloman * r43975
10/geomcore/trunk/ (include/FileDataSource.h
src/GS/FileDataSource.cxx): Implement minimal init() checks for the
FS DataSource. |
12:05.53 |
sachinjain |
is there any README file? |
12:06.06 |
dloman |
yes, should be in the root of the
checkout. |
12:12.34 |
CIA-52 |
BRL-CAD: 03davidloman * r43976
10/geomcore/trunk/include/FileDataSource.h: Oops. Can't make an
interface mandated function private. Change visibility to
public. |
12:22.42 |
CIA-52 |
BRL-CAD: 03davidloman * r43977
10/geomcore/trunk/src/GS/FileDataSource.cxx: Log success/failure of
IO tests on the repo path. |
12:24.37 |
dloman |
brlcad: How does Ohloh know about the brlcad
repo? Did you have to add the url to ohloh's database or did it
just all happen automagically? |
12:25.00 |
dloman |
I only ask cause it seems that ohloh isn't
seeing the /geomcore module. |
12:25.13 |
dloman |
and was wondering if that new module needs to
be added somewhere |
12:26.40 |
dloman |
hah, nevermind. |
12:58.19 |
CIA-52 |
BRL-CAD: 03davidloman * r43978
10/geomcore/trunk/src/GS/GeometryService.cxx: Quick Type
Fix |
12:59.53 |
CIA-52 |
BRL-CAD: 03davidloman * r43979
10/geomcore/trunk/src/GS/DataManager.cxx: Wire in FileDataSource
init() call and return check. |
13:08.51 |
dloman |
digs into coreInferface.
Need to get ejumakated on dis. |
13:15.43 |
*** join/#brlcad AbhijitKane
(~Abhijit@111.93.5.194) |
13:30.23 |
CIA-52 |
BRL-CAD: 03Dloman 07http://brlcad.org * r2763
10/wiki/TypeOnlyMsg: Enter the simple wiki page for
TYPEONLYMSG |
13:32.03 |
CIA-52 |
BRL-CAD: 03Dloman 07http://brlcad.org * r2764
10/wiki/NetMsgTypes: Admit that this list is not up to date
:( |
13:36.02 |
``Erik |
*readreadread* yowza, blew out my buffer this
weekend O.o |
13:37.28 |
CIA-52 |
BRL-CAD: 03Dloman 07http://brlcad.org * r2765
10/wiki/GenericFourBytesMsg: Remove caps |
13:37.40 |
sachinjain |
Dloman: From where should I start checking
binary files |
13:37.45 |
sachinjain |
I am stuck all along |
13:37.53 |
dloman |
'stuck' ? |
13:38.00 |
dloman |
as in you are lost in the code ? |
13:38.06 |
sachinjain |
I mean...I dont know from where should I
start |
13:38.17 |
sachinjain |
which file should I look into |
13:38.28 |
sachinjain |
first |
13:38.42 |
dloman |
have you compiled yet? |
13:38.45 |
CIA-52 |
BRL-CAD: 03Dloman 07http://brlcad.org * r2766
10/wiki/GenericEightByteMsg: Write up description for
GenericEightByteMsg |
13:39.12 |
sachinjain |
I have run.... |
13:39.15 |
sachinjain |
sh autogen.sh |
13:39.19 |
sachinjain |
./configure |
13:39.22 |
CIA-52 |
BRL-CAD: 03Dloman 07http://brlcad.org * r2767
10/wiki/GenericEightByteMsg: Drat! CopyPaste strikes again!
Fixed. |
13:39.31 |
sachinjain |
n now.."make" is running |
13:40.17 |
dloman |
``Erik: any 'esssssspert' advice on where a
good starting point for learning the code is? |
13:40.42 |
``Erik |
um, to what end? there're lots of good
starting points for different end pionts |
13:40.43 |
``Erik |
points |
13:41.13 |
dloman |
"generate vector drawings" |
13:41.45 |
sachinjain |
yeah...erik... |
13:41.46 |
``Erik |
hrm, like an svg outputting tool with an rt
interface? lemme read the wiki |
13:41.49 |
sachinjain |
please help |
13:42.57 |
``Erik |
obviously, check out http://brlcad.org/wiki/Google_Summer_of_Code/Checklist |
13:42.59 |
CIA-52 |
BRL-CAD: 03Dloman 07http://brlcad.org * r2768
10/wiki/NetMsgTypes: Add in some descriptions for the simpler
messages |
13:43.45 |
dloman |
``Erik: FYI the wiki was correct on the PING
and PONG. HEADER + a single 8byte field. |
13:43.56 |
``Erik |
doh, musta missed that |
13:44.11 |
``Erik |
http://brlcad.org/wiki/Vector_output_from_raytracing
lists some useful tools/files to look at |
13:44.32 |
dloman |
no worries, i only write wiki pages in
bad-engilsh and stupid. You should feel good you're not fluent in
those :) |
13:45.18 |
``Erik |
nah, I'm used to seeing pings only done as
"send a ping, save my time locally... wait for the response,
compare it to the local time", since clock drift between two
machines is inevitable |
13:46.13 |
``Erik |
my guess is that brlcad means to take an
approach similar to rtedge (src/rt/viewedge.c) to sample and then
string it together into a vector set by line/curve
fitting |
13:47.02 |
``Erik |
so running rtedge and looking at viewedge.c
would be the right beginning point for the BRL-CAD side, the papers
good for the algorithm, then figuring out the ps/pdf/svg format for
the write phase |
13:47.18 |
sachinjain |
just these two files |
13:47.28 |
sachinjain |
"src/rt/viewedge.c" |
13:47.36 |
sachinjain |
"src/rt/view.c" |
13:47.37 |
sachinjain |
?? |
13:47.54 |
``Erik |
that's the starting point... in understanding
how it works, many other files will be involved :) all the way down
to libbu stuff |
13:48.33 |
``Erik |
a tool like cscope (or an IDE that does that
kind of thing) can be very useful in exploring |
13:50.38 |
``Erik |
I wonder if finishing up the 'time per ray'
raytracer would be a good "acceptance patch" |
13:52.58 |
dloman |
hey brlcad: Can i write the GS in java? I'd
be done by the end of the day! ;) |
13:53.16 |
dli |
looks like brlcad need to update 7.18.4 ETA
daily :) |
14:00.14 |
d_rossberg |
dloman: any questions about the
coreInferface? |
14:00.28 |
*** join/#brlcad sachi1325_
(75d3557b@gateway/web/freenode/ip.117.211.85.123) |
14:02.52 |
dloman |
d_rossberg: not yet, still reading
:) |
14:09.30 |
starseeker |
dloman: depending on where we are Wednesday,
you may have to try it :-/ |
14:09.53 |
dloman |
i just cant seem to program fast in c or c++
:/ |
14:10.13 |
starseeker |
is down the svn
rabbithole |
14:10.41 |
starseeker |
dloman: if it really would help, can you
prototype the whole thing in java in a day and have something
working? |
14:10.55 |
dloman |
quite likely |
14:11.26 |
starseeker |
unless ``Erik disagrees, I'd say having
SOMETHING that runs is critical right now |
14:11.42 |
dloman |
currently, it runs just fine =D |
14:11.50 |
starseeker |
geometry is moving across the wire? |
14:12.05 |
dloman |
.... it runs just fine! =D |
14:12.23 |
starseeker |
lol |
14:13.05 |
starseeker |
I can disassemble and reassemble most (not
all) of the .g, but I can't yet apply changes |
14:13.37 |
starseeker |
that's what I'll be having to tackle over the
next few days |
14:14.39 |
starseeker |
I'm hoping the file backend will suffice to
iron out the "moving bits of geometry across the wire" issues (even
if the .g file is a rather... large bit of geometry) |
14:15.50 |
starseeker |
dloman: I'm guessing byte arrays of the
bu_external variety are well suited to your needs? |
14:16.22 |
dloman |
so long as its got ALL the data for the
dbobject, yup! |
14:16.43 |
starseeker |
one of the outstanding issues is why the
region_id information is getting stripped by the approach I am
taking |
14:17.27 |
starseeker |
I'm using the internal to external and
external to internal routines, which is pretty much the same level
the dbio layer uses |
14:18.12 |
starseeker |
unfortunately, that means where precisely I'm
losing the region_id info is a bit murky |
14:19.08 |
dloman |
``Erik: lynx is pretty neat :) |
14:20.52 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r43980
10/geomcore/trunk/src/GS/testclient/gstestclient.c: add start
(clientside) timestamp |
14:22.00 |
CIA-52 |
BRL-CAD: 03davidloman * r43981
10/geomcore/trunk/prototyping/: Add in a prototyping directory for
in process work. |
14:33.45 |
dloman |
starseeker: so what did we descide: we are, or
are NOT compatable with the Apache license? |
14:33.53 |
dloman |
Apache v2.0 that is. |
14:33.57 |
starseeker |
we're fine to use it, we just can't mix
code |
14:34.32 |
starseeker |
that's why the big change with the svnTest
app |
14:34.57 |
starseeker |
I originally started by taking the svn client
code and modifying, but now I'm just using the library
APIs |
14:35.21 |
dloman |
kk |
14:35.42 |
starseeker |
which would have had to happen eventually
anyhow, since the client APIs are too high level for us, but it
kills two birds with one stone |
14:36.13 |
starseeker |
if we ever do a geometry specific backend,
that'll probably have to be Apache |
14:36.14 |
*** join/#brlcad adityag
(~ADITYA@182.237.144.88) |
14:36.32 |
starseeker |
but as with most things, we'll do that if/when
need to so it's not an immediate concern |
14:36.59 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r43982
10/geomcore/trunk/src/GS/testclient/gstestclient.c: woops, bufp,
not buf |
14:38.32 |
starseeker |
``Erik: do you know enough about the db
read/write interface to know why rt_db_cvt_to_external5 would strip
out region_id? |
14:39.43 |
starseeker |
I thought the functions it called would
preserve attributes... |
14:42.05 |
starseeker |
I know why _GLOBAL information isn't there,
but the region_id thing I don't get |
14:59.10 |
``Erik |
region_id isn't an attribute, though.. it's a
field, no? |
15:03.21 |
``Erik |
hrm, hm, looks like it's also in the standard
attribute set |
15:06.30 |
*** join/#brlcad Stattrav
(~Stattrav@111.93.134.142) |
15:06.30 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
15:06.49 |
CIA-52 |
BRL-CAD: 03davidloman * r43983
10/geomcore/trunk/ (3 files in 2 dirs): Stub in interface
requirements for and FileDataSource implementation of putObj(...),
the ability to put a single db object into the datasource |
15:07.27 |
``Erik |
looks like there's stuff to set the attribute
to be the same as the GIFT region_id code in
rt_comb_export5 |
15:07.47 |
``Erik |
librt/comb/comb.c:405 |
15:14.36 |
dloman |
d_rossberg: are there samples of how to use
your classes to load/save/create .g files anywhere? |
15:14.54 |
*** join/#brlcad adityag1
(~ADITYA@182.237.144.88) |
15:20.21 |
d_rossberg |
http://brlcad.org/wiki/CoreInterface_PrintTitle_Example
is a simple example of how to load a database and perform a simple
operation on it |
15:21.07 |
dloman |
awesome thanks |
15:21.20 |
d_rossberg |
however, first you have to decide which kind
of database you want: |
15:21.41 |
d_rossberg |
readonly file, read/write file or in
memory |
15:21.54 |
dloman |
reading thru your code, I think 'memory' is
best for what I am working on. |
15:22.07 |
d_rossberg |
there it depends if you may or have to save
you changes |
15:22.31 |
dloman |
just looking to to read/write from/to disk
quickly |
15:24.35 |
d_rossberg |
to get an in memory database in the above
example you have to replace BRLCAD::ConstDatabase by
BRLCAD::MemoryDatabase, that's all |
15:25.17 |
dloman |
and, to verify, i can still dump an in memory
dtaabase to file simply by calling save()... correct? |
15:25.33 |
d_rossberg |
correct |
15:25.41 |
dloman |
awesome. thanks! =D |
15:25.54 |
d_rossberg |
for creating elements and saving the database
see e.g. http://brlcad.org/wiki/CoreInterface_Hallo_World_Example |
15:28.13 |
d_rossberg |
and http://brlcad.org/wiki/CoreInterface_Tree_Walker_Example
for walking down the tree and writing the elements names to stdout
(as an example) |
15:29.27 |
dloman |
nice. just read all your wiki pages. Dunno
why i didn't think to check there, lol |
15:30.45 |
d_rossberg |
you may find the Get(objectName) and
Set(object) methods handy too (in Constdatabase.h and
Database.h) |
15:39.48 |
*** join/#brlcad kunigami
(~kunigami@loco-gw.ic.unicamp.br) |
15:44.56 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r43984
10/geomcore/trunk/src/GS/testclient/gstestclient.c: add more
display stuff |
15:57.28 |
*** part/#brlcad adityag1
(~ADITYA@182.237.144.88) |
15:59.09 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r43985
10/geomcore/trunk/src/GS/testclient/gstestclient.c:
indent |
16:00.11 |
CIA-52 |
BRL-CAD: 03davidloman * r43986
10/geomcore/trunk/include/ (brlcad/ conf/): Drop unused
headers |
16:00.30 |
dloman |
``Erik: got a second to swing by? |
16:00.41 |
``Erik |
sure |
16:01.21 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r43987
10/geomcore/trunk/src/GS/ (21 files in 2 dirs): indent |
16:05.56 |
*** part/#brlcad sachinjain
(~sachin@117.211.88.150) |
16:09.06 |
dloman |
Hrm... too bad d_rossberg logged off. it
looks like his common.h is trying to clobber brlcad's common.h
:/ |
16:12.57 |
dloman |
never mind on that, it looks as thought
coreInterface's common.h isn't being installed! Ack! |
16:16.39 |
CIA-52 |
BRL-CAD: 03davidloman * r43988 10/rt^3/trunk/
(7 files in 3 dirs): Change core interface's common.h to cicommon.h
and add it to cmake's install routine. It is needed for using the
coreInterface libraries. |
16:17.30 |
dloman |
There. that's a quick fix. renamed common.h
to cicommon.h and installed it :) |
16:18.27 |
dloman |
``Erik: FYI, im wiring up geomcore to have
libge as an external dep. So soon, you will need to have rt3
compilied and installed for geomcore to compile nad link. |
16:18.36 |
dloman |
i haven't committed that yet, just giving a
heads up |
16:18.59 |
dloman |
'compile nad link' ....lol that paints a
funny picture. |
16:36.09 |
dloman |
starseeker: you still around? |
16:37.39 |
*** join/#brlcad AbhijitKane
(~Abhijit@111.93.5.194) |
16:38.13 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r43989
10/geomcore/trunk/src/GS/testclient/gstestclient.c: add
login |
16:42.25 |
*** join/#brlcad Stattrav
(~Stattrav@117.192.137.238) |
16:42.25 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
16:45.52 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r43990
10/geomcore/trunk/src/libNet/netMsg/NetMsg.cxx: print msgType as
hex |
17:06.36 |
*** join/#brlcad siddharth
(~siddharth@117.211.88.150) |
17:13.52 |
dloman |
starseeker: Had a thought. You could hack
that video into 10 minute segments and put it on youtube.... let
them deal with the storage. |
17:20.04 |
CIA-52 |
BRL-CAD: 03Erik 07http://brlcad.org * r2769
10/wiki/NetMsgTypes: guessing at payloads |
17:20.33 |
starseeker |
figured to run it by brlcad
and see what he thinks of it - probably more tweaking to
do |
17:20.50 |
starseeker |
now that the streaming thing appears to work,
he can tweak it on his own box too |
17:25.59 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r43991
10/geomcore/trunk/src/utility/GSUuid.cxx: Tricky, uuid returns the
length including the trailing 0 where std::string does NOT want it.
Was causing an extra byte to be written into the packets. |
17:29.01 |
dloman |
``Erik: was that was was causing the
lockup? |
17:29.21 |
dloman |
...cause I thought I fixeded that one
already... :/ |
17:29.48 |
brlcad |
thx starseeker -- I was thinking that there'd
probably need to be some more tweaking |
17:30.24 |
brlcad |
i guess sachinjain was having quite a tough
time with some basic concepts |
17:31.22 |
``Erik |
nah, but it was causing issues... caused an
extra 0 to be written behind the uuid, since the geomclient used
the same function, it worked (both sides expected the extra byte)
O.o |
17:31.49 |
dloman |
righto, but I caught that one with the java
junk i was making for the guys upstairs.... |
17:31.55 |
dloman |
guess i didnt commit it :/ |
17:32.24 |
``Erik |
hm, *shrug* goes to show that completely
seperate implementations are valuable :D |
17:32.24 |
brlcad |
region_id is stored as an attribute in v5
during comb export, but in memory, it's both an attribute and a
field in the comb internal structure |
17:33.58 |
brlcad |
dloman: anyone can add new projects to ohloh,
I forget how brl-cad was added but I took ownership and set up the
svn repo links |
17:34.07 |
brlcad |
you do specify checkout points for them to
track |
17:34.33 |
dloman |
yeah, i saw that right after i posted in the
channel :) |
17:34.56 |
brlcad |
for the statistics to work, the specifically
mention not listing branches unless they're fully
self-contained/separate codes |
17:35.18 |
starseeker |
brlcad: I'm using rt_db_cvt_to_external5 to
export and rt_db_external5_to_internal5 to import, but somehow
g_diff is reporting region_id differences |
17:35.26 |
brlcad |
which geomcore would qualify, but not rt^3
with all of the other code |
17:35.37 |
brlcad |
starseeker: why so low? |
17:36.19 |
starseeker |
getting miminal bu_external byte arrays to
feed directly into the subversion fs |
17:38.08 |
brlcad |
db_get_external() should give you the
appropriate bu_external() |
17:38.34 |
*** join/#brlcad sachinjain
(~sachin@117.211.88.150) |
17:39.23 |
starseeker |
do I still use rt_db_external5_to_internal5 to
reassemble? |
17:39.40 |
brlcad |
not sure what rt_db_external5_to_internal5()'s
purpose specifically is |
17:39.45 |
brlcad |
have to look it up |
17:39.49 |
starseeker |
k |
17:39.49 |
brlcad |
I've used db5_get_raw_internal_ptr() in the
past |
17:40.09 |
brlcad |
it'll take that raw bu_external and give you
an uncracked internal |
17:40.10 |
starseeker |
actually, looking closer it's only the
region_id -1 cases where it didn't preserve it |
17:40.39 |
brlcad |
you still probably uncovered api
inconsistency |
17:40.47 |
brlcad |
what'd it do with then? |
17:41.08 |
starseeker |
either didn't preserve them or didn't assign
them on import, not sure which |
17:41.23 |
starseeker |
wonder if it's a signed/unsigned assumption
somewhere |
17:41.25 |
brlcad |
so just no attribute |
17:41.29 |
starseeker |
right |
17:41.59 |
starseeker |
region_id WAS preserved on regions that had
region flag and non-negative region id, from the looks of
it |
17:42.51 |
brlcad |
there's no definition of valid region_id
values, so technically, that's just like it dropping a region id of
1000 |
17:43.11 |
starseeker |
nods |
17:43.36 |
starseeker |
I can try the db_get_external and
db5_get_raw_internal and see if that does the trick... |
17:43.50 |
sachinjain |
hi brlcad |
17:44.11 |
starseeker |
is a little itchy operating
at this level of dbio - new turf |
17:44.31 |
starseeker |
plus I've still got to start slogging through
how to do and apply diffs... |
17:44.36 |
dloman |
brlcad: if I wanted to get the byte equivalent
of a memory database out of an rt_i, where would I look? |
17:44.59 |
*** join/#brlcad sachi1325
(75d3557b@gateway/web/freenode/ip.117.211.85.123) |
17:45.03 |
brlcad |
starseeker: looks like your routine calls my
routine :) |
17:45.14 |
starseeker |
heh |
17:45.16 |
starseeker |
phooey |
17:45.21 |
brlcad |
plus does some more work |
17:45.26 |
starseeker |
so much for dodging the bullet that
way |
17:45.37 |
sachinjain |
brlcad : do you remember me |
17:45.43 |
sachinjain |
we had a talk |
17:45.44 |
starseeker |
what I am doing seems to work surprisingly
well, except for that one case |
17:45.48 |
brlcad |
the docs on rt_db_external5_to_internal5()
sound like it should do what you want |
17:45.57 |
brlcad |
so it's more who's messing up |
17:46.07 |
starseeker |
nods - was afraid of
that |
17:46.12 |
brlcad |
sachinjain: yes |
17:46.15 |
starseeker |
yech - bug hunt |
17:46.39 |
starseeker |
at least that -1 thing is a clue |
17:46.42 |
brlcad |
isolated and trivial to reproduce... doesn't
get much better |
17:46.55 |
sachinjain |
brlcad : what should I do to get myself
considered for that project? |
17:47.04 |
starseeker |
mutter... I suppose |
17:47.09 |
brlcad |
dloman: what do you mean by the "byte
equivalent"? |
17:47.11 |
starseeker |
starts setting up the simple
test case |
17:47.38 |
brlcad |
sachinjain: we provide a detailed checklist
and lots of info on the website |
17:48.23 |
dloman |
brlcad: preferably, a byte array of bytes read
from disk that constitute the database file |
17:48.48 |
brlcad |
starseeker: db5_import_attributes() seems to
be completely unaware of attribute values so it's got to be during
export |
17:48.52 |
dloman |
im working with Daniel's classes now, and am
planning on using them to load a .g in |
17:49.14 |
dloman |
at that point, i'd like to simply dump the
entire DB into a byte array and sling it down the socket. |
17:49.56 |
dloman |
or could i just read the entire db_i struct
from memory? |
17:50.00 |
starseeker |
brlcad: sounds good - I did a keep with one of
the -1 combs and am stepping through now |
17:50.13 |
brlcad |
dloman: there are lots of routines related to
this (several that starseeker and I are talking about right now)
... it depends |
17:50.23 |
brlcad |
dloman: do you want there to be object
awareness? |
17:50.31 |
dloman |
not at this point no. |
17:50.37 |
brlcad |
as in, "im expecting 10 and I received 10
objects"? |
17:50.53 |
brlcad |
then it has absolutely nothing to do with the
rt_i |
17:51.24 |
brlcad |
the db_i has a pointer to both a disk pointer
and a byte array |
17:51.27 |
dloman |
well right now, I am trying to just get an
entire file read and sent. next step is to break the db into
objects then send. |
17:51.45 |
brlcad |
dloman: the g_transfer tool does the latter
already |
17:51.48 |
dloman |
and be able to cat it togeher on the other
side. |
17:51.59 |
brlcad |
src/gtools/g_transfer.c |
17:52.06 |
brlcad |
that's a sender and a receiver all in
one |
17:52.13 |
brlcad |
with object counting |
17:52.13 |
dloman |
kk |
17:52.17 |
dloman |
danke |
17:53.11 |
brlcad |
it also works entirely with in-memory
databases on the receiving in, which is what you want for service
handling |
17:53.24 |
brlcad |
starseeker: curious, what has a -1 region_id
set? |
17:53.45 |
dloman |
heh, g_transfer looks strikingly similar to a
pkg test file i saw once..... ;) |
17:53.51 |
brlcad |
that could very well be some signed/unsigned
nasty |
17:54.29 |
brlcad |
dloman: yeah, it was based off of it .. tpkg
implemented ttcp over libpkg, g_transfer implements the same thing
but with .g object awareness |
17:54.58 |
*** join/#brlcad Stattrav_
(~Stattrav@117.192.136.134) |
17:55.27 |
starseeker |
brlcad: ktank.g has a number of assemblies
that have that setting |
17:55.36 |
brlcad |
very preliminary "geometry service" work way
back when long before geometry service was being pushed, making
sure that in-memory database processing worked |
17:55.39 |
starseeker |
possibly havoc too, but haven't confirmed
that yet |
17:55.40 |
brlcad |
(it didn't originally) |
17:55.47 |
brlcad |
k |
17:56.55 |
starseeker |
Oooo! |
17:57.11 |
starseeker |
a keep on the same object also wipes out that
region_id setting |
17:57.26 |
starseeker |
so it's not just my low level stuff, it looks
like a legit bug |
18:00.28 |
brlcad |
so now, does the in-mem have it set as
-1? |
18:01.03 |
brlcad |
looks like the attribute import/export code is
ignorant, just treats them as strings |
18:01.18 |
brlcad |
that leaves the comb code |
18:02.54 |
CIA-52 |
BRL-CAD: 03Erik 07http://brlcad.org * r2770
10/wiki/NetMsgTypes: GSPONG is 0x62, not 0x61 |
18:05.41 |
CIA-52 |
BRL-CAD: 03Erik 07http://brlcad.org * r2771
10/wiki/GeometryServiceNetworkProtocol: Message Length does not
include magic/length values. |
18:06.35 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r43992
10/geomcore/trunk/src/GS/testclient/gstestclient.c: add
transmission of remote node name. Fix off by 8 error causing
lockup. Formatting cleanup |
18:06.46 |
dloman |
brlcad: looking at Daniel's code. He loads a
database by calling rt_dirbuild and getting back a db_i* |
18:06.57 |
dloman |
and a err, |
18:07.14 |
dloman |
i ment 'and getting back an rt_i*' |
18:07.55 |
dloman |
since you're the expert, will the db_i* that
the rt_i* have be in a condition where I can use it to get the data
I need? |
18:08.02 |
CIA-52 |
BRL-CAD: 03brlcad * r43993
10/brlcad/trunk/src/librt/comb/comb.c: use atol() instead of atoi()
since the fields are long. adjust printing routines to print long
too. |
18:08.20 |
brlcad |
dloman: yes |
18:08.30 |
brlcad |
an rt_i contains a db_i |
18:08.40 |
dloman |
sexy, thanks! |
18:09.00 |
dloman |
btw, heard you're under the weather. Hope you
feel better soon! |
18:09.45 |
brlcad |
the db_i is your handle to the database, it
uses a plain FILE * or memory buffer or mapped file, depending on
how the data is being managed (e.g., an in-memory-only database has
no FILE *) |
18:09.58 |
brlcad |
there are routines for getting the memory
buffer or traversing objects on a db_i |
18:10.16 |
brlcad |
it's easy to get both but iterating over
objects is actually problably a little easier |
18:10.27 |
brlcad |
yeah, I think ed gave me a cold |
18:10.46 |
dloman |
well, if its any form of justice, he's out
again today. ;) |
18:10.47 |
brlcad |
at least, I'm comfortable blaming him for it
:) |
18:10.51 |
dloman |
lol |
18:10.52 |
dloman |
nice |
18:11.08 |
brlcad |
I slept for 14 hours last night trying to
recover |
18:11.25 |
dloman |
see, now you've gone and made me insanely
jealous |
18:11.51 |
brlcad |
I'll gladly come in and cough all over you so
you too can feel this "blessing" |
18:11.57 |
dloman |
aahahaha. |
18:12.14 |
dloman |
i have 1600% DV c vitamins coursing thru my
veins |
18:12.26 |
dloman |
(dont forget i have virus generators, err,
kids, at home) |
18:13.00 |
brlcad |
I rarely ever get sick and get tons of
exposure to sick kids too |
18:13.36 |
brlcad |
I'm chaulking this one up to weakened immune
system from the long travel combined with complete lack of
exercise |
18:14.30 |
dloman |
brlcad: how familiar are you with Daniel's
coreInterface stuff? |
18:14.44 |
brlcad |
i've read through it a few times |
18:14.48 |
dloman |
kk |
18:14.57 |
brlcad |
pretty awesome use of in-mem db's |
18:15.17 |
dloman |
is an rt_db_internal* the representation of an
object? |
18:15.45 |
brlcad |
that gets a database object in "internal
representation" form |
18:15.53 |
sachinjain |
brlcad : is it necessary to submit a
patch? |
18:16.09 |
brlcad |
sachinjain: it's highly recommended, however
small and simple |
18:16.17 |
brlcad |
just to make sure you can actually read and
write code |
18:17.14 |
brlcad |
most orgs have a similar request of
applicants, it helps characterize your ability to become
familiarized with the source code and communicate a trivial
change |
18:18.08 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r43994
10/geomcore/trunk/src/GS/testclient/gstestclient.c: more display
stuff |
18:18.29 |
brlcad |
dloman: there are two types of internal
representation -- an uncracked and a cracked form -- the GS should
never have to deal with a cracked form (i.e. where it becomes aware
of the radius value on a sphere) |
18:19.03 |
dloman |
nods. |
18:19.05 |
brlcad |
iirc, rt_db_get_internal is going to be the
uncracked from, where you have the name and entity type |
18:19.49 |
brlcad |
major performance win to not deserialize
fully |
18:19.55 |
dloman |
right no. |
18:20.01 |
dloman |
err, right on. |
18:20.53 |
dloman |
I am trying to use coreInterface as much as
possible, fyi. The Object class has a db_i* pointer,
rt_db_internal*, directory* and resource* |
18:21.02 |
*** part/#brlcad kunigami
(~kunigami@loco-gw.ic.unicamp.br) |
18:21.28 |
brlcad |
sounds like the appropriate minimum |
18:21.50 |
dloman |
from what little I know (via crash course over
the last 24 hours) I think i have to grab the 'serialized' data out
of the rt_db_internal.... correct? |
18:22.46 |
brlcad |
db_i is a pointer to the object's container,
rt_db_internal is a pointer to the object's data, directory is a
pointer to a tree-prep'd record from the db_i, and resource is
"magic" that makes it all work faster on multiprocessor
systems |
18:23.16 |
CIA-52 |
BRL-CAD: 03Erik 07http://brlcad.org * r2772
10/wiki/NewSessionReqMsg: New page: Two (GS style network order
uint32_t followed by ascii, no terminating 0) strings First is
username Second is password (in plain text) |
18:23.29 |
dloman |
"Object's Container" ... as in the database
file? |
18:23.36 |
brlcad |
the rt_db_internal IS the object in a
half-serialized, half-deserialized form .. for schlepping it over
the wire, you want to convert from internal to external
form |
18:23.41 |
starseeker |
ok, rt_db_get_intern returns an intern that
DOES have a populated idb_avs structure... |
18:23.49 |
brlcad |
dloman: it's not necessarily a file, but
yes |
18:23.56 |
brlcad |
it's just "the database" |
18:24.09 |
dloman |
doh. I used the word file. ;) |
18:24.40 |
starseeker |
and correctly populated |
18:25.18 |
CIA-52 |
BRL-CAD: 03Erik 07http://brlcad.org * r2773
10/wiki/Common_NetMsg_Exchanges: list initial connect
pattern |
18:25.35 |
dloman |
brlcad: the internal->external conversion
somewhere in raytrace.h ? |
18:26.08 |
``Erik |
rt_*_export5 |
18:26.45 |
brlcad |
dloman: of course :) |
18:26.53 |
brlcad |
dloman: see send_to_server() in
g_transfer.c |
18:27.03 |
brlcad |
does exactly what you should be
needing |
18:27.28 |
siddharth |
hello |
18:27.37 |
``Erik |
ah, db_get_external |
18:27.50 |
siddharth |
for the patch thing,what should we do
exactly? |
18:27.54 |
siddharth |
any ideas? |
18:28.04 |
brlcad |
you can go lower-level and use the export
routines, but db_get_external() is a lot simpler, just taking a
directory pointer |
18:28.18 |
brlcad |
siddharth: it's entirely up to you |
18:28.30 |
brlcad |
the more impressive your patch, the more
impressive your submission |
18:28.39 |
dloman |
``Erik: thanks for all the wiki-fu. My heads
spinning :/ |
18:28.46 |
brlcad |
something simple to show that you can
read/write code is a minimum basic, siddharth |
18:28.57 |
siddharth |
ok thanks :) |
18:29.06 |
brlcad |
siddharth: you can start with just about
anything in our BUGS file or TODO file or something in one of our
trackers |
18:29.12 |
``Erik |
complete circles? will there be split pea soup
vomit, I skipped lunch :/ |
18:29.38 |
brlcad |
starseeker: jeez, I'm not seeing anything
reading code on my end |
18:29.41 |
dloman |
okay, see... there's the 'line'... and you
just crossed it. |
18:29.49 |
brlcad |
hopefully you have better luck with the
debugger |
18:30.56 |
siddharth |
Ok..one more question,what can we do in BUGS
file? |
18:31.35 |
brlcad |
siddharth: next you're going to ask me where
and how to fix the bug? |
18:31.38 |
brlcad |
is this 20 questions? :) |
18:31.48 |
siddharth |
lol :P |
18:31.57 |
brlcad |
you can do any of them... |
18:32.33 |
*** join/#brlcad kunigami
(~kunigami@loco-gw.ic.unicamp.br) |
18:32.34 |
brlcad |
some are hard, some are easy -- you have to
figure that out |
18:32.35 |
siddharth |
ok ill try them out :) |
18:32.40 |
starseeker |
brlcad: yeah, this is an annoying
bugger |
18:33.10 |
brlcad |
siddharth: if you need more specific
hand-holding, there are some code projects listed at http://brlcad.org/wiki/Quickies |
18:33.39 |
siddharth |
thanks |
18:33.47 |
brlcad |
some of those, however, are harder than the
BUGS and TODO items |
18:34.33 |
starseeker |
brlcad: ah HAH |
18:34.48 |
starseeker |
the internal representation is being altered
by rt_comb_export5 |
18:35.09 |
starseeker |
that's where the ip->idb_avs.count changes
from 1 to 0 |
18:39.03 |
dloman |
Hrm, hitting a C++ knowledge wall. The only
way to know what type class you are dealing with is to attempt a
dynamic_cast<> and then check the result for NULL ? |
18:39.08 |
dloman |
...anyone? |
18:39.29 |
starseeker |
brlcad: I think I've got it |
18:39.43 |
starseeker |
not sure what to do about it though |
18:40.14 |
starseeker |
comb.c:358 - encodes "other stuff" as
attributes |
18:40.37 |
starseeker |
the region_id of the comb itself (internally)
is out of sync with the region_id string attribute |
18:41.38 |
starseeker |
line 405 checks for a non-zero
comb->region_id |
18:42.05 |
starseeker |
it doesn't find it (because it's checking the
comb's data structure, not the string attribute) |
18:42.36 |
starseeker |
so it runs bu_avs_remove on the avsp and
strips region_id |
18:44.14 |
starseeker |
in effect, this aspect of the comb export
makes it impossible to have separate values in the comb data
structure and the associated attribute |
18:44.45 |
starseeker |
dloman: uh, not sure |
18:45.07 |
``Erik |
for c++, you can enable rtti and do
'isInstanceOf()' or something |
18:45.32 |
``Erik |
but there's overhead to enabling
rtti |
18:45.35 |
dloman |
just looked it up. FYI dynamic cast will
return a NULL if a type cast fails and you're dealing with
pointers, but throws an Exception if you're dealing with
references. |
18:45.45 |
starseeker |
does typeid help any? |
18:46.27 |
starseeker |
http://en.wikipedia.org/wiki/Typeid |
18:56.06 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r43995
10/geomcore/trunk/src/GS/testclient/gstestclient.c: hoist time
function |
19:05.40 |
*** join/#brlcad Ralith
(~ralith@S010600221561996a.vc.shawcable.net) |
19:06.45 |
*** join/#brlcad cjdevlin
(~devlin@d118-75-70-176.try.wideopenwest.com) |
19:07.33 |
brlcad |
starseeker: it's saying you have to create a
profile before I can add you (on socghop.appspot.com) |
19:07.58 |
starseeker |
k, one sec |
19:08.50 |
brlcad |
same thing for ed's account |
19:09.03 |
brlcad |
dloman: did you create a link_id
yet? |
19:09.09 |
dloman |
neat. coreInterface just bombed me out:
http://pastebin.mozilla.org/1193575 |
19:09.17 |
dloman |
....can't say that I have. |
19:09.31 |
dloman |
socghop.appspot.com? |
19:10.02 |
dloman |
I've registered that site and applied to be a
brlcad mentor. |
19:10.07 |
dloman |
...is that a link_id ? |
19:10.46 |
dloman |
man, what a terrible day. |
19:11.02 |
dloman |
im missing blantantly obivous things |
19:11.09 |
dloman |
brlcad: yes, i have a link_id |
19:11.14 |
dloman |
do you want it? |
19:11.14 |
starseeker |
brlcad: uh... where do I create a
profile? |
19:11.16 |
brlcad |
dloman: when did you submit the
request? |
19:11.21 |
starseeker |
this new site is less than helpful |
19:11.34 |
dloman |
http://socghop.appspot.com/gsoc/profile/google/gsoc2011 |
19:11.37 |
brlcad |
if you sent it before the site change, then
you'll have to resubmit it |
19:11.49 |
dloman |
brlcad: this morning, if it didn't mess up on
me. |
19:11.56 |
brlcad |
regardless you'll need to resubmit it because
you're not in the pending requests queue :) |
19:11.59 |
dloman |
brlcad: am i not showing up? |
19:12.05 |
dloman |
okie, will do. |
19:12.11 |
brlcad |
daniel's came through |
19:12.21 |
starseeker |
dloman: that site isn't accessible because I
don't have a profile |
19:12.38 |
starseeker |
Oh, I see it |
19:12.45 |
starseeker |
growl |
19:12.50 |
brlcad |
likes the new
look |
19:12.56 |
brlcad |
work in progress, but it's better |
19:13.10 |
dloman |
i like the look also, the navigation needs a
bit of work |
19:13.12 |
brlcad |
just not quite ready for production |
19:13.18 |
dloman |
brlcad: submitted |
19:13.36 |
brlcad |
got it and approved |
19:13.47 |
dloman |
smashing old chap! |
19:15.37 |
brlcad |
note that anything that redirects to
www.google-melange.com may be blocked ... but socghop.appspot.com
works, just edit the url manually |
19:15.58 |
brlcad |
someone needs to send a request in to get it
unblocked |
19:17.04 |
``Erik |
beat, I broke it :D |
19:17.07 |
``Erik |
neat, even |
19:17.15 |
brlcad |
yeah I see that |
19:17.33 |
brlcad |
I can withdraw it, but not approve |
19:17.41 |
brlcad |
looks like admins are auto-mentors this
year |
19:17.41 |
``Erik |
when I click anything either 'accept' or
'reject', I get "You cannot be a mentor for BRL-CAD to access this
page." |
19:18.12 |
brlcad |
heh, it let me withdraw the request |
19:18.12 |
starseeker |
brlcad: sent |
19:19.22 |
brlcad |
just need to get ed, larry, tom, and curly
registered |
19:20.00 |
dloman |
Moe? |
19:20.08 |
brlcad |
that'd be ed |
19:20.15 |
dloman |
*snicker* |
19:20.29 |
brlcad |
although he does a great curly |
19:21.50 |
starseeker |
brlcad: what do you think about comb and
attributes? |
19:21.57 |
brlcad |
was just looking at that |
19:24.02 |
*** join/#brlcad sachinjain
(~sachin@117.211.88.150) |
19:35.35 |
bhinesley |
FYI, ACM student membership is dirt cheap, and
it comes with a MSDN Academic Alliance account, which provides
Visual Studio 2005 Professional (and many others) for
free. |
19:42.01 |
brlcad |
dloman: FileDataSource::getObj() .. when is
the iterator incremented? |
19:42.41 |
brlcad |
during Good()?? |
19:42.48 |
dloman |
nice catch, thanks :) |
19:43.01 |
brlcad |
same in FileDataSource::getObjs() |
19:43.31 |
dloman |
getObj() is only supposed to get ONE object,
so no inrementing needed. |
19:43.44 |
dloman |
this is still just a 'proof' that I can
actually do this :) |
19:43.50 |
dloman |
cleanup to follow |
19:43.56 |
*** part/#brlcad sachinjain
(~sachin@117.211.88.150) |
19:44.25 |
brlcad |
should toss-in FIXME's though when the code
doesn't do what the function suggests, so it's not lost down the
road |
19:44.36 |
dloman |
right on |
19:44.37 |
brlcad |
and ends up being a multi hour/day
debugging |
19:45.21 |
dloman |
Hrm, even with the iterator incrementor, it
still bombs. |
19:45.48 |
brlcad |
it's bombing an uninitialized vls .. which
could be lots of things |
19:46.09 |
dloman |
righto. I'll check it out tomarrow.... I'm
fried :( |
19:46.11 |
CIA-52 |
BRL-CAD: 03davidloman * r43996
10/geomcore/trunk/CMake/FindBRLCAD.cmake: Make FindBRLCAD.cmake
find libge. Likely not the best spot for this lib, since its in the
rt3 module, but it works for now. |
19:46.13 |
CIA-52 |
BRL-CAD: 03davidloman * r43997
10/geomcore/trunk/ (8 files in 2 dirs): Wire in libge (aka
coreInterface) classes for loading and saving .g databases.
Implement bare bones read/write for .g files in the FileDataSource
class. |
19:46.35 |
CIA-52 |
BRL-CAD: 03davidloman * r43998
10/geomcore/trunk/tests/GS/ (CMakeLists.txt
FileDataSourceTest.cxx): |
19:46.35 |
CIA-52 |
BRL-CAD: Implement basic test for
FileDataSource class. A database with a primitive at |
19:46.35 |
CIA-52 |
BRL-CAD: top works fine, however a combination
at top with a primitive as a child causes |
19:46.36 |
CIA-52 |
BRL-CAD: a bomb: http://pastebin.mozilla.org/1193575
Will investigate asap. |
19:46.36 |
dloman |
well that took a while. |
19:52.42 |
``Erik |
this is requiring rt^3 now? |
19:53.29 |
dloman |
ya, just put that in |
19:53.40 |
dloman |
rt3 should compile and install with no
problem. |
20:03.19 |
``Erik |
heh, libge doesn't seem to be linking libbu
:/ |
20:08.45 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r43999
10/rt^3/trunk/src/ (coreInterface/CMakeLists.txt
libge/CMakeLists.txt): add BRL-CAD link libraries |
20:25.58 |
CIA-52 |
BRL-CAD: 03Erik 07http://brlcad.org * r2774
10/wiki/GSNet_String: mention lack of terminating NULL |
20:26.34 |
CIA-52 |
BRL-CAD: 03Erik 07http://brlcad.org * r2775
10/wiki/Category:Geometry_Service: New page: Pages related to the
GeometryService |
20:28.36 |
CIA-52 |
BRL-CAD: 03Erik 07http://brlcad.org * r2776
10/wiki/NetMsgTypes: fix link |
20:29.24 |
kunigami |
hi, how do I add a regression test? I want to
implement one for a function of a library. Should I provide a code
with main function calling this function and perform some
assertions? |
20:31.58 |
``Erik |
<PROTECTED> |
20:33.19 |
kunigami |
ok! thanks! |
20:33.35 |
brlcad |
kunigami: if it's only testing the interface,
then it's just a unit test and can be added as a noinst binary in
any directory (e.g. the examples erik mentioned) |
20:34.01 |
brlcad |
if it's going to compare an interface with
known good input that might change down the road, then it can be
added as a regression test in the regress/ directory |
20:34.24 |
brlcad |
most of those are shell scripts that perform
integration testing and/or regression testing |
20:36.05 |
CIA-52 |
BRL-CAD: 03erikgreenwald * r44000
10/rt^3/trunk/src/ (coreInterface/CMakeLists.txt
libge/CMakeLists.txt): woops, old cache, update to new variable
names |
20:44.02 |
kunigami |
the function I'm referring to is
'bu_basename', which I think lies on "testing interface" case. What
do you mean by 'noinst' binary? |
20:44.36 |
starseeker |
a noinst binary refers to a binary that has
build logic to create it but not install it |
20:44.44 |
starseeker |
e.g. a "make install" won't do anything with
it |
20:45.03 |
starseeker |
check the Makefile.am in src/libbn for
bntester, for example |
20:45.40 |
kunigami |
hmm perfect! thank you |
21:02.22 |
kunigami |
ok, so I also have to modify Makefile.am
template. I need to add a rule to compile my tester program and
declare it to be noinst_PROGRAM. one more doubt: what means
FAST_OBJECTS on the Makefile at src/libbu? |
21:02.40 |
kunigami |
*Makefile.am |
22:51.51 |
*** join/#brlcad Ralith
(~ralith@d142-058-175-056.wireless.sfu.ca) |