|Message: Re: problems with BREPS||Not Logged In (login)|
Click on the Forum title, e.g. on the "Forums by Category" page, to read a sequence of postings to the Forum and its threads all in one page. If you are only interested in one thread or the thread following a specific posting, click the thread or the posting, which takes you to a smaller page, which contains only the part you are interested in and may be easier to navigate.
Messages are "chained" if there are only replies at the first level, i.e. 1/1.html, 1/1/1.html etc. In case of "chained" messages the message number is replaced by the icon and there is no indentation.
Inline: Display the subject line only or also the text of the posting(s); for the choice "All" the "Outline" choices are switched off.
|1||0||1||no text / full text of posting|
|2||1||All||text for level 1 only / text for All postings|
Outline: Choose the depth of the posting thread, successive toggle controls provide increasing detail.
|1||2||1||2 levels / 1 level (original posting)|
|2||3||2||3 levels / 2 levels|
|3||3||All||3 levels / all levels (all postings)|
On Mon, 12 Mar 2012 20:19:45 GMT, Nika Valencic wrote:
> Browsing through the forum and User Manuals I saw several warnings that > BREPS are not fully implemented. I managed to construct a solid using > G4BREPSolidPolyhedra and it worked. However, when I tried to construct a > G4BREPSolidCylinder and visualize it I got a cube(?!) (the code is > attached bellow).
I'm afraid the visualisation of BREPS via polyhedral representations is in a poor shape - only those BREPS that have equivalents in CSG are implemented, the rest default to a bounding box - but you may always use RayTracer or RayTracerX, which use Geant4's internal tracking algorithms. It's quite slow, so a good strategy is to find a good view with Qt, say, then
/vis/open RayTracerX /vis/viewer/set/all viewer-0 /vis/viewer/refresh
You may have to make other volumes invisible with /vis/geometry/set/visible if they get in the way.
> My first question: Am I doing something wrong? Is the problem only in > visualization (I use Qt) or is just that this class is not implemented > completely?
> My second question: I want to construct a body that looks like a > trapezoid, but with two circular edges and two straight but nonparallel > edges, of thickness z (figure is attached bellow) . So far I > successfully constructed (approximation) of this body, using > G4ExtrudedSolid. Now I want to construct the body with actual circular > edges. I see two options; BREPS or boolean solids. Which method needs > more CPU time? I really want to try and build this body using BREPS. Can > this be done? I tried defining all the surfaces that confine this body > (planes + cylindrical surfaces) but failed. Can you give me some advice > where can I look for examples of BREP construction and if this is > possible?
I'm not an expert on geometry, but if you can find a way with CSG solids (G4Box, etc.) then that is the most efficient. Your shape looks like something that could be made with a G4Tubs. Next up are booleans of CSGs. Next come BREPS, because the tracking has to loop over the boundaries to find the distances at every step, and I'm not sure how reliable the BREPS tracking algorithms are. Last come G4TessellatedSolid and G4ExtrudedSolid (is a G4TessellatedSolid) because tracking has to loop over all facets.
> My third question: When I visualize the body made by G4ExtrudedSolid I > get some lines inside the body (figure attached bellow). I know this is > just a consequence of visualization, but I was wondering if there is a > way to get rid of them. I tried with /vis/viewer/set/edge and > /vis/viewer/set/hiddenEdge commands but the lines are always present. > Even if I draw this body as solid (/vis/viewer/set/style solid). Can you > give me some advice how to make these lines invisible?
As I said, G4ExtrudedSolid is a G4TessellatedSolid so you always get all edges. There is no way of knowing if an edge is "auxiliary", i.e., within a plane or curved surface, or a genuine edge. If you "/vis/viewer/set/style" solid and "/vis/viewer/set/edge false", you should not see any edges.
> P.S: I'm using Geant4.9.5 on mac OS X (10.7.2).
Good to see you have Qt working on OS X (10.7.2) Lion.