[MOAB-dev] ray_intersect_sets function

Brandon Smith bsmith82 at yahoo.com
Fri Mar 12 18:23:11 CST 2010


Hi Hong-jun,

If I remember correctly (which I may not), this function returns up to min_tolerance_intersections outside of the tolerance distance, and all intersections inside of the tolerance distance. This is an optimization for particle tracking where in general, only the closest intersection is desired.

If you want all intersections, set the tolerance larger than the maximum extent of your geometry. Alternatively, set min_tolerance_intersections to a large number.

Brandon


----- Original Message ----
From: "hongjun at mcs.anl.gov" <hongjun at mcs.anl.gov>
To: moab-dev at mcs.anl.gov
Sent: Fri, March 12, 2010 5:30:44 PM
Subject: [MOAB-dev] ray_intersect_sets function

Hi! All

I have a question about ray tracing function,

MBOrientedBoxTreeTool::ray_intersect_sets( 
                                    std::vector<double>& distances_out,
                                    std::vector<MBEntityHandle>& sets_out,
                                    std::vector<MBEntityHandle>& facets_out,
                                    MBEntityHandle root_set,
                                    double tolerance,
                                    unsigned min_tolerace_intersections,
                                    const double ray_point[3],
                                    const double unit_ray_dir[3],
                                    const double* ray_length, 
                                    TrvStats* accum );

When I use this function, it just returns one intersection distance/set/facet for sphere or curved surfaces.
Is it a bug or is it intended?
Otherwise, am I using incorrectly?

Could any body give me some advices for me?
Thanks.

Hong-Jun



      


More information about the moab-dev mailing list