internal override bool ParseNodeBodyElement(string id, VRMLParser parser)
		{
			if(id=="matrix") Matrix=parser.ParseSFMatrix4fValue();
			else return false;
			return true;
		}
		internal SFMatrix4f ParseSFMatrix4fValue()
		{
			// 16x float

			try
			{
				SFMatrix4f ret=new SFMatrix4f();
				for(int i=0; i<16; i++) ret.Value.Add(ParseDoubleValue());
				return ret;
			}
			catch(UserCancellationException) { throw; }
			catch(Exception ex)
			{
				ErrorParsingField(VRMLReaderError.SFMatrix4fInvalid, ex);
			}

			return null;
		}
		public x3dTextureTransformMatrix3D()
		{
			Matrix=new SFMatrix4f(new List<double>(new double[] { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 }));
		}