01:10.50 |
brlcad |
woooo |
04:08.15 |
pra5ad_ |
^_^# |
04:22.26 |
Twingy |
can't get enough of that sea urchin
eh? |
04:36.06 |
brlcad |
never |
04:49.18 |
*** join/#brlcad cad613
(n=1805bd65@bz.bzflag.bz) |
04:58.05 |
pra5ad |
@_@' |
06:59.07 |
archivist_ |
4325 |
08:12.34 |
*** join/#brlcad clock_
(n=clock@84-72-93-98.dclient.hispeed.ch) |
09:12.31 |
*** join/#brlcad Maloeran
(n=alexis@modemcable084.164-81-70.mc.videotron.ca) |
09:41.35 |
*** join/#brlcad docelic
(n=docelic@195.246.23.200) |
12:36.21 |
*** join/#brlcad cad438
(n=8028ff32@bz.bzflag.bz) |
12:38.10 |
cad438 |
Hello, I have a problem using MGED. I hope
this is the right place to get advice? |
12:39.56 |
cad438 |
I have version 7.2.4 installed, and it seems I
can only select primitive shapes. I can't find anything like "solid
selection" that is referred to on page 105 of the Butler et. al.
manual |
12:40.23 |
cad438 |
Is there anyone actively following this
box? |
13:14.58 |
*** join/#brlcad AchiestDragon
(n=dave@whipy.demon.co.uk) |
14:40.13 |
brlcad |
cad438: sure is |
14:43.31 |
brlcad |
cad438: primitives are solids, some of the
interface in mged has been reworded slightly since, but the words
solids and primitives are pretty much interchangeable (i.e. there's
a primitive select on the menu) |
14:56.06 |
brlcad |
or "Prim Select" to be more exact |
14:56.14 |
brlcad |
on the Edit menu |
15:04.56 |
cad438 |
Thank you! |
15:05.09 |
cad438 |
But that leaves me with another
problem. |
15:06.39 |
cad438 |
What I am trying to do is to combine
primitives into a combination (or region or whatever) and change
the position of the assembly by rotating or translating. |
15:07.01 |
brlcad |
okay |
15:07.39 |
cad438 |
I am sure there must be an easy way to do
that |
15:07.56 |
cad438 |
But I haven't found it yet. |
15:08.07 |
brlcad |
ah, well of course there is ;-) |
15:08.21 |
brlcad |
you've not gotten through the tutorial
covering combinations yet? |
15:08.44 |
cad438 |
I have |
15:09.08 |
cad438 |
I even made the nice looking globe
:-) |
15:09.59 |
brlcad |
say you create a couple primitives (e.g. make
sph sph and make box arb8) |
15:10.16 |
cad438 |
yes? |
15:10.35 |
brlcad |
you position then where you like (e.g. sed sph
and tra 1000 0 0) |
15:11.20 |
brlcad |
then you combine them into a region (r
some_region.r u box - sph) |
15:11.52 |
cad438 |
Yes, I know how to do that, but what I was
looking for is a way to do it the other way rounr. |
15:12.02 |
cad438 |
For instance... |
15:12.33 |
brlcad |
when you make regions, it doesn't
automatically display them, so you can display it up (B
some_region.r) |
15:12.38 |
brlcad |
not done yet ;) |
15:12.54 |
brlcad |
now say you want to
translate/rotate/scale/whatever that region |
15:13.24 |
brlcad |
the gui way is to select Edit -> Matrix
Selection |
15:14.19 |
brlcad |
you'd pic either the /some_region.r/sph or
/some_region.r/box line and then some_region.r in the subsequent
dialog to indicate that you want to edit the matrix over
some_region.r |
15:15.24 |
brlcad |
The edit menu now has all the options you
might hope for including scale, move, rotate |
15:16.10 |
brlcad |
or you can just issue the command line
verisons: rot 100 0 0 and tra 0 1000 1000 and sca 1.2
etc |
15:16.34 |
cad438 |
I tried it this way, but as you explain it I
am still acting on primitives, right? |
15:16.49 |
cad438 |
Or can I do this with a region within a
region? |
15:16.50 |
brlcad |
nope |
15:17.15 |
brlcad |
a region within a region is a modeling error,
but a combination with a region or region within a combination is
okay |
15:17.23 |
brlcad |
or a combination within a
combination |
15:18.11 |
cad438 |
yes, okay, that's what I meant really. But can
I move a combination within a combination in the way you described
it? |
15:18.23 |
brlcad |
when you make a region, that's akin to making
a 'part' in other cad packages -- you're denoting the intent that
it's something that takes up physical space instead of just being
some template shape |
15:19.09 |
brlcad |
combinations of regions are akin to
'assemblies', combinations of primitives are merely grouped
template shapes |
15:19.27 |
brlcad |
to answer your question, yes you can |
15:19.44 |
brlcad |
you go into matrix select, and select the
matrix over the combination you wish you apply the modification
to |
15:20.59 |
cad438 |
Thanks! I am trying to create a disk with a
few boreholes equidistantly distributed over a ring. The boreholes
themselves are not simpe cylinders, but are a combination of a few
primitives. |
15:21.23 |
cad438 |
And I don't want to redraw them every time,
you see. |
15:21.46 |
cad438 |
I'll try again to do it the way you
suggest. |
15:22.47 |
brlcad |
yeah, that should be fine |
15:23.29 |
brlcad |
you can make a copy of the 'combination of a
few primitives' template that you have positioning each one where
you want it to be using the matrix selection |
15:24.12 |
cad438 |
That is indeed exactly what I want to
do. |
15:24.43 |
brlcad |
just be sure to give each copy a unique name
so that you can find it in the matrix selection |
15:25.08 |
brlcad |
it's all simple references, so it's very fast
and compact |
15:33.32 |
cad438 |
I don't get it to work :-( |
15:33.44 |
cad438 |
When I choose for matrix select... |
15:33.55 |
cad438 |
I first have to select a primitive |
15:34.10 |
cad438 |
The combinations do not appear in the
drop-down menu |
15:34.26 |
brlcad |
then you're not displaying the
combination |
15:34.37 |
brlcad |
it only gives you a list of what's been "e"'d
up |
15:34.48 |
brlcad |
type "who" to see what is currently being
edited |
15:35.14 |
brlcad |
when you create the combination, it doesn't
display/e it for you |
15:35.27 |
brlcad |
so you'd still be looking at the primitives
only |
15:35.39 |
cad438 |
oops |
15:35.51 |
brlcad |
that was the B some_region.r in the example I
gave to redisplay the newly created region or combination |
15:36.03 |
cad438 |
you're right, that's what's going
on! |
15:40.30 |
cad438 |
No.... |
15:41.17 |
brlcad |
problem? |
15:41.32 |
cad438 |
In the first drop down that comes up after
selecting "matrix select..." I have to select a
primitive. |
15:42.00 |
brlcad |
the first drop down should have a path like
/comb1/prim1 |
15:42.15 |
cad438 |
There are no combinations there, only the
primitives belonging to the shown combinations |
15:42.30 |
cad438 |
yes |
15:43.11 |
brlcad |
/comb1/prim1 /comb1/prim2 etc yes? |
15:43.33 |
cad438 |
but I am trying to rotates /comb1/comb2/*
within /comb1 |
15:44.01 |
brlcad |
okay, so then it's listing /comb1/comb2/prim1
/comb1/comb2/prim2 etc .. yes? |
15:44.22 |
brlcad |
or are you only seeing /comb2/prim1
/comb2/prim2 etc |
15:45.34 |
cad438 |
yes, it says /comb1/comb2/prim1 |
15:45.41 |
brlcad |
you want to edit the matrices of the
combinations inside the combination, so you need to display that
top-level comb1 |
15:45.46 |
brlcad |
okay, that's good |
15:46.06 |
brlcad |
you can select any one of the lines that says
comb2 |
15:46.27 |
brlcad |
i presume you have a comb2 a comb3 a comb4 etc
inside comb1 yes? |
15:46.52 |
cad438 |
yes |
15:46.59 |
brlcad |
good |
15:47.25 |
brlcad |
so yeah, select any one of the comb[2 through
whatever] lines -- it doesn't matter that it displays the
primitives underneath it |
15:48.14 |
brlcad |
it's effectively asking you what you want to
treat as a coordinate system point of reference at the same time in
case you need to position things exactly |
15:48.47 |
brlcad |
the second dialog will list comb2 prim1 prim2
prim3 -- select comb2 and you'll be editing the matrix over comb2
inside comb1 |
15:50.49 |
*** join/#brlcad pra5ad
(n=prasad@pool-70-17-248-207.balt.east.verizon.net) |
15:56.56 |
cad438 |
No, it seems I am editing the matrix over
comb2 inside comb1 relative to comb1/comb2/prim1 (which I selected
in the first menu) |
15:57.22 |
cad438 |
Or else, the boreholes are rotating around
themselves, rather than around the disk... |
15:58.18 |
cad438 |
Whci makes sense, because at no point I have
told the software to use comb1 as a reference |
15:59.02 |
cad438 |
right? |
16:00.03 |
cad438 |
In fact, in the procedure I just followed,
comb2 could as well have been the top-level combination, rather
than comb1. |
16:05.43 |
brlcad |
right |
16:05.54 |
brlcad |
that's what I meant about the prim being the
point of reference |
16:06.28 |
brlcad |
mged wants to use something inside comb2 as a
point of reference for the coordinate system |
16:08.28 |
brlcad |
there is a way to set up alternative modeling
axes too, but that's a rather advanced modeling technique that I
wouldn't recommend until you've been using mged for a long time
;) |
16:11.15 |
brlcad |
if it's rotations you are having trouble with,
you might be interested in Settings->Rotate About |
16:12.08 |
brlcad |
also Modes -> Axes to actually see the axes
you are working with |
16:34.21 |
cad438 |
You have solved my problem! |
16:34.49 |
cad438 |
Thank you. |
16:34.52 |
*** join/#brlcad DTRemenak
(n=DTRemena@DHCP-170-143.caltech.edu) |
16:36.42 |
cad438 |
It was not necessary to pack comb2 within
comb1, the latter being the body of reference for rotation, as it
is not possible to go up in the hierarchy to set the reference
system. |
16:38.03 |
cad438 |
Instead I proceeded as you told me, picking
any primitive in the region-to-be-rotated, and subsequently picking
the region itself in the two menus of "matrix
selection..." |
16:39.42 |
cad438 |
I then make sure that the axes of reference
are set conveniently (in my case that was just the model origin, so
that was easy) so that the choice made in the first menu is
effectively disgarded. |
16:40.19 |
cad438 |
And finally the right commands for rotation
can be given. |
16:40.28 |
cad438 |
Again, thanks a lot! |
16:40.47 |
brlcad |
no problem |
16:40.59 |
brlcad |
glad it all worked out :) |
16:44.20 |
*** join/#brlcad pra5ad
(n=prasad@pool-70-16-5-180.balt.east.verizon.net) |
16:47.28 |
cad438 |
I got to go now, but I'll remeber this place!
See you next time ;-) |
16:48.46 |
brlcad |
see you around |
17:10.35 |
CIA-5 |
BRL-CAD: 03brlcad * 10brlcad/autogen.sh:
search for libtoolize14, make sure that we can pinpoint the
alternate libtoolize's location via which/dirname in order to print
instructions correctly. fix typo on glti |
17:28.38 |
*** join/#brlcad clock_
(n=clock@84-72-95-186.dclient.hispeed.ch) |
17:36.40 |
*** join/#brlcad PrezKennedy
(n=Apathy@pcp0011645240pcs.aberdn01.md.comcast.net) |
20:10.03 |
*** join/#brlcad mahesh
(n=mahesh@12-217-228-235.client.mchsi.com) |
20:40.29 |
*** join/#brlcad mahesh
(n=mahesh@12-217-228-235.client.mchsi.com) |
20:52.45 |
mahesh |
Sean, are you there? |
20:57.02 |
brlcad |
perhaps ;) |
20:57.14 |
mahesh |
ha ha |
20:57.47 |
mahesh |
another question for you if you are not yet
tired of answering |
20:57.54 |
brlcad |
never tired |
20:58.21 |
mahesh |
i am not able to understand clearly the
function do_pixel in worker.c |
20:58.38 |
mahesh |
could you just tell me what it does with each
pixel it takes as argument |
20:59.47 |
brlcad |
sure, give me sec |
21:01.05 |
brlcad |
do_pixel actually handles the processing of
exactly one pixel |
21:02.25 |
mahesh |
but after processing that pixel, it should be
writing to framebuffer or to a file? |
21:03.32 |
brlcad |
neither |
21:03.40 |
brlcad |
it stores the pixel result in memory |
21:04.02 |
brlcad |
in the application structure, there is
a_color |
21:04.13 |
brlcad |
that is filled in with the rgb
result |
21:04.38 |
mahesh |
oh ok...got it |
21:04.43 |
brlcad |
view_pixel() is called at the end to |
21:05.05 |
brlcad |
let the application handle what it wants to do
with the pixel |
21:05.24 |
brlcad |
(it's a raytracer-specific function in
view.c) |
21:07.00 |
mahesh |
how about making each node in the network call
do_pixel on a chunk of pixels allocated to it? |
21:08.35 |
brlcad |
yes definitely |
21:08.48 |
brlcad |
you're basically going to need to define your
own worker() |
21:08.59 |
mahesh |
cant be so simple isnt it :) ? |
21:09.09 |
brlcad |
:) |
21:09.24 |
brlcad |
not sure for certain until it's done
;) |
21:09.30 |
mahesh |
true |
21:14.38 |
brlcad |
bu_parallel() is called with worker() to run
worker() on each processor |
21:16.17 |
brlcad |
all the worker()'s running in parallel on the
various cpus available coordinate processing chunks of pixels at a
time |
21:18.41 |
brlcad |
so I imagine that there's effectively two
functions that you'll have to write |
21:19.11 |
mahesh |
bu_distributed and worker? |
21:19.13 |
brlcad |
a bu_parallel of your own (call it bu_parallel
or bu_distributed or whatever) |
21:20.05 |
brlcad |
and yes, a worker (mpi_worker perhaps) routine
that will handle actually shoveling off work to remote hosts (who
could in turn call bu_parallel with worker) |
21:27.05 |
mahesh |
right...things are more clear now |
23:11.46 |
*** join/#brlcad Twingy
(n=justin@pcp0011647505pcs.aberdn01.md.comcast.net) |