SplineLearner: Generative learning system of design constraints for models represented using B-spline surfaces. (January 2022)