Thanks very much Paul.

A description which actually relates to what a singular matrix does!  Perfect,
just what I needed.  I think I've solved the problem now.


> I hope I don't tell bullshit, but in simple words it means that your matrix
> degenerates. Think of matrices as description of linear transformations - in
this
> case from 3d space R1 -> 3d space R2. If it is not a singular matrix every
point from
> R1 has exactly one corresponding point in R2, thus you can invert the
transformation.
>
> If it is a singular matrix the defined transformation is no longer a
transformation
> from 3d space -> 3d space but -> 2d , 1d or 0d space - the latter if all all
points
> from R1 are transformed to (0,0,0). In this case the inverse transformation of
a
> point of R2 is not unique any more, or there will be no corresponding point in
R1
> (since you loose one or more dimensions).
>
> The above applies of course to for quadratical matrices of other dimensions
also.
>
> Hope that helps.
>
> regards
> Paul
>
> Mark Crompton schrieb:
>
> > Hi all,
> >
> > I'm currently trying to add collision detection to my
> Java3D project, a
> > little Lego editor.  When the user picks a 'brick' to move,
> I add a behavior
> > with a WakeupOnCollision tied to the brick's branch group.
> As soon as I do
> > this I get the exception below.
> >
> > Can anyone shed any light on what causes a
> SingularMatrixException?  I've
> > had a look at
http://mathworld.wolfram.com/SingularMatrix.html, but am still
> none the wiser.
>
> javax.vecmath.SingularMatrixException: cannot invert matrix
>         at javax.media.j3d.Transform3D.invertAffine(Transform3D.java:2826)
>         at javax.media.j3d.Transform3D.invert(Transform3D.java:2682)
>         at
javax.media.j3d.GeometryRetained.intersect(GeometryRetained.java:252)
>         at
> javax.media.j3d.Shape3DRetained.intersectGeometryList(Shape3DRetained.java:2
> 062)
>         at javax.media.j3d.BHTree.doSelectAny(BHTree.java:362)
>         at javax.media.j3d.BHTree.doSelectAny(BHTree.java:385)
>         at javax.media.j3d.BHTree.doSelectAny(BHTree.java:385)
>         at javax.media.j3d.BHTree.doSelectAny(BHTree.java:385)
>         at javax.media.j3d.BHTree.doSelectAny(BHTree.java:385)
>         at javax.media.j3d.BHTree.doSelectAny(BHTree.java:392)
>         at javax.media.j3d.BHTree.selectAny(BHTree.java:344)
>         at
javax.media.j3d.GeometryStructure.collide(GeometryStructure.java:1044)
>         at
> javax.media.j3d.GeometryStructure.addWakeupOnCollision(GeometryStructure.jav
> a:748)
>         at
> javax.media.j3d.WakeupOnCollisionEntry.addBehaviorCondition(WakeupOnCollisio
> nEntry.java:337)
>         at javax.media.j3d.WakeupCriterion.buildTree(WakeupCriterion.java:67)
>         at
> javax.media.j3d.BehaviorStructure.activateBehaviors(BehaviorStructure.java:3
> 45)
>         at
> javax.media.j3d.BehaviorStructure.processMessages(BehaviorStructure.java:210
> )
>         at
> javax.media.j3d.StructureUpdateThread.doWork(StructureUpdateThread.java:83)
>         at javax.media.j3d.J3dThread.run(J3dThread.java:256)
>
> Thanks,
> Mark Crompton
>
> http://sourceforge.net/projects/jlug
>
> ===========================================================================
> To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
> of the message "signoff JAVA3D-INTEREST".  For general help, send email to
> [EMAIL PROTECTED] and include in the body of the message "help".

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to