mirror of https://github.com/CGAL/cgal
Merge remote-tracking branch 'cgal/6.0.x-branch' into master
This commit is contained in:
commit
f975f7e4e0
|
|
@ -99,7 +99,7 @@ returns the squared length of `s`.
|
||||||
Kernel::FT squared_length() const;
|
Kernel::FT squared_length() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
returns the vector `s.target()` - `s`.`source()`.
|
returns the vector `s.target()` - `s.source()`.
|
||||||
*/
|
*/
|
||||||
Vector_3<Kernel> to_vector() const;
|
Vector_3<Kernel> to_vector() const;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,10 @@ find_package(CGAL REQUIRED)
|
||||||
include(CGAL_CreateSingleSourceCGALProgram)
|
include(CGAL_CreateSingleSourceCGALProgram)
|
||||||
|
|
||||||
find_package(Eigen3 3.1.0 REQUIRED)
|
find_package(Eigen3 3.1.0 REQUIRED)
|
||||||
if(Eigen3_FOUND)
|
include(CGAL_Eigen3_support)
|
||||||
|
|
||||||
|
if(TARGET CGAL::Eigen3_support)
|
||||||
message(STATUS "Found Eigen")
|
message(STATUS "Found Eigen")
|
||||||
include(CGAL_Eigen3_support)
|
|
||||||
|
|
||||||
set(targets kinetic_partition)
|
set(targets kinetic_partition)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,18 +5,10 @@ cmake_minimum_required(VERSION 3.12...3.31)
|
||||||
|
|
||||||
project(Kinetic_space_partition_Tests)
|
project(Kinetic_space_partition_Tests)
|
||||||
|
|
||||||
set(CMAKE_CXX_STANDARD 17)
|
find_package(CGAL REQUIRED)
|
||||||
|
|
||||||
find_package(CGAL QUIET COMPONENTS Core)
|
|
||||||
include(CGAL_CreateSingleSourceCGALProgram)
|
include(CGAL_CreateSingleSourceCGALProgram)
|
||||||
|
|
||||||
find_package(Eigen3 3.1.0 REQUIRED)
|
find_package(Eigen3 3.1.0 REQUIRED)
|
||||||
if(NOT Eigen3_FOUND)
|
|
||||||
message(ERROR "This project requires the Eigen library, and will not be compiled.")
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
message(STATUS "Found Eigen")
|
|
||||||
include(CGAL_Eigen3_support)
|
include(CGAL_Eigen3_support)
|
||||||
|
|
||||||
set(targets kinetic_3d_test_all issue_8624)
|
set(targets kinetic_3d_test_all issue_8624)
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,10 @@ find_package(CGAL REQUIRED)
|
||||||
include(CGAL_CreateSingleSourceCGALProgram)
|
include(CGAL_CreateSingleSourceCGALProgram)
|
||||||
|
|
||||||
find_package(Eigen3 3.1.0 REQUIRED)
|
find_package(Eigen3 3.1.0 REQUIRED)
|
||||||
if(Eigen3_FOUND)
|
include(CGAL_Eigen3_support)
|
||||||
|
|
||||||
|
if(TARGET CGAL::Eigen3_support)
|
||||||
message(STATUS "Found Eigen")
|
message(STATUS "Found Eigen")
|
||||||
include(CGAL_Eigen3_support)
|
|
||||||
|
|
||||||
set(targets ksr_basic ksr_building ksr_parameters)
|
set(targets ksr_basic ksr_building ksr_parameters)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,10 @@ find_package(CGAL REQUIRED)
|
||||||
include(CGAL_CreateSingleSourceCGALProgram)
|
include(CGAL_CreateSingleSourceCGALProgram)
|
||||||
|
|
||||||
find_package(Eigen3 3.1.0 REQUIRED)
|
find_package(Eigen3 3.1.0 REQUIRED)
|
||||||
if(Eigen3_FOUND)
|
include(CGAL_Eigen3_support)
|
||||||
|
|
||||||
|
if(TARGET CGAL::Eigen3_support)
|
||||||
message(STATUS "Found Eigen")
|
message(STATUS "Found Eigen")
|
||||||
include(CGAL_Eigen3_support)
|
|
||||||
|
|
||||||
set(targets ksr_test ksr_reorientation ksr_regularization)
|
set(targets ksr_test ksr_reorientation ksr_regularization)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1699,6 +1699,9 @@ private:
|
||||||
{
|
{
|
||||||
set_status(hf, MESH_BORDER); //only 1 or 2 of the listed halfedges
|
set_status(hf, MESH_BORDER); //only 1 or 2 of the listed halfedges
|
||||||
//will survive face removal, but status will be correct
|
//will survive face removal, but status will be correct
|
||||||
|
set_status(opposite(hf, mesh_), PATCH_BORDER); //idem
|
||||||
|
//some of them will not survive but setting status
|
||||||
|
//is cheaper then checking which should be set
|
||||||
}
|
}
|
||||||
CGAL::Euler::remove_face(h, mesh_);
|
CGAL::Euler::remove_face(h, mesh_);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -32,6 +32,10 @@
|
||||||
#include <boost/iterator/function_output_iterator.hpp>
|
#include <boost/iterator/function_output_iterator.hpp>
|
||||||
#include <boost/container/small_vector.hpp>
|
#include <boost/container/small_vector.hpp>
|
||||||
|
|
||||||
|
#ifdef CGAL_DEBUG_DECIMATION
|
||||||
|
#include <CGAL/IO/polygon_soup_io.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <unordered_map>
|
#include <unordered_map>
|
||||||
|
|
||||||
|
|
@ -243,7 +247,7 @@ bool is_edge_between_coplanar_faces(edge_descriptor e,
|
||||||
Point_ref_3 s = get(vpm, target(next(opposite(h, tm), tm), tm) );
|
Point_ref_3 s = get(vpm, target(next(opposite(h, tm), tm), tm) );
|
||||||
|
|
||||||
if (coplanar_cos_threshold==-1)
|
if (coplanar_cos_threshold==-1)
|
||||||
return coplanar(p, q, r, s);
|
return coplanar(p, q, r, s) && coplanar_orientation(p, q, r, s)!=CGAL::POSITIVE;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
typename Kernel::Compare_dihedral_angle_3 pred;
|
typename Kernel::Compare_dihedral_angle_3 pred;
|
||||||
|
|
@ -848,6 +852,10 @@ bool decimate_impl(const TriangleMeshIn& tm_in,
|
||||||
|
|
||||||
if (!is_polygon_soup_a_polygon_mesh(faces))
|
if (!is_polygon_soup_a_polygon_mesh(faces))
|
||||||
{
|
{
|
||||||
|
#ifdef CGAL_DEBUG_DECIMATION
|
||||||
|
CGAL::IO::write_polygon_soup("soup.off", corners, faces);
|
||||||
|
std::cout << "the output is not a valid polygon mesh!" << std::endl;
|
||||||
|
#endif
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue