change the implementation of isometric constraint