Temporary repository used to save branch code
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

77 lines
3.2 KiB

----------------------------
Indirect Predicates for Geometric Constructions
----------------------------
by Marco Attene
Consiglio Nazionale delle Ricerche
Istituto di Matematica Applicata e Tecnologie Informatiche
Sezione di Genova
IMATI-GE / CNR
This software implements fast and guaranteed floating point geometric predicates,
including novel indirect predicates as described in the following article:
M. Attene. Indirect Predicates for Geometric Constructions. In Elsevier Computer-Aided Design (2020, https://doi.org/10.1016/j.cad.2020.102856).
-------------------
Citation policy
--------------------
You are free to use this software according to the licensing terms specified at the end of this document.
If you use it for research purposes and produce publications, please cite the following paper
that describes the underlying theory:
> M. Attene. Indirect Predicates for Geometric Constructions. In Elsevier Computer-Aided Design (2020).
-------------------
System Requirements
--------------------
The software has been tested on 64 bit PCs running:
- Microsoft Windows OS with MSVC
- Linux with standard gcc/g++ development environment
- Mac OSX with CLANG.
---------------------
Usage
---------------------
The repository provides a header-only C++ library.
To use in your code:
1) Add the "Indirect_Predicates-master/include" path to the list of paths where your compiler searches header files
2) Include "implicit_point.h" in your code
3) ALWAYS tell your compiler to use the following directives:<br>
MSVC: /fp:strict /Oi /STACK:8421376 /D _CRT_SECURE_NO_WARNINGS<br>
GCC/G++/CLANG: -frounding-math -O2 -Wl,-z,stacksize=8421376<br>
4) Tell your compiler whether your CPU supports SSE2/AVX2 instructions<br>
MSVC: /arch:SSE2 or /arch:AVX2<br>
GCC/G++/CLANG: -msse2 or -mavx2<br>
As an example, check the CMakeLists.txt provided to compile the test.cpp code.
---------------------
Copyright and license
---------------------
Indirect_Predicates
Authors: Marco Attene
Copyright(C) 2019: IMATI-GE / CNR
IMATI-GE / CNR is Consiglio Nazionale delle Ricerche
Istituto di Matematica Applicata e Tecnologie Informatiche
Genova (Italy)
Indirect_Predicates is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published
by the Free Software Foundation; either version 3 of the License, or (at
your option) any later version.
Indirect_Predicates is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with the Indirect_Predicates. If not, see http://www.gnu.org/licenses/.