diff options
Diffstat (limited to 'indra/newview/llviewerobject.h')
-rw-r--r-- | indra/newview/llviewerobject.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/indra/newview/llviewerobject.h b/indra/newview/llviewerobject.h index 0f0fa62ea1..a143589ee9 100644 --- a/indra/newview/llviewerobject.h +++ b/indra/newview/llviewerobject.h @@ -242,9 +242,15 @@ public: //detect if given line segment (in agent space) intersects with this viewer object. - //returns TRUE if intersection detected and moves end to the point of intersection - //closest to start. - virtual BOOL lineSegmentIntersect(const LLVector3& start, LLVector3& end) const; + //returns TRUE if intersection detected and returns information about intersection + virtual BOOL lineSegmentIntersect(const LLVector3& start, const LLVector3& end, + S32 face = -1, // which face to check, -1 = ALL_SIDES + S32* face_hit = NULL, // which face was hit + LLVector3* intersection = NULL, // return the intersection point + LLVector2* tex_coord = NULL, // return the texture coordinates of the intersection point + LLVector3* normal = NULL, // return the surface normal at the intersection point + LLVector3* bi_normal = NULL // return the surface bi-normal at the intersection point + ); virtual const LLVector3d getPositionGlobal() const; virtual const LLVector3 &getPositionRegion() const; |