This code is an extension to PostgreSQL on finding CAD features efficiently. 
Development of this code has been supported by the Marie Curie Initial training Network INSIST. 
Funding is provided by the EU Seventh Framework Programme (FP7) under grant agreement n° 289361.

Users of the code are required to cite the following publications.

Zhibin Niu, Ralph R. Martin, Frank C. Langbein, and Malcolm A. Sabin. 
Rapidly finding CAD features using database optimization. 
Computer-Aided Design, 69, 35–50, 2015. 
DOI: 10.1016/j.cad.2015.08.001.

Zhibin Niu, Ralph R. Martin, Malcolm A. Sabin, Frank C. Langbein, Henry Bucklow. 
Applying Database Optimization Technologies to Feature Recognition in CAD. 
Computer-Aided Design and Applications 12 (3), 373–382, 2015. 
DOI: 10.1080/16864360.2014.981468.

Efficient feature recognizer is released under the Affero GPL v3 License.

All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable 
provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the 
unmodified Program. The output from running a covered work is covered by this License only if the output, given 
its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, 
as provided by copyright law.
You may make, run and propagate covered works that you do not convey, without conditions so long as your license 
otherwise remains in force. You may convey covered works to others for the sole purpose of having them make 
modifications exclusively for you, or provide you with facilities for running those works, provided that you comply 
with the terms of this License in conveying all material for which you do not control copyright. Those thus making 
or running the covered works for you must do so exclusively on your behalf, under your direction and control, on 
terms that prohibit them from making any copies of your copyrighted material outside their relationship with you.

Anyone who is interested to using the code for proprietary purposes, please contact Zhibin Niu (


Efficient feature recognizer requires the installation of PostgreSQL.
Efficient feature recognizer requires the CADfix API in order to run. For more details on the CADfix API, and to 
request an evaluation license, contact ITI Ltd (