forked from qhull/qhull
-
Notifications
You must be signed in to change notification settings - Fork 0
Qhull development for www.qhull.org -- Qhull 8.0.2 (2020.2 candidate) at https://github.com/qhull/qhull/wiki
License
mcx/qhull
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Name qhull, rbox 2020.2 2020/08/31 (8.0.2) Convex hull, Delaunay triangulation, Voronoi diagrams, Halfspace intersection Documentation: html/index.htm <http://www.qhull.org/html> Available from: <http://www.qhull.org> <http://www.qhull.org/download> <http://github.com/qhull/qhull/wiki> (git@github.com:qhull/qhull.git) News and a paper: <http://www.qhull.org/news> <http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.117.405> Version 1 (simplicial only): <http://www.qhull.org/download/qhull-1.0.tar.gz> Purpose Qhull is a general dimension convex hull program that reads a set of points from stdin, and outputs the smallest convex set that contains the points to stdout. It also generates Delaunay triangulations, Voronoi diagrams, furthest-site Voronoi diagrams, and halfspace intersections about a point. Rbox is a useful tool in generating input for Qhull; it generates hypercubes, diamonds, cones, circles, simplices, spirals, lattices, and random points. Qhull produces graphical output for Geomview. This helps with understanding the output. <http://www.geomview.org> Environment requirements Qhull and rbox should run on all 32-bit and 64-bit computers. Use an ANSI C or C++ compiler to compile the program. The software is self-contained. It comes with examples and test scripts. Qhull's C++ interface uses the STL. The C++ test program uses QTestLib from the Qt Framework. Qhull is copyrighted software. Please read COPYING.txt and REGISTER.txt before using or distributing Qhull. To cite Qhull, p 8000 lease use Barber, C.B., Dobkin, D.P., and Huhdanpaa, H.T., "The Quickhull algorithm for convex hulls," ACM Trans. on Mathematical Software, 22(4):469-483, Dec 1996, http://www.qhull.org. To modify Qhull, particularly the C++ interface Qhull is on GitHub (http://github.com/qhull/qhull/wiki, git@github.com:qhull/qhull.git) For internal documentation, see html/qh-code.htm To install Qhull Qhull is precompiled for Windows 32-bit, otherwise it needs compilation. Qhull includes Makefiles for gcc and other targets, CMakeLists.txt for CMake, .sln/.vcproj/.vcxproj files for Microsoft Visual Studio, and .pro files for Qt Creator. It compiles under Windows with mingw. (<https://github.com/qhull/qhull/wiki/Qhull-build-systems>) Install and build instructions follow. See the end of this document for a list of distributed files. ------------------ Index Installing Qhull on Windows 10, 8, 7 (32- or 64-bit), Windows XP, and Windows NT Installing Qhull on Unix with gcc Installing Qhull with CMake 2.6 or later Installing Qhull with Qt Working with Qhull's C++ interface Calling Qhull from C programs Compiling Qhull with Microsoft Visual C++ Compiling Qhull with Qt Creator Compiling Qhull with mingw/gcc on Windows Compiling Qhull with cygwin on Windows Compiling from Makfile without gcc Compiling on other machines and compilers Distributed files Authors ------------------ Installing Qhull on Windows 10, 8, 7 (32- or 64-bit), Windows XP, and Windows NT The zip file contains rbox.exe, qhull.exe, qconvex.exe, qdelaunay.exe, qhalf.exe, qvoronoi.exe, testqset.exe, user_eg*.exe, documentation files, and source files. Qhull.exe and user-eg3.exe are compiled with the reentrant library while the other executables use the non-reentrant library. To install Qhull: - Unzip the files into a directory (e.g., named 'qhull') - Click on QHULL-GO or open a command window into Qhull's bin directory. - Test with 'rbox D4 | qhull' To uninstall Qhull - Delete the qhull directory To learn about Qhull: - Execute 'qconvex' for a synopsis and examples. Or 'qconvex --help' or 'qconvex -?' - Execute 'rbox 10 | qconvex' to compute the convex hull of 10 random points. - Execute 'rbox 10 | qconvex i TO file' to write results to 'file'. - Browse the documentation: qhull\html\index.htm - If an error occurs, Windows sends the error to stdout instead of stderr. Use 'TO xxx' to send normal output to xxx To improve the command window - Double-click the window bar to increase the size of the window - Right-click the window bar - Select Properties - Check QuickEdit Mode Select text with right-click or Enter Paste text with right-click - Change Font to Lucinda Console - Change Layout to Screen Buffer Height 999, Window Size Height 55 - Change Colors to Screen Background White, Screen Text Black - Click OK - Select 'Modify shortcut that started this window', then OK If you regularly use qhull on a Windows host, install a bash shell such as https://gitforwindows.org/ # based on MSYS2 https://github.com/git-for-windows/git/wiki http://www.msys2.org/ https://github.com/msys2/msys2/wiki [mar'19] Git for Windows v2.21 requires 'qhull --help' Install in C:\Git\... # Not 'Program Files\...' otherwise './configure && make' fails www.cygwin.com www.mingw.org/wiki/msys # for Windows XP Road Bash (www.qhull.org/bash) # based on MSYS ------------------ Installing Qhull on Unix with gcc To build Qhull, static libraries, shared library, and C++ interface - Download and extract Qhull (either GitHub, .tgz file, or .zip file) - make - export LD_LIBRARY_PATH=$PWD/lib:$LD_LIBRARY_PATH - make test 'make install' installs Qhull at '/usr/local/'. It installs pkg-config files at '/usr/local/lib/pkgconfig'. Change the install directory with DESTDIR and PREFIX. To build 32-bit Qhull on a 64-bit host (uses 33% less memory in 4-d) - make new M32=-m32 To build 32-bit Qhull without -fpic (may be faster, but shared library may fail) - make new M32=-m32 FPIC= The Makefiles may be edited for other compilers. If 'testqset' exits with an error, qhull is broken A simple Makefile for Qhull is in src/libqhull and src/libqhull_r. To build the Qhull executables and libqhullstatic - Extract Qhull from qhull...tgz or qhull...zip - cd src/libqhull_r # cd src/libqhull - make ------------------ Installing Qhull with CMake 2.6 or later See CMakeLists.txt for examples and further build instructions To build Qhull, static libraries, shared library, and C++ interface - Download and extract Qhull (either GitHub, .tgz file, or .zip file) - cd build - cmake --help # List build generators - cmake -G "<generator>" .. # e.g., for MINGW-w64 -- cmake -G "MSYS Makefiles" .. - cmake .. - make - ctest - make install # If MSYS or UNIX, default CMAKE_INSTALL_PREFIX is '/usr/local' # otherwise if WINDOWS, installs to ../bin, ../include, and ../lib - make uninstall # Delete the files in install_manifest.txt The ".." is important. It refers to the parent directory (i.e., qhull/) CMake installs lib/pkgconfig/qhull*.pc for use with pkg-config If CMAKE_INSTALL_PREFIX is C:/Program Files/qhull, you may need to give 'Users' "full control" to qhull's sub-directories: bin, doc, include, lib, and man (folder > Properties > Security > Edit > Users). On Windows, CMake's 64-bit generators have a "Win64" tag. Qhull's data structures are substantial larger as 64-bit code than as 32-bit code. This may slow down Qhull. If cmake fails with "No CMAKE_C_COMPILER could be found" - cmake was not able to find the build environment specified by -G "..." If cmake's gcc smoketest fails after a Windows update - Reinstall MINGW-w64 and delete build/CMakeCache.txt. A Windows update can break gcc process creation for cc1. ------------------ Installing Qhull with Qt To build Qhull, including its C++ test program (qhulltest) - Download and extract Qhull (either GitHub, .tgz file, or .zip file) - Load src/qhull-all.pro into QtCreator - Configure the project to use a Shadow build at the same level as 'src', 'bin', and 'lib' If, instead, the shadow build is a subdirectory of 'build', Qt Creator will install Qhull in 'build/bin' and 'build/lib' - Build - Build qhulltest with a C++11 or later compiler - qhulltest depends on shared libraries QtCore.a and QtTest.a. They may need to be copied into the bin directory. On Windows, copy Qt5Core.dll and Qt5Test.dll, e.g., /qt/5.11.2/msvc2017_64/bin - If qhulltest fails with exit status 127 and no error message, check for missing Q5Core.dll and Qt5Test.dll ------------------ Working with Qhull's C++ interface See html/qh-code.htm#cpp for calling Qhull from C++ programs Class and method documentation is limited See html/qh-code.htm#reentrant for converting from Qhull-2012 Examples of using the C++ interface user_eg3_r.cpp qhulltest/*_test.cpp Qhull's C++ interface is likely to change. Stay current with GitHub. To clone Qhull's next branch from http://github.com/qhull/qhull/wiki git init git clone git@github.com:qhull/qhull.git cd qhull git checkout next ... git pull origin next Compile qhullcpp and libqhullstatic_r with the same compiler. Both libraries use the C routines setjmp() and longjmp() for error handling. They must be compiled with the same compiler. Qhull provides pkg-config support with build/qhull.pc.in and lib/pkgconfig/qhull*.pc With back-ticks, you can compile your C++ program with the Qhull libraries: g++ `pkg-config --cflags --libs qhullcpp qhullstatic_r` -o my_app my_app.cpp or g++ `pkg-config --cflags --libs qhullcpp qhull_r` -o my_app my_app.cpp qhullcpp must be linked before qhull_r, otherwise the linker reports an error -- "QhullUser ... multiple definition of `qh_fprintf'" ------------------ Calling Qhull from C programs See html/qh-code.htm#library for calling Qhull from C programs Qhull provides pkg-config support with build/qhull.pc.in and lib/pkgconfig/qhull*.pc With back-ticks, you can compile your C program with the Qhull library gcc `pkg-config --cflags --libs qhull_r` -o my_app my_app.c See html/qh-code.htm#reentrant for converting from Qhull-2012 Warning: You will need to understand Qhull's data structures and read the code. Most users will find it easier to call Qhull as an external command. The reentrant 'C' code (src/libqhull_r), passes a pointer to qhT to most Qhull routines. This allows multiple instances of Qhull to run at the same time. It simplifies the C++ interface. The non-reentrant 'C' code (src/libqhull) looks unusual. It refers to Qhull's global data structure, qhT, through a 'qh' macro (e.g., 'qh ferr'). This allows the same code to use static memory or heap memory. If qh_QHpointer is defined, qh_qh is a pointer to an allocated qhT; otherwise qh_qh is a global static data structure of type qhT. ------------------ Compiling Qhull with Microsoft Visual C++ To compile 32-bit Qhull with Microsoft Visual C++ 2010 and later - Download and extract Qhull (either GitHub, .tgz file, or .zip file) - Load solution build/qhull-32.sln - Right-click 'Retarget solution' from toolset v110 to your Platform Toolset File > Save All - Build target 'Win32' - Project qhulltest requires Qt for DevStudio (http://www.qt.io) Set the QTDIR environment variable to your Qt directory (e.g., c:/qt/5.2.0/5.2.0/msvc2012) If QTDIR is incorrect, precompile will fail with 'Can not locate the file specified' - Copy Qt shared libraries, QtCore.dll and QtTest.dll, into the bin directory To compile 64-bit Qhull with Microsoft Visual C++ 2010 and later - 64-bit Qhull has larger data structures due to 64-bit pointers. This may slow down Qhull. - Download and extract Qhull (either GitHub, .tgz file, or .zip file) - Load solution build/qhull-64.sln - Right-click 'Retarget solution' from toolset v110 to your Platform Toolset File > Save All - Build target 'x64' - If build as 32-bit fails, use solution build/qhull-32.sln - Project qhulltest requires Qt for DevStudio (http://www.qt.io) Set the QTDIR environment variable to your Qt directory (e.g., c:/qt/5.2.0/5.2.0/msvc2012_64) If QTDIR is incorrect, precompile will fail with 'Can not locate the file specified' If error -- MSB8020: The build tools for Visual Studio 2012 (Platform Toolset = 'v110') cannot be found. - 'Project > Retarget solution' for both qhull-32.sln and qhull-64.sln - 'File > Open' your preferred solution (qhull-32.sln or qhull-64.sln) - 'Save All' both projects - DevStudio may need a restart To compile Qhull with Microsoft Visual C++ 2005 (vcproj files) - Download and extract Qhull (either GitHub, .tgz file, or .zip file) - Load solution build/qhull.sln - Build target 'win32' (not 'x64') - Project qhulltest requires Qt for DevStudio (http://www.qt.io) Set the QTDIR environment variable to your Qt directory (e.g., c:/qt/4.7.4) If QTDIR is incorrect, precompile will fail with 'Can not locate the file specified' ------------------ Compiling Qhull with Qt Creator Qt (http://www.qt.io) is a C++ framework for Windows, Linux, and Macintosh Qhull uses QTestLib to test qhull's C++ interface (see src/qhulltest/) To compile Qhull with Qt Creator - Download and extract Qhull (either GitHub, .tgz file, or .zip file) - Download the Qt SDK - Start Qt Creator - Load src/qhull-all.pro - Configure the project to use a Shadow build at the same level as 'src', 'bin', and 'lib' If, instead, the shadow build is a subdirectory of 'build', Qt Creator will install Qhull in 'build/bin' and 'build/lib' - Build - Build qhulltest with a C++11 or later compiler - qhulltest depends on shared libraries QtCore.a and QtTest.a. They may need to be copied into the bin directory. On Windows, copy Qt5Core.dll and Qt5Test.dll, e.g., /qt/5.11.2/msvc2017_64/bin - If qhulltest fails with exit status 127 and no error message, check for missing Q5Core.dll and Qt5Test.dll ------------------ Compiling Qhull with mingw/gcc on Windows To compile Qhull with MINGW - Download and extract Qhull (either GitHub, .tgz file, or .zip file) - Install GitForWindows (https://gitforwindows.org/) or MSYS2 (http://www.msys2.org/) Install in C:\Git\... # Not 'Program Files\...' otherwise './configure && make' will not work - Install MINGW-w64 with gcc (https://mingw-w64.org/) 1) Goto sourceforge -- https://sourceforge.net/projects/mingw-w64/files/ 2) in folder -- mingw-w64 3) download installer -- MinGW-W64-install.exe Run the installer 1) Select i686/posix/dwarf 2) Install in 'C:\mingw-w64' # Not 'Program Files\...' Rename /c/mingw-w64/mingw32/bin/mingw32-make.exe to make.exe Add the 'C:\mingw-w64\mingw32\bin' directory to your $PATH environment variable Execute 'which make' to check that 'make' is mingw-w64's make - Compile Qhull from the home directory make help make Notes - Mingw is included with Qt SDK in qt/Tools/mingw53_32 - If you use Windows XP Install Road Bash (http://www.qhull.org/bash) or MSYS (http://www.mingw.org/wiki/msys) Install MINGW (http://mingw.org/) ------------------ Compiling Qhull with cygwin on Windows To compile Qhull with cygwin - Download and extract Qhull (either GitHub, .tgz file, or .zip file) - Install cygwin (http://www.cygwin.com) - Include packages for gcc, make, ar, and ln - make ------------------ Compiling from Makfile without gcc The file, qhull-src.tgz, contains documentation and source files for qhull and rbox. To unpack the tgz file - tar zxf qhull-src.tgz - cd qhull - Use qhull/Makefile Simpler Makefiles are qhull/src/libqhull/Makefile and qhull/src/libqhull_r/Makefile Compiling qhull and rbox with Makefile - in Makefile, check the CC, CCOPTS1, PRINTMAN, and PRINTC defines - the defaults are gcc and enscript - CCOPTS1 should include the ANSI flag. It defines __STDC__ - in user.h, check the definitions of qh_SECticks and qh_CPUclock. - use '#define qh_CLOCKtype 2' for timing runs longer than 1 hour - type: make - this builds: qhull qconvex qdelaunay qhalf qvoronoi rbox libqhull.a libqhull_r.a - type: make doc - this prints the man page - See also qhull/html/index.htm - if your compiler reports many errors, it is probably not a ANSI C compiler - you will need to set the -ansi switch or find another compiler - if your compiler warns about missing prototypes for fprintf() etc. - this is ok, your compiler should have these in stdio.h - if your compiler warns about missing prototypes for memset() etc. - include memory.h in qhull_a.h - if your compiler reports "global.c: storage size of 'qh_qh' isn't known" - delete the initializer "={0}" in global.c, stat.c and mem.c - if your compiler warns about "stat.c: improper initializer" - this is ok, the initializer is not used - if you have trouble building libqhull.a with 'ar' - try 'make -f Makefile.txt qhullx' - if the code compiles, the qhull test case will automatically execute - if an error occurs, there's an incompatibility between machines - If you can, try a different compiler - You can turn off the Qhull memory manager with qh_NOmem in mem.h - You can turn off compiler optimization (-O2 in Makefile) - If you find the source of the problem, please let us know - to install the programs and their man pages: - define MANDIR and BINDIR - type 'make install' - if you have Geomview (www.geomview.org) - try 'rbox 100 | qconvex G >a' and load 'a' into Geomview - run 'q_eg' for Geomview examples of Qhull output (see qh-eg.htm) ------------------ Compiling on other machines and compilers Qhull may compile with Borland C++ 5.0 bcc32. A Makefile is included. Execute 'cd src/libqhull; make -f Mborland'. If you use the Borland IDE, set the ANSI option in Options:Project:Compiler:Source:Language-compliance. Qhull may compile with Borland C++ 4.02 for Win32 and DOS Power Pack. Use 'cd src/libqhull; make -f Mborland -D_DPMI'. Qhull 1.0 compiles with Borland C++ 4.02. For rbox 1.0, use "bcc32 -WX -w- -O2-e -erbox -lc rbox.c". Use the same options for Qhull 1.0. [D. Zwick] If you have troubles with the memory manager, you can turn it off by defining qh_NOmem in mem.h. ------------------ Distributed files README.txt // Instructions for installing Qhull REGISTER.txt // Qhull registration COPYING.txt // Copyright notice QHULL-GO.lnk // Windows icon for eg/qhull-go.bat Announce.txt // Announcement CMakeLists.txt // CMake build file (2.6 or later) File_id.diz // Package descriptor index.htm // Home page Makefile // Makefile for gcc and other compilers qhull*.md5sum // md5sum for all files bin/* // Qhull executables and dll (.zip only) build/CMakeModules/CheckLFS.cmake // enables Large File Support in CMake build/config.cmake.in // extract target variables build/qhull.pc.in // pkg-config template for creating lib/pkgconfig/qhull*.pc build/qhull-32.sln // 32-bit DevStudio solution and project files (2010 and later) build/*-32.vcxproj build/qhull-64.sln // 64-bit DevStudio solution and project files (2010 and later) build/*-64.vcxproj build/qhull.sln // DevStudio solution and project files (2005 and 2009) build/*.vcproj build/qhulltest/ // DevStudio project files for qhulltest (C++ and Qt) build/README-build.txt // Contents of build/ eg/* // Test scripts and geomview files from q_eg html/index.htm // Manual html/qh-faq.htm // Frequently asked questions html/qh-get.htm // Download page html/qhull-cpp.xml // C++ style notes as a Road FAQ (www.qhull.org/road) src/Changes.txt // Change history for Qhull and rbox src/qhull-all.pro // Qt project eg/ q_benchmark // shell script for precision and performance benchmark q_benchmark-ok.txt // reviewed output from q_benchmark q_eg // shell script for Geomview examples (eg.01.cube) q_egtest // shell script for Geomview test examples q_test // shell script to test qhull q_test.bat // Windows batch test for QHULL-GO.bat // cd bin; ..\eg\q_test.bat >q_test.x 2>&1 q_test-ok.txt // reviewed output from q_test qhulltest-ok.txt // reviewed output from qhulltest (Qt only) make-qhull_qh.sh // shell script to create non-reentrant qhull_qh from reentrant Qhull make-vcproj.sh // shell script to create vcproj and vcxprog files qhull-zip.sh // shell script to create distribution files qtest.sh // shell script for testing and logging qhull rbox consists of (bin, html): rbox.exe // Win32 executable (.zip only) rbox.htm // html manual rbox.man // Unix man page rbox.txt qhull consists of (bin, html): qconvex.exe // Win32 executables and dlls (.zip download only) qhull.exe // Built with the reentrant library (about 2% slower) qdelaunay.exe qhalf.exe qvoronoi.exe qhull_r.dll qhull-go.bat // command window qconvex.htm // html manual qdelaun.htm qdelau_f.htm qhalf.htm qvoronoi.htm qvoron_f.htm qh-eg.htm qh-code.htm qh-impre.htm index.htm qh-opt*.htm qh-quick.htm qh--*.gif // images for manual normal_voronoi_knauss_oesterle.jpg qh_findbestfacet-drielsma.pdf qhull.man // Unix man page qhull.txt bin/ msvcr80.dll // Visual C++ redistributable file (.zip download only) src/ qhull/unix.c // Qhull and rbox applications using non-reentrant libqhullstatic.a rbox/rbox.c qconvex/qconvex.c qhalf/qhalf.c qdelaunay/qdelaunay.c qvoronoi/qvoronoi.c qhull/unix_r.c // Qhull and rbox applications using reentrant libqhullstatic_r.a rbox/rbox_r.c qconvex/qconvex_r.c // Qhull applications built with reentrant libqhull_r/Makefile qhalf/qhalf_r.c qdelaunay/qdelaun_r.c qvoronoi/qvoronoi_r.c user_eg/user_eg_r.c // example of using qhull_r.dll from a user program user_eg2/user_eg2_r.c // example of using libqhullstatic_r.a from a user program user_eg3/user_eg3_r.cpp // example of Qhull's C++ interface libqhullcpp with libqhullstatic_r.a qhulltest/qhulltest.cpp // Test of Qhull's C++ interface using Qt's QTestLib qhull-*.pri // Include files for Qt projects testqset_r/testqset_r.c // Test of reentrant qset_r.c and mem_r.c testqset/testqset.c // Test of non-rentrant qset.c and mem.c src/libqhull libqhull.pro // Qt project for non-rentrant, shared library (qhull.dll) index.htm // design documentation for libqhull qh-*.htm qhull-exports.def // Export Definition files for Visual C++ qhull-nomerge-exports.def qhull_p-exports.def qhull_p-nomerge-exports.def Makefile // Simple gcc Makefile for qhull and libqhullstatic.a Mborland // Makefile for Borland C++ 5.0 libqhull.h // header file for qhull user.h // header file of user definable constants libqhull.c // Quickhull algorithm with partitioning user.c // user re-definable functions usermem.c userprintf.c userprintf_rbox.c qhull_a.h // include files for libqhull/*.c geom.c // geometric routines geom2.c geom.h global.c // global variables io.c // input-output routines io.h mem.c // memory routines, this is stand-alone code mem.h merge.c // merging of non-convex facets merge.h poly.c // polyhedron routines poly2.c poly.h qset.c // set routines, this only depends on mem.c qset.h random.c // utilities w/ Park & Miller's random number generator random.h rboxlib.c // point set generator for rbox stat.c // statistics stat.h src/libqhull_r libqhull_r.pro // Qt project for rentrant, shared library (qhull_r.dll) index.htm // design documentation for libqhull_r qh-*_r.htm qhull_r-exports.def // Export Definition files for Visual C++ qhull_r-nomerge-exports.def Makefile // Simple gcc Makefile for qhull and libqhullstatic.a libqhull_r.h // header file for qhull user_r.h // header file of user definable constants libqhull_r.c // Quickhull algorithm wi_r.hpartitioning user_r.c // user re-definable functions usermem.c userprintf.c userprintf_rbox.c qhull_ra.h // include files for libqhull/*_r.c geom_r.c // geometric routines geom2.c geom_r.h global_r.c // global variables io_r.c // input-output routines io_r.h mem_r.c // memory routines, this is stand-alone code mem.h merge_r.c // merging of non-convex facets merge.h poly_r.c // polyhedron routines poly2.c poly_r.h qset_r.c // set routines, this only depends on mem_r.c qset.h random_r.c // utilities w/ Park & Miller's random number generator random.h rboxlib_r.c // point set generator for rbox stat_r.c // statistics stat.h src/libqhullcpp/ libqhullcpp.pro // Qt project for renentrant, static C++ library Qhull.cpp // Calls libqhull_r.c from C++ Qhull.h qt-qhull.cpp // Supporting methods for Qt Coordinates.cpp // input classes Coordinates.h PointCoordinates.cpp PointCoordinates.h RboxPoints.cpp // call rboxlib.c from C++ RboxPoints.h QhullFacet.cpp // data structure classes QhullFacet.h QhullHyperplane.cpp QhullHyperplane.h QhullPoint.cpp QhullPoint.h QhullQh.cpp QhullRidge.cpp QhullRidge.h QhullVertex.cpp QhullVertex.h QhullFacetList.cpp // collection classes QhullFacetList.h QhullFacetSet.cpp QhullFacetSet.h QhullIterator.h QhullLinkedList.h QhullPoints.cpp QhullPoints.h QhullPointSet.cpp QhullPointSet.h QhullSet.cpp QhullSet.h QhullSets.h QhullVertexSet.cpp QhullVertexSet.h functionObjects.h // supporting classes QhullError.cpp QhullError.h QhullQh.cpp QhullQh.h QhullStat.cpp QhullStat.h QhullUser.cpp QhullUser.h RoadError.cpp // Supporting base classes RoadError.h RoadLogEvent.cpp RoadLogEvent.h usermem_r-cpp.cpp // Optional override for qh_exit() to throw an error src/libqhullstatic/ libqhullstatic.pro // Qt project for non-reentrant, static library src/libqhullstatic_r/ libqhullstatic_r.pro // Qt project for reentrant, static library src/qhulltest/ qhulltest.pro // Qt project for test of C++ interface Coordinates_test.cpp // Test of each class PointCoordinates_test.cpp Qhull_test.cpp QhullFacet_test.cpp QhullFacetList_test.cpp QhullFacetSet_test.cpp QhullHyperplane_test.cpp QhullLinkedList_test.cpp QhullPoint_test.cpp QhullPoints_test.cpp QhullPointSet_test.cpp QhullRidge_test.cpp QhullSet_test.cpp QhullVertex_test.cpp QhullVertexSet_test.cpp RboxPoints_test.cpp RoadTest.cpp // Run multiple test files with QTestLib RoadTest.h ------------------ Authors C. Bradford Barber Hannu Huhdanpaa (Version 1.0) bradb@shore.net hannu@qhull.org Qhull 1.0 and 2.0 were developed under NSF grants NSF/DMS-8920161 and NSF-CCR-91-15793 750-7504 at the Geometry Center and Harvard University. If you find Qhull useful, please let us know.
About
Qhull development for www.qhull.org -- Qhull 8.0.2 (2020.2 candidate) at https://github.com/qhull/qhull/wiki
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published
Languages
- C 59.2%
- HTML 20.7%
- C++ 12.9%
- Shell 2.7%
- Makefile 1.5%
- Roff 1.0%
- Other 2.0%