ok  Fabrice.
Please notify us if you can get something working ( this is a critical
feature for my project ).

Thanks for your support.

On May 4, 9:44 am, Fabrice3D <[email protected]> wrote:
> Looking at it asap as I need it as well...
>
> On May 4, 2010, at 7:18 AM, Michael Iv wrote:
>
>
>
>
>
>
>
> > Now I can see I am not only one having that problem
>
> > Sent from my iPhone
>
> > On May 4, 2010, at 3:49 AM, devlander <[email protected]> wrote:
>
> >> =================================================================
> >> Please forget about my previous post (many copy&past mistakes in the
> >> code snippet)
> >> =================================================================
>
> >> Here is my code (corrected):
>
> >> private function _pickMesh(mesh:Mesh):PickingResult {
>
> >>     var pr:PickingResult = new PickingResult();  // Store picking
> >> data here
>
> >>     var rayPos:Number3D = view3D.camera.unproject(view3D.mouseX,
> >> view3D.mouseY);
>
> >>     var rayDir:Number3D = new Number3D();
> >>     rayDir.x = rayPos.x;
> >>     rayDir.y = rayPos.y;
> >>     rayDir.z = rayPos.z;
> >>     rayDir.normalize();
> >>     rayPos.add(rayPos, view3D.camera.position);
>
> >>     var ray:Ray = new Ray();
> >>     var pickedPoint:Number3D;
>
> >>     for each (var face:Face in mesh.faces) {
>
> >>                pickedPoint = ray.getIntersect(rayPos , rayDir ,
> >> face.v0.position , face.v1.position , face.v2.position);
>
> >>                if (pickedPoint!=null) {
> >>                        pr.hasHit = true;
> >>                        pr.point = pickedPoint;
> >>                        pr.face = face;
> >>                        break;
> >>                }
> >>        }
>
> >>        pr.mesh = mesh;
>
> >>        return pr;
>
> >> }
>
> >> The problem is I always get null.
>
> >> Note: Since my mesh is a child of an Objectcontainer3D element I have
> >> called mesh.applyRotations()
> >> to make sure all the mesh faces are computed relative to the world
> >> coord system.
>
> >> I suspect there is a problem in the computation of the ray params
> >> (position or direction).
>
> >> Fabrice can you confirm that the signature of the Ray.getIntersect
> >> method is as follow (no info is given in the class):
>
> >> p0: ray direction (or is it position ?)
> >> p1: ray position [in world coord system] (or is it direction?)
> >> v0: face.v0.position [in global world coord system]
> >> v1: face.v1.position [in global world coord system]
> >> v2: face.v2.position [in global world coord system]
>
> >> Thanks for any help on this.
>
> >> On May 4, 2:33 am, devlander <[email protected]> wrote:
> >>> Hello, i am having the exact same problem here.
>
> >>> I am trying to determine the intersection on a 3D object at a given
> >>> viewport location (view3D.mouseX, view3D.mouseY):
>
> >>> Here is my code:
>
> >>> private function _pickMesh(mesh:Mesh):PickingResult {
>
> >>>         var pr:PickingResult = new PickingResult();  // Store picking data
> >>> here
>
> >>>         var rayPos:Number3D = view3D.camera.unproject(view3D.mouseX,
> >>> view3D.mouseY);
>
> >>>         // info retreived from here
> >>>         
> >>> //http://www.mail-archive.com/[email protected]/msg09318.html
>
> >>>         var rayDir:Number3D = new Number3D();
> >>>        rayDir.x = pMouse.x;
> >>>        rayDir.y = pMouse.y;
> >>>        rayDir.z = pMouse.z;
> >>>        rayDir.normalize();
> >>>        rayPos.add(rayPos, _view3D.camera.position);
>
> >>>         var ray:Ray = new Ray();
> >>>         var pickedPoint:Number3D;
>
> >>>         for each (var face:Face in mesh.faces) {
>
> >>>                 pickedPoint = ray.getIntersect(rayPos , rayDir , 
> >>> face.v0.position ,
> >>> face.v1.position , face.v2.position);
>
> >>>                 if (pickedPoint!=null) {
> >>>                         pr.hasHit = true;
> >>>                         pr.point = pickedPoint;
> >>>                         pr.face = face;
> >>>                         break;
> >>>                 }
> >>>         }
>
> >>>         pr.mesh = mesh;
>
> >>>         return pr;
>
> >>> }
>
> >>> The problem is I always get null.
>
> >>> Note: Since my mesh is a child of an Objectcontainer3D element I have
> >>> called mesh.applyRotations()
> >>> to make sure all the mesh faces are computed relative to the world
> >>> coord system.
>
> >>> I suspect there is a problem in the computation of the ray params
> >>> (position or direction).
>
> >>> Fabrice can you confirm that the signature of the Ray.getIntersect
> >>> method is as follow (no info is given in the class):
>
> >>> p0: ray direction (or is it position ?)
> >>> p1: ray position [in world coord system] (or is it direction?)
> >>> v0: face.v0.position [in global world coord system]
> >>> v1: face.v0.position [in global world coord system]
> >>> v2: face.v0.position [in global world coord system]
>
> >>> Thanks
>
> >>> On May 4, 12:17 am, Michael Iv <[email protected]> wrote:
>
> >>>> Fabrice i am trying it already for 4 hours with Sphere , but it returns 
> >>>> null
> >>>> most of the time
>
> >>>> ///// it runs on enter frame////////////////
> >>>> for(var i:int=0;i<_sf.faces.length;++
> >>>> i){
>
> >>>> trace(_ray.getIntersect(_ray.orig,_ray.dir,_sf.faces[i].v0.position,_sf.faces[i].v1.position,_sf.faces[i].v2.position));
> >>>>    }
> >>>> and basi
>
> >>>> On Tue, May 4, 2010 at 1:15 AM, Fabrice3D <[email protected]> wrote:
> >>>>> dir, origin, v0, v1, v2
> >>>>> to check if a ray hits a triangle
>
> >>>>> Fabrice
>
> >>>>> On May 3, 2010, at 9:43 PM, Michael Iv wrote:
>
> >>>>> Someone can tell me what are* v0,v1,v2* in* 
> >>>>> Ray.getIntersect(p0:Number3D,
> >>>>> p1:Number3D, v0:Number3D, v1:Number3D, v2:Number3D):Number3D* ???
> >>>>> Just can't find any example explaining these
>
> >>>>> Thanks!
>
> >>>>> --
> >>>>> Michael Ivanov ,Programmer
> >>>>> Neurotech Solutions Ltd.
> >>>>> Flex|Air |3D|Unity|
> >>>>>www.neurotechresearch.com
> >>>>> Tel:054-4962254
> >>>>> [email protected]
> >>>>> [email protected]
>
> >>>> --
> >>>> Michael Ivanov ,Programmer
> >>>> Neurotech Solutions Ltd.
> >>>> Flex|Air |3D|Unity|www.neurotechresearch.com
> >>>> Tel:054-4962254
> >>>> [email protected]
> >>>> [email protected]

Reply via email to