private bool IsValid(float x, float y, float z)
{
ThrowIfDisposed();
return !Validating.GetInvocationList().Select(h => {
var check = new VectorValidationEventArgs(x, y, z);
h.DynamicInvoke(new object[] { this, check });
return !check.Valid;
}).Any(failed => failed);
}