mirror of https://github.com/CGAL/cgal
Merge remote-tracking branch 'cgal/master' into Poisson-use_parallel_mesh_3-GF
# Conflicts: # Installation/CHANGES.md # Poisson_surface_reconstruction_3/examples/Poisson_surface_reconstruction_3/poisson_reconstruction_example.cpp # Poisson_surface_reconstruction_3/include/CGAL/Poisson_reconstruction_function.h # Poisson_surface_reconstruction_3/test/Poisson_surface_reconstruction_3/CMakeLists.txt
This commit is contained in:
commit
28041d0e9f
|
|
@ -65,7 +65,7 @@ jobs:
|
|||
if: steps.get_round.outputs.result != 'stop'
|
||||
with:
|
||||
repository: ${{ github.repository }}
|
||||
ref: refs/pull/${{ steps.get_pr_number.outputs.result }}/merge
|
||||
ref: refs/pull/${{ steps.get_pr_number.outputs.result }}/head
|
||||
fetch-depth: 2
|
||||
|
||||
- name: install dependencies
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(AABB_traits_benchmark)
|
||||
|
||||
find_package(CGAL REQUIRED OPTIONAL_COMPONENTS Core)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# This is the CMake script for compiling the AABB tree demo.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(AABB_tree_Demo)
|
||||
|
||||
# Find includes in corresponding build directories
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(AABB_tree_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(AABB_tree_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Advancing_front_surface_reconstruction_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -126,7 +126,7 @@ int main (int argc, char* argv[])
|
|||
|
||||
Efficient_ransac ransac;
|
||||
ransac.set_input(points);
|
||||
ransac.add_shape_factory<Plane>(); // Only planes are useful for stucturing
|
||||
ransac.add_shape_factory<Plane>(); // Only planes are useful for structuring
|
||||
|
||||
// Default RANSAC parameters
|
||||
Efficient_ransac::Parameters op;
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Advancing_front_surface_reconstruction_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Algebraic_foundations_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Algebraic_foundations_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Algebraic_kernel_d_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
|
|
|||
|
|
@ -1811,7 +1811,7 @@ public:
|
|||
* An x-critical point (x,y) of \c f (or its induced curve)
|
||||
* satisfies f(x,y) = f_y(x,y) = 0,
|
||||
* where f_y means the derivative w.r.t. y.
|
||||
* In pariticular, each singular point is x-critical.
|
||||
* In particular, each singular point is x-critical.
|
||||
*/
|
||||
class X_critical_points_2 :
|
||||
public CGAL::cpp98::binary_function< Curve_analysis_2,
|
||||
|
|
@ -1890,7 +1890,7 @@ public:
|
|||
* An y-critical point (x,y) of \c f (or its induced curve)
|
||||
* satisfies f(x,y) = f_x(x,y) = 0,
|
||||
* where f_x means the derivative w.r.t. x.
|
||||
* In pariticular, each singular point is y-critical.
|
||||
* In particular, each singular point is y-critical.
|
||||
*/
|
||||
class Y_critical_points_2 :
|
||||
public CGAL::cpp98::binary_function< Curve_analysis_2,
|
||||
|
|
|
|||
|
|
@ -1153,7 +1153,7 @@ public:
|
|||
/*!
|
||||
* \brief Constructor for a polynomial \c f
|
||||
*
|
||||
* See the documentation of the constrctor
|
||||
* See the documentation of the constructor
|
||||
* with \c Square_free_descartes_tag
|
||||
*/
|
||||
Bitstream_descartes(Polynomial f,
|
||||
|
|
|
|||
|
|
@ -135,7 +135,7 @@ public:
|
|||
//! curve has vertical line at this x-coordinate
|
||||
mutable bool _m_vertical_line;
|
||||
|
||||
//! decsribes an event
|
||||
//! describes an event
|
||||
mutable bool _m_event;
|
||||
|
||||
//! number of arcs running down the pole
|
||||
|
|
|
|||
|
|
@ -268,7 +268,7 @@ void algebraic_number_test()
|
|||
|
||||
//simplify
|
||||
{
|
||||
// just a synatx check
|
||||
// just a syntax check
|
||||
Algebraic_real_d_1(P_s2510,1,2).simplify();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Algebraic_kernel_d_Tests)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Algebraic_kernel_for_circles_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Algebraic_kernel_for_spheres_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Alpha_shapes_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Alpha_shapes_2_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Alpha_shapes_3_Demo)
|
||||
|
||||
# Find includes in corresponding build directories
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Alpha_shapes_3_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Alpha_shapes_3_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Alpha_wrap_3_Benchmark)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Alpha_wrap_3_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1191,7 +1191,7 @@ private:
|
|||
|
||||
if(refining)
|
||||
{
|
||||
// If we are re-using the triangulation, change the label of the extra elements
|
||||
// If we are reusing the triangulation, change the label of the extra elements
|
||||
// that we have added to ensure a manifold result back to external ("manifold" -> "outside")
|
||||
reset_manifold_labels();
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Alpha_wrap_3_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Apollonius_graph_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ namespace ApolloniusGraph_2 {
|
|||
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// help functions for the compulation of various quantites
|
||||
// help functions for the compulation of various quantities
|
||||
|
||||
template < class FT >
|
||||
inline FT
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Apollonius_graph_2_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Arithmetic_kernel_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
another chapter on "2D Arrangements on General Surfaces".
|
||||
This chapter can be much shorter, as all you can do with arrangements was
|
||||
explained and demonstrated in the "2D Arrangements" chapter. We should
|
||||
however intorduce the concept of TopologyTraits, and re-interpret the
|
||||
however introduce the concept of TopologyTraits, and re-interpret the
|
||||
functionality of the GeometryTraits.
|
||||
|
||||
- Incoorporate:
|
||||
|
|
@ -98,7 +98,7 @@
|
|||
- The "planar" zone visitor is also used here. I believe this should work,
|
||||
as it is generic enough (I hope).
|
||||
Can you test it by trying to incrementally insert curves to an
|
||||
arrrangement on a sphere.
|
||||
arrangement on a sphere.
|
||||
|
||||
- We can think of adding a test for the spherical topology, similar to the
|
||||
construction test developed by Baruch: Namely read n curves from a file,
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ int main (int argc, char *argv[])
|
|||
std::cerr << "Usage: " << argv[0] << " <file name> <method>"
|
||||
<< std::endl
|
||||
<< "method is either:" << std::endl
|
||||
<< " -a for aggragated insertion;" << std::endl
|
||||
<< " -a for aggregated insertion;" << std::endl
|
||||
<< " -n for incremental insertion with naive point-location;"
|
||||
<< std::endl
|
||||
<< " -w for incremental insertion with walk point-location."
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
// of line segments it reads from a file.
|
||||
//
|
||||
// Usage: seg_arr <-a | -n | -w> <input file>
|
||||
// Where: -a -- Use aggragated insertion (sweep-line);
|
||||
// Where: -a -- Use aggregated insertion (sweep-line);
|
||||
// -n -- Use incremental insertion with naive point-location;
|
||||
// -w -- Use incremental insertion with walk point-location.
|
||||
//
|
||||
|
|
@ -70,7 +70,7 @@ int main (int argc, char **argv)
|
|||
std::cerr << "Usage: " << argv[0] << " <file name> <method> [format]"
|
||||
<< std::endl
|
||||
<< "method is either:" << std::endl
|
||||
<< " -a for aggragated insertion;" << std::endl
|
||||
<< " -a for aggregated insertion;" << std::endl
|
||||
<< " -n for incremental insertion with naive point-location;"
|
||||
<< std::endl
|
||||
<< " -w for incremental insertion with walk point-location."
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
// of line segments it reads from a file.
|
||||
//
|
||||
// Usage: seg_arr <-a | -n | -w> <input file>
|
||||
// Where: -a -- Use aggragated insertion (sweep-line);
|
||||
// Where: -a -- Use aggregated insertion (sweep-line);
|
||||
// -n -- Use incremental insertion with naive point-location;
|
||||
// -w -- Use incremental insertion with walk point-location.
|
||||
//
|
||||
|
|
@ -70,7 +70,7 @@ int main (int argc, char **argv)
|
|||
std::cerr << "Usage: " << argv[0] << " <file name> <method> [format]"
|
||||
<< std::endl
|
||||
<< "method is either:" << std::endl
|
||||
<< " -a for aggragated insertion;" << std::endl
|
||||
<< " -a for aggregated insertion;" << std::endl
|
||||
<< " -n for incremental insertion with naive point-location;"
|
||||
<< std::endl
|
||||
<< " -s for incremental insertion with simple point-location;"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Arrangement_on_surface_2_Demo)
|
||||
|
||||
if(NOT POLICY CMP0070 AND POLICY CMP0053)
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@
|
|||
|
||||
class QGraphicsScene;
|
||||
|
||||
// Genereic `Arr_compute_y_at_x_2`
|
||||
// Generic `Arr_compute_y_at_x_2`
|
||||
template <typename Traits_>
|
||||
class Arr_compute_y_at_x_2 : public GraphicsSceneMixin {
|
||||
public:
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
using json = nlohmann::ordered_json;
|
||||
|
||||
namespace {
|
||||
// use this traits everytime you construct an arrangment!
|
||||
// use this traits every time you construct an arrangement!
|
||||
static Geom_traits s_traits;
|
||||
|
||||
// Extended DCEL & Arrangement
|
||||
|
|
@ -726,7 +726,7 @@ void Aos::save_arr(Kml::Placemarks& placemarks, const std::string& file_name) {
|
|||
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
// CURVES
|
||||
// define a map from each curve to its position in the arrangment
|
||||
// define a map from each curve to its position in the arrangement
|
||||
auto& js_curves = js["curves"] = json::array();
|
||||
using Ext_curve = Ext_aos::X_monotone_curve_2;
|
||||
std::map<Ext_curve*, std::size_t> curve_pos_map;
|
||||
|
|
@ -909,7 +909,7 @@ void Aos::save_arr(Kml::Placemarks& placemarks, const std::string& file_name) {
|
|||
}
|
||||
std::cout << "total num half-edges = " << total_num_half_edges << std::endl;
|
||||
|
||||
// save the arrangment
|
||||
// save the arrangement
|
||||
std::ofstream ofile(file_name);
|
||||
ofile << js.dump(2);
|
||||
ofile.close();
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ using json = nlohmann::ordered_json;
|
|||
|
||||
namespace {
|
||||
|
||||
// use this traits everytime you construct an arrangment!
|
||||
// use this traits every time you construct an arrangement!
|
||||
static Geom_traits s_traits;
|
||||
using Dir3 = Kernel::Direction_3;
|
||||
using Approximate_number_type = Geom_traits::Approximate_number_type;
|
||||
|
|
@ -71,7 +71,7 @@ std::vector<QVector3D> Aos_triangulator::get_all(Aos::Arr_handle arrh) {
|
|||
// COMPUTE THE CENTROID OF ALL FACE-POINTS
|
||||
std::vector<QVector3D> face_points;
|
||||
|
||||
// loop on the egdes of the current outer-ccb
|
||||
// loop on the edges of the current outer-ccb
|
||||
auto first = fh->outer_ccb();
|
||||
auto curr = first;
|
||||
do {
|
||||
|
|
@ -225,7 +225,7 @@ Aos_triangulator::get_by_country(Aos::Arr_handle arrh, float error,
|
|||
if (0 == fh->number_of_outer_ccbs()) continue;
|
||||
|
||||
std::vector<QVector3D> face_points;
|
||||
// Loop on the egdes of the current outer-ccb
|
||||
// Loop on the edges of the current outer-ccb
|
||||
auto first = fh->outer_ccb();
|
||||
auto curr = first;
|
||||
do {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Arrangement_on_surface_2_earth_Demo)
|
||||
|
||||
if(NOT POLICY CMP0070 AND POLICY CMP0053)
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ protected:
|
|||
// This is called when the required approximation of the arcs is below the
|
||||
// currently required one defined by the zoom level and window size. If you
|
||||
// zoom-in or increase the window-size this can be called. But once a minimum
|
||||
// approximation error is needed, it will stay there until futher change.
|
||||
// approximation error is needed, it will stay there until further change.
|
||||
// SEE the definition of "m_current_approx_error" member variable below!
|
||||
float compute_backprojected_error(float pixel_error);
|
||||
|
||||
|
|
@ -124,7 +124,7 @@ private:
|
|||
// After zooming in or making the viewport larger, the approximation-error
|
||||
// needs to be updated and checked against the old value. If a lower approxi-
|
||||
// mation error is needed the necessary graphics-side updates need to be made
|
||||
// INSIDE the paintGL (or whereever the OpenGL context is active)!
|
||||
// INSIDE the paintGL (or wherever the OpenGL context is active)!
|
||||
bool m_update_approx_error = false;
|
||||
float m_current_approx_error;
|
||||
std::size_t m_num_uniform_points;
|
||||
|
|
|
|||
|
|
@ -74,7 +74,7 @@ protected:
|
|||
// This is called when the required approximation of the arcs is below the
|
||||
// currently required one defined by the zoom level and window size. If you
|
||||
// zoom-in or increase the window-size this can be called. But once a minimum
|
||||
// approximation error is needed, it will stay there until futher change.
|
||||
// approximation error is needed, it will stay there until further change.
|
||||
// SEE the definition of "m_current_approx_error" member variable below!
|
||||
float compute_backprojected_error(float pixel_error);
|
||||
|
||||
|
|
@ -139,7 +139,7 @@ private:
|
|||
// After zooming in or making the viewport larger, the approximation-error
|
||||
// needs to be updated and checked against the old value. If a lower approxi-
|
||||
// mation error is needed the necessary graphics-side updates need to be made
|
||||
// INSIDE the paintGL (or whereever the OpenGL context is active)!
|
||||
// INSIDE the paintGL (or wherever the OpenGL context is active)!
|
||||
bool m_update_approx_error = false;
|
||||
float m_current_approx_error;
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
class Verification {
|
||||
public:
|
||||
// Use this to find the approximate of the true minimum projected error.
|
||||
// we are ot using this complicated method, but provide it for completeness.
|
||||
// we are not using this complicated method, but provide it for completeness.
|
||||
static void find_minimum_projected_error_on_sphere(float we, Camera& cam,
|
||||
int vp_width,
|
||||
int vp_height);
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ namespace CGAL {
|
|||
* The \dcel class used by the `Arrangement_2`,
|
||||
* `Arr_bounded_planar_topology_traits_2`, `Arr_unb_planar_topology_traits_2`
|
||||
* class templates and other templates. It is parameterized by a geometry
|
||||
* traits type and optionaly by a vertex, halfedge, or face types. By default,
|
||||
* traits type and optionally by a vertex, halfedge, or face types. By default,
|
||||
* the `Arr_dcel` class template uses the \link
|
||||
* ArrangementBasicTraits_2::Point_2 `Point_2`\endlink and \link
|
||||
* ArrangementBasicTraits_2::X_monotone_curve_2 `X_monotone_curve_2`\endlink
|
||||
|
|
@ -13,7 +13,7 @@ namespace CGAL {
|
|||
* types, respectively. Thus, by default the \dcel only stores the topological
|
||||
* incidence relations and the geometric data attached to vertices and
|
||||
* edges. Any one of the vertex, halfedge, or face types can be
|
||||
* overriden. Notice that if the vertex and halfedge types are overriden, the
|
||||
* overridden. Notice that if the vertex and halfedge types are overridden, the
|
||||
* traits type is ignored.
|
||||
*
|
||||
* \cgalModels{ArrangementDcelWithRebind}
|
||||
|
|
|
|||
|
|
@ -109,7 +109,7 @@ namespace CGAL {
|
|||
* polycurve.
|
||||
*
|
||||
* This functor constructs general polycurve. Its `operator()` is
|
||||
* oveloaded to support various input types.
|
||||
* overloaded to support various input types.
|
||||
*
|
||||
* Note that the composing subcurves, depending on the `SubcurveTraits_2`,
|
||||
* might not be \f$x\f$-monotone.
|
||||
|
|
|
|||
|
|
@ -209,7 +209,7 @@ public:
|
|||
* polyline.
|
||||
*
|
||||
* This functor constructs general polylines. Its `operator()` is
|
||||
* oveloaded to support various input types.
|
||||
* overloaded to support various input types.
|
||||
*
|
||||
* Note that the composing segments, depending on the `SegmentTraits_2`,
|
||||
* might not be \f$x\f$-monotone.
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Arrangement_on_surface_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core OPTIONAL_COMPONENTS Qt6)
|
||||
|
|
|
|||
|
|
@ -519,12 +519,12 @@ public:
|
|||
*/
|
||||
virtual void after_move_isolated_vertex(Vertex_handle /* v */) {}
|
||||
|
||||
/*! Notificaion before the removal of a vertex.
|
||||
/*! Notification before the removal of a vertex.
|
||||
* \param v A handle to the vertex to be deleted.
|
||||
*/
|
||||
virtual void before_remove_vertex(Vertex_handle /* v */) {}
|
||||
|
||||
/*! Notificaion after the removal of a vertex. */
|
||||
/*! Notification after the removal of a vertex. */
|
||||
virtual void after_remove_vertex() {}
|
||||
|
||||
/*! Notification before the removal of an edge.
|
||||
|
|
@ -532,7 +532,7 @@ public:
|
|||
*/
|
||||
virtual void before_remove_edge(Halfedge_handle /* e */) {}
|
||||
|
||||
/*! Notificaion after the removal of an edge. */
|
||||
/*! Notification after the removal of an edge. */
|
||||
virtual void after_remove_edge() {}
|
||||
|
||||
/*! Notification before the removal of an outer CCB.
|
||||
|
|
@ -543,7 +543,7 @@ public:
|
|||
Ccb_halfedge_circulator /* h */)
|
||||
{}
|
||||
|
||||
/*! Notificaion after the removal of an outer CCB.
|
||||
/*! Notification after the removal of an outer CCB.
|
||||
* \param f The face that used to own the outer CCB.
|
||||
*/
|
||||
virtual void after_remove_outer_ccb(Face_handle /* f */) {}
|
||||
|
|
@ -556,7 +556,7 @@ public:
|
|||
Ccb_halfedge_circulator /* h */)
|
||||
{}
|
||||
|
||||
/*! Notificaion after the removal of an inner CCB.
|
||||
/*! Notification after the removal of an inner CCB.
|
||||
* \param f The face that used to contain the inner CCB.
|
||||
*/
|
||||
virtual void after_remove_inner_ccb(Face_handle /* f */) {}
|
||||
|
|
|
|||
|
|
@ -1107,7 +1107,7 @@ public:
|
|||
return false;
|
||||
}
|
||||
|
||||
/*! Intersect the supporing conic curves of this arc and the given arc.
|
||||
/*! Intersect the supporting conic curves of this arc and the given arc.
|
||||
* \param arc The arc to intersect with.
|
||||
* \param inter_list The list of intersection points.
|
||||
*/
|
||||
|
|
@ -1133,7 +1133,7 @@ public:
|
|||
if (xcv2.is_special_segment()) {
|
||||
// The second arc is a special segment (a*x + b*y + c = 0).
|
||||
if (xcv1.is_special_segment()) {
|
||||
// Both arc are sepcial segment, so they have at most one intersection
|
||||
// Both arc are special segments, so they have at most one intersection
|
||||
// point.
|
||||
const auto* extra_data1 = xcv1.extra_data();
|
||||
const auto* extra_data2 = xcv2.extra_data();
|
||||
|
|
@ -1724,7 +1724,7 @@ public:
|
|||
* r·𝑥^2 + s·𝑦^2 + t·𝑥·𝑦 + u·𝑥 + v·𝑦 + w = 0
|
||||
* where 4·r·s−t^2 > 0
|
||||
* We eliminate t so that the x·y term vanishes, applying an inverse
|
||||
* rotation. Then, we compute the radi and the center. Finaly, we rotate
|
||||
* rotation. Then, we compute the radi and the center. Finally, we rotate
|
||||
* back. The angle of rotation is given by:
|
||||
* 𝑡𝑎𝑛(2𝜃) = 𝐵 / (𝐴−𝐶)
|
||||
* Then
|
||||
|
|
@ -2260,7 +2260,7 @@ public:
|
|||
const Rational& u, const Rational& v, const Rational& w,
|
||||
Orientation orient,
|
||||
const Point_2& source, const Point_2& target) const {
|
||||
// Make sure that the source and the taget are not the same.
|
||||
// Make sure that the source and the target are not the same.
|
||||
const auto alg_kernel = m_traits.m_alg_kernel;
|
||||
CGAL_precondition_code(auto eq = alg_kernel->compare_xy_2_object());
|
||||
CGAL_precondition(eq(source, target) != EQUAL);
|
||||
|
|
@ -2297,7 +2297,7 @@ public:
|
|||
Point_2 target(nt_traits->convert(x3), nt_traits->convert(y3));
|
||||
arc.set_endpoints(source, target);
|
||||
|
||||
// Make sure that the source and the taget are not the same.
|
||||
// Make sure that the source and the target are not the same.
|
||||
CGAL_precondition_code(auto cmp_xy = alg_kernel->compare_xy_2_object());
|
||||
CGAL_precondition(cmp_xy(source, target) != EQUAL);
|
||||
|
||||
|
|
@ -2324,7 +2324,7 @@ public:
|
|||
const bool points_collinear = (CGAL::sign(D) == ZERO);
|
||||
|
||||
if (points_collinear) {
|
||||
arc.reset_flags(); // inavlid arc
|
||||
arc.reset_flags(); // invalid arc
|
||||
return arc;
|
||||
}
|
||||
|
||||
|
|
@ -2381,7 +2381,7 @@ public:
|
|||
orient_f(p3, p4, p5) == COLLINEAR);
|
||||
|
||||
if (point_collinear) {
|
||||
arc.reset_flags(); // inavlid arc
|
||||
arc.reset_flags(); // invalid arc
|
||||
return arc;
|
||||
}
|
||||
|
||||
|
|
@ -2439,7 +2439,7 @@ public:
|
|||
! m_traits.is_strictly_between_endpoints(arc, mp3) ||
|
||||
! m_traits.is_strictly_between_endpoints(arc, mp4))
|
||||
{
|
||||
arc.reset_flags(); // inavlid arc
|
||||
arc.reset_flags(); // invalid arc
|
||||
return arc;
|
||||
}
|
||||
return arc;
|
||||
|
|
@ -2589,7 +2589,7 @@ public:
|
|||
}
|
||||
|
||||
if (! found) {
|
||||
arc.reset_flags(); // inavlid arc
|
||||
arc.reset_flags(); // invalid arc
|
||||
return arc;
|
||||
}
|
||||
}
|
||||
|
|
@ -2597,7 +2597,7 @@ public:
|
|||
// Make sure that the source and the target are not the same.
|
||||
auto cmp_xy = m_traits.m_alg_kernel->compare_xy_2_object();
|
||||
if (cmp_xy(arc.source(), arc.target()) == EQUAL) {
|
||||
arc.reset_flags(); // inavlid arc
|
||||
arc.reset_flags(); // invalid arc
|
||||
return arc;
|
||||
}
|
||||
|
||||
|
|
@ -2646,7 +2646,7 @@ public:
|
|||
cv.set_source(Point_2(nt_traits->convert(x1), nt_traits->convert(y1)));
|
||||
cv.set_target(Point_2(nt_traits->convert(x2), nt_traits->convert(y2)));
|
||||
|
||||
// Make sure that the source and the taget are not the same.
|
||||
// Make sure that the source and the target are not the same.
|
||||
CGAL_precondition_code(auto cmp_xy = rat_kernel->compare_xy_2_object());
|
||||
CGAL_precondition(cmp_xy(source, target) != EQUAL);
|
||||
|
||||
|
|
@ -2695,7 +2695,7 @@ public:
|
|||
Rational y0 = center.y();
|
||||
Rational r_sqr = rat_kernel->compute_squared_radius_2_object()(circ);
|
||||
|
||||
// Produce the correponding conic: if the circle center is (x0,y0)
|
||||
// Produce the corresponding conic: if the circle center is (x0,y0)
|
||||
// and its squared radius is R^2, that its equation is:
|
||||
// x^2 + y^2 - 2*x0*x - 2*y0*y + (x0^2 + y0^2 - R^2) = 0
|
||||
// Note that this equation describes a curve with a negative (clockwise)
|
||||
|
|
@ -2726,7 +2726,7 @@ public:
|
|||
*/
|
||||
Curve_2 operator()(const Rat_circle_2& circ, Orientation orient,
|
||||
const Point_2& source, const Point_2& target) const {
|
||||
// Make sure that the source and the taget are not the same.
|
||||
// Make sure that the source and the target are not the same.
|
||||
CGAL_precondition_code(auto cmp_xy =
|
||||
m_traits.m_alg_kernel->compare_xy_2_object());
|
||||
CGAL_precondition(cmp_xy(source, target) != EQUAL);
|
||||
|
|
@ -2743,7 +2743,7 @@ public:
|
|||
Rational y0 = center.y();
|
||||
Rational r_sqr = rat_kernel->compute_squared_radius_2_object()(circ);
|
||||
|
||||
// Produce the correponding conic: if the circle center is (x0,y0)
|
||||
// Produce the corresponding conic: if the circle center is (x0,y0)
|
||||
// and it squared radius is R^2, that its equation is:
|
||||
// x^2 + y^2 - 2*x0*x - 2*y0*y + (x0^2 + y0^2 - R^2) = 0
|
||||
// Since this equation describes a curve with a negative (clockwise)
|
||||
|
|
@ -2853,7 +2853,7 @@ public:
|
|||
m_traits.compare_y_at_x_2_object());
|
||||
CGAL_precondition_code(Equal_2 equal_2 = m_traits.equal_2_object());
|
||||
Compare_x_2 compare_x_2 = m_traits.compare_x_2_object();
|
||||
// Check whether source and taget are two distinct points and they lie
|
||||
// Check whether source and target are two distinct points and they lie
|
||||
// on the line.
|
||||
CGAL_precondition(compare_y_at_x_2(src, xcv) == EQUAL);
|
||||
CGAL_precondition(compare_y_at_x_2(tgt, xcv) == EQUAL);
|
||||
|
|
@ -2983,7 +2983,7 @@ public:
|
|||
}
|
||||
}
|
||||
else {
|
||||
// Use the source and target to initialize the exterme points.
|
||||
// Use the source and target to initialize the extreme points.
|
||||
bool source_left =
|
||||
CGAL::to_double(xcv.source().x()) < CGAL::to_double(xcv.target().x());
|
||||
x_min = (source_left) ?
|
||||
|
|
@ -3077,7 +3077,7 @@ public:
|
|||
if (! is_on_supporting_conic(cv, source) ||
|
||||
! is_on_supporting_conic(cv, target))
|
||||
{
|
||||
cv.reset_flags(); // inavlid arc
|
||||
cv.reset_flags(); // invalid arc
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -3098,7 +3098,7 @@ public:
|
|||
m_nt_traits->convert(v)) * p_mid.y() +
|
||||
m_nt_traits->convert(w)) != ZERO)
|
||||
{
|
||||
cv.reset_flags(); // inavlid arc
|
||||
cv.reset_flags(); // invalid arc
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -3109,7 +3109,7 @@ public:
|
|||
}
|
||||
else {
|
||||
// The sign of (4rs - t^2) detetmines the conic type:
|
||||
// - if it is possitive, the conic is an ellipse,
|
||||
// - if it is positive, the conic is an ellipse,
|
||||
// - if it is negative, the conic is a hyperbola,
|
||||
// - if it is zero, the conic is a parabola.
|
||||
CGAL::Sign sign_conic = CGAL::sign(4*r*s - t*t);
|
||||
|
|
@ -3126,7 +3126,7 @@ public:
|
|||
bool finite_at_x = (points_at_x(cv, p_mid, ps) > 0);
|
||||
bool finite_at_y = (points_at_y(cv, p_mid, ps) > 0);
|
||||
if (! finite_at_x && ! finite_at_y) {
|
||||
cv.reset_flags(); // inavlid arc
|
||||
cv.reset_flags(); // invalid arc
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
@ -3192,7 +3192,7 @@ public:
|
|||
cv.set_flag(Curve_2::IS_VALID);
|
||||
cv.set_flag(Curve_2::IS_FULL_CONIC);
|
||||
}
|
||||
else cv.reset_flags(); // inavlid arc
|
||||
else cv.reset_flags(); // invalid arc
|
||||
}
|
||||
|
||||
/*! Check whether the given point lies on the supporting conic of the arc.
|
||||
|
|
@ -3300,7 +3300,7 @@ public:
|
|||
return (orient_f(source, p, target) == RIGHT_TURN);
|
||||
}
|
||||
|
||||
/*! Build the data for hyperbolic arc, contaning the characterization of the
|
||||
/*! Build the data for hyperbolic arc, containing the characterization of the
|
||||
* hyperbolic branch the arc is placed on.
|
||||
*/
|
||||
void build_hyperbolic_arc_data(Curve_2& cv) const {
|
||||
|
|
@ -3680,7 +3680,7 @@ public:
|
|||
|
||||
// Check whether the conic is facing up or facing down:
|
||||
// Check whether the arc (which is x-monotone of degree 2) lies above or
|
||||
// below the segement that connects its two end-points (x1,y1) and (x2,y2).
|
||||
// below the segment that connects its two end-points (x1,y1) and (x2,y2).
|
||||
// To do that, we find the y coordinate of a point on the arc whose x
|
||||
// coordinate is (x1+x2)/2 and compare it to (y1+y2)/2.
|
||||
auto cmp_y = m_alg_kernel->compare_y_2_object();
|
||||
|
|
@ -3753,7 +3753,7 @@ public:
|
|||
}
|
||||
|
||||
/*! Check whether the given point lies on the arc.
|
||||
* \param p The qury point.
|
||||
* \param p The query point.
|
||||
* \param (true) if p lies on the arc; (false) otherwise.
|
||||
*/
|
||||
bool contains_point(const X_monotone_curve_2& xcv, const Point_2& p) const {
|
||||
|
|
@ -3778,7 +3778,7 @@ public:
|
|||
return is_between_endpoints(xcv, p);
|
||||
}
|
||||
|
||||
/*! Find the vertical tangency points of the undelying conic.
|
||||
/*! Find the vertical tangency points of the underlying conic.
|
||||
* \param ps The output points of vertical tangency.
|
||||
* This area must be allocated at the size of 2.
|
||||
* \return The number of vertical tangency points.
|
||||
|
|
@ -3876,7 +3876,7 @@ public:
|
|||
return m;
|
||||
}
|
||||
|
||||
/*! Find the horizontal tangency points of the undelying conic.
|
||||
/*! Find the horizontal tangency points of the underlying conic.
|
||||
* \param ps The output points of horizontal tangency.
|
||||
* This area must be allocated at the size of 2.
|
||||
* \return The number of horizontal tangency points.
|
||||
|
|
|
|||
|
|
@ -79,10 +79,10 @@ public:
|
|||
typedef typename internal::Arr_complete_right_side_category<Base_traits_2>::
|
||||
Category Right_side_category;
|
||||
|
||||
// Representation of a curve with an additonal data field:
|
||||
// Representation of a curve with an additional data field:
|
||||
typedef _Curve_data_ex<Base_curve_2, Curve_data> Curve_2;
|
||||
|
||||
// Representation of an x-monotone curve with an additonal data field:
|
||||
// Representation of an x-monotone curve with an additional data field:
|
||||
typedef _Curve_data_ex<Base_x_monotone_curve_2, X_monotone_curve_data>
|
||||
X_monotone_curve_2;
|
||||
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
* The partition traits class for geodesic arcs on the sphere enables
|
||||
* the partition of geodesic polygons to convex polygons. It models the
|
||||
* concept YMonotonePartitionTraits_2.
|
||||
* This partition of geodesic polygons is garenteed to work only for polygons
|
||||
* This partition of geodesic polygons is guaranteed to work only for polygons
|
||||
* that are contained in a hemisphere and that do not intersect one of the
|
||||
* boundaries.
|
||||
* For larger polygons there is a chance that at least one steiner point may
|
||||
|
|
@ -329,7 +329,7 @@ public:
|
|||
* The partition traits class for geodesic arcs on the sphere enables
|
||||
* the partition of geodesic polygons to convex polygons. It models the
|
||||
* concept YMonotonePartitionTraits_2.
|
||||
* This partition of geodesic polygons is garenteed to work only for polygons
|
||||
* This partition of geodesic polygons is guaranteed to work only for polygons
|
||||
* that are contained in a hemisphere and that do not intersect one of the
|
||||
* boundaries.
|
||||
* For larger polygons there is a chance that at least one steiner point may
|
||||
|
|
|
|||
|
|
@ -588,7 +588,7 @@ bool _Bezier_cache<NtTraits>::_intersection_params
|
|||
Integer coeff;
|
||||
int k;
|
||||
|
||||
// Consruct the bivariate polynomial that corresponds to Equation I.
|
||||
// Construct the bivariate polynomial that corresponds to Equation I.
|
||||
// Note that we represent a bivariate polynomial as a vector of univariate
|
||||
// polynomials, whose i'th entry corresponds to the coefficient of t^i,
|
||||
// which is in turn a polynomial it s.
|
||||
|
|
@ -602,7 +602,7 @@ bool _Bezier_cache<NtTraits>::_intersection_params
|
|||
}
|
||||
coeffsX_st[0] = coeffsX_st[0] - nt_traits.scale (polyX_1, normX_2);
|
||||
|
||||
// Consruct the bivariate polynomial that corresponds to Equation II.
|
||||
// Construct the bivariate polynomial that corresponds to Equation II.
|
||||
const int degY_2 = nt_traits.degree (polyY_2);
|
||||
std::vector<Polynomial> coeffsY_st (degY_2 < 0 ? 1 : (degY_2 + 1));
|
||||
|
||||
|
|
@ -655,7 +655,7 @@ void _Bezier_cache<NtTraits>::_self_intersection_params
|
|||
Integer *coeffs;
|
||||
int i;
|
||||
|
||||
// Consruct the bivariate polynomial that corresponds to Equation I.
|
||||
// Construct the bivariate polynomial that corresponds to Equation I.
|
||||
// Note that we represent a bivariate polynomial as a vector of univariate
|
||||
// polynomials, whose i'th entry corresponds to the coefficient of t^i,
|
||||
// which is in turn a polynomial it s.
|
||||
|
|
@ -675,7 +675,7 @@ void _Bezier_cache<NtTraits>::_self_intersection_params
|
|||
|
||||
delete[] coeffs;
|
||||
|
||||
// Consruct the bivariate polynomial that corresponds to Equation II.
|
||||
// Construct the bivariate polynomial that corresponds to Equation II.
|
||||
const int degY = nt_traits.degree (polyY);
|
||||
CGAL_assertion(degY > 0);
|
||||
if (degY <= 0) return; //no self intersection if Y is constant
|
||||
|
|
|
|||
|
|
@ -800,7 +800,7 @@ typename _Bezier_curve_2<RatKer, AlgKer, NtTrt, BndTrt>::Rat_point_2
|
|||
_Bezier_curve_2<RatKer, AlgKer, NtTrt, BndTrt>::operator()
|
||||
(const Rational& t) const
|
||||
{
|
||||
// Check for extermal t values (either 0 or 1).
|
||||
// Check for external t values (either 0 or 1).
|
||||
const CGAL::Sign sign_t = CGAL::sign (t);
|
||||
|
||||
CGAL_precondition (sign_t != NEGATIVE);
|
||||
|
|
@ -851,7 +851,7 @@ typename _Bezier_curve_2<RatKer, AlgKer, NtTrt, BndTrt>::Alg_point_2
|
|||
_Bezier_curve_2<RatKer, AlgKer, NtTrt, BndTrt>::operator()
|
||||
(const Algebraic& t) const
|
||||
{
|
||||
// Check for extermal t values (either 0 or 1).
|
||||
// Check for external t values (either 0 or 1).
|
||||
Nt_traits nt_traits;
|
||||
const CGAL::Sign sign_t = CGAL::sign (t);
|
||||
|
||||
|
|
|
|||
|
|
@ -2138,7 +2138,7 @@ _intersect(const Self& cv,
|
|||
else {
|
||||
// Approximate the intersection points and store them in the map.
|
||||
// Note that we do not store approximated self-intersections in the map,
|
||||
// as they realte only to the pecific x-monotone curves, and not to the
|
||||
// as they relate only to the specific x-monotone curves, and not to the
|
||||
// entire curve.
|
||||
app_ok = _approximate_intersection_points(cv, inter_pts);
|
||||
|
||||
|
|
|
|||
|
|
@ -392,7 +392,7 @@ public:
|
|||
const bool points_collinear = (CGAL::sign(D) == ZERO);
|
||||
|
||||
if (points_collinear) {
|
||||
reset_flags(); // inavlid arc
|
||||
reset_flags(); // invalid arc
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -453,7 +453,7 @@ public:
|
|||
orient_f (p3, p4, p5) == COLLINEAR);
|
||||
|
||||
if (point_collinear) {
|
||||
reset_flags(); // inavlid arc
|
||||
reset_flags(); // invalid arc
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -511,7 +511,7 @@ public:
|
|||
! _is_strictly_between_endpoints(mp3) ||
|
||||
! _is_strictly_between_endpoints(mp4))
|
||||
{
|
||||
reset_flags(); // inavlid arc
|
||||
reset_flags(); // invalid arc
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -669,14 +669,14 @@ public:
|
|||
}
|
||||
|
||||
if (! found) {
|
||||
reset_flags(); // inavlid arc
|
||||
reset_flags(); // invalid arc
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Make sure that the source and the target are not the same.
|
||||
if (Alg_kernel().compare_xy_2_object()(m_source, m_target) == EQUAL) {
|
||||
reset_flags(); // inavlid arc
|
||||
reset_flags(); // invalid arc
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -724,7 +724,7 @@ public:
|
|||
}
|
||||
}
|
||||
else {
|
||||
// Use the source and target to initialize the exterme points.
|
||||
// Use the source and target to initialize the extreme points.
|
||||
bool source_left =
|
||||
CGAL::to_double(m_source.x()) < CGAL::to_double(m_target.x());
|
||||
x_min = source_left ?
|
||||
|
|
@ -892,7 +892,7 @@ protected:
|
|||
}
|
||||
}
|
||||
|
||||
/*! Find the vertical tangency points of the undelying conic.
|
||||
/*! Find the vertical tangency points of the underlying conic.
|
||||
* \param ps The output points of vertical tangency.
|
||||
* This area must be allocated at the size of 2.
|
||||
* \return The number of vertical tangency points.
|
||||
|
|
@ -970,7 +970,7 @@ protected:
|
|||
return n;
|
||||
}
|
||||
|
||||
/*! Find the horizontal tangency points of the undelying conic.
|
||||
/*! Find the horizontal tangency points of the underlying conic.
|
||||
* \param ps The output points of horizontal tangency.
|
||||
* This area must be allocated at the size of 2.
|
||||
* \return The number of horizontal tangency points.
|
||||
|
|
@ -1071,7 +1071,7 @@ protected:
|
|||
set_flag(IS_VALID);
|
||||
set_flag(IS_FULL_CONIC);
|
||||
}
|
||||
else reset_flags(); // inavlid arc
|
||||
else reset_flags(); // invalid arc
|
||||
}
|
||||
|
||||
/*! Check whether the given point lies on the supporting conic of the arc.
|
||||
|
|
@ -1093,7 +1093,7 @@ protected:
|
|||
return (CGAL::sign(val) == ZERO);
|
||||
}
|
||||
|
||||
/*! Build the data for hyperbolic arc, contaning the characterization of the
|
||||
/*! Build the data for hyperbolic arc, containing the characterization of the
|
||||
* hyperbolic branch the arc is placed on.
|
||||
*/
|
||||
CGAL_DEPRECATED void _build_hyperbolic_arc_data() {
|
||||
|
|
@ -1372,7 +1372,7 @@ protected:
|
|||
if (! _is_on_supporting_conic(m_source) ||
|
||||
! _is_on_supporting_conic(m_target))
|
||||
{
|
||||
reset_flags(); // inavlid arc
|
||||
reset_flags(); // invalid arc
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -1394,7 +1394,7 @@ protected:
|
|||
nt_traits.convert(m_v)) * p_mid.y() +
|
||||
nt_traits.convert(m_w)) != ZERO)
|
||||
{
|
||||
reset_flags(); // inavlid arc
|
||||
reset_flags(); // invalid arc
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -1419,7 +1419,7 @@ protected:
|
|||
}
|
||||
else {
|
||||
// The sign of (4rs - t^2) detetmines the conic type:
|
||||
// - if it is possitive, the conic is an ellipse,
|
||||
// - if it is positive, the conic is an ellipse,
|
||||
// - if it is negative, the conic is a hyperbola,
|
||||
// - if it is zero, the conic is a parabola.
|
||||
CGAL::Sign sign_conic = CGAL::sign(4*m_r*m_s - m_t*m_t);
|
||||
|
|
@ -1438,7 +1438,7 @@ protected:
|
|||
bool finite_at_y = (_points_at_y(p_mid, ps) > 0);
|
||||
|
||||
if (! finite_at_x && ! finite_at_y) {
|
||||
reset_flags(); // inavlid arc
|
||||
reset_flags(); // invalid arc
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
@ -1515,7 +1515,7 @@ public:
|
|||
/// \name Get the arc properties.
|
||||
//@{
|
||||
|
||||
/*! Determine wheather the arc is valid.
|
||||
/*! Determine whether the arc is valid.
|
||||
*/
|
||||
bool is_valid() const { return test_flag(IS_VALID); }
|
||||
|
||||
|
|
@ -1600,7 +1600,7 @@ protected:
|
|||
|
||||
public:
|
||||
/// \name Modifying functions (setters);
|
||||
// only friends have the priviledge to use.
|
||||
// only friends have the privilege to use.
|
||||
//@{
|
||||
|
||||
/*! Set the source point of the conic arc.
|
||||
|
|
|
|||
|
|
@ -82,10 +82,10 @@ public:
|
|||
/*! Default constructors. */
|
||||
Conic_point_2() : Base() {}
|
||||
|
||||
/*! Constrcutor from the base class. */
|
||||
/*! Constructor from the base class. */
|
||||
Conic_point_2(const Base& p) : Base(p) {}
|
||||
|
||||
/*! Constructor with homegeneous coordinates. */
|
||||
/*! Constructor with homogeneous coordinates. */
|
||||
Conic_point_2(const Algebraic& hx, const Algebraic& hy, const Algebraic& hz) :
|
||||
Base(hx, hy, hz)
|
||||
{}
|
||||
|
|
|
|||
|
|
@ -163,7 +163,7 @@ public:
|
|||
// Set the basic properties and clear the _info bits.
|
||||
this->set_endpoints(source, target);
|
||||
this->set_orientation(COLLINEAR);
|
||||
this->reset_flags(); // inavlid arc
|
||||
this->reset_flags(); // invalid arc
|
||||
|
||||
// Check if the arc is directed right (the target is lexicographically
|
||||
// greater than the source point), or to the left.
|
||||
|
|
@ -180,7 +180,7 @@ public:
|
|||
res = ker.compare_y_2_object()(source, target);
|
||||
CGAL_precondition(res != EQUAL);
|
||||
if (res == EQUAL) {
|
||||
reset_flags(); // inavlid arc
|
||||
reset_flags(); // invalid arc
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
@ -290,7 +290,7 @@ private:
|
|||
|
||||
// Check whether the conic is facing up or facing down:
|
||||
// Check whether the arc (which is x-monotone of degree 2) lies above or
|
||||
// below the segement that contects its two end-points (x1,y1) and (x2,y2).
|
||||
// below the segment that contects its two end-points (x1,y1) and (x2,y2).
|
||||
// To do that, we find the y coordinate of a point on the arc whose x
|
||||
// coordinate is (x1+x2)/2 and compare it to (y1+y2)/2.
|
||||
Comparison_result res = ker.compare_y_2_object()(p_arc_mid, p_mid);
|
||||
|
|
@ -301,7 +301,7 @@ private:
|
|||
}
|
||||
|
||||
public:
|
||||
/// \name Public constrcutors, assignment operators, and destructors.
|
||||
/// \name Public constructors, assignment operators, and destructors.
|
||||
//@{
|
||||
|
||||
/*! Default constructor.
|
||||
|
|
@ -350,7 +350,7 @@ public:
|
|||
private:
|
||||
template <typename, typename, typename> friend class Arr_conic_traits_2;
|
||||
|
||||
/// \name private constrcutors to be used only by the traits class template.
|
||||
/// \name private constructors to be used only by the traits class template.
|
||||
//@{
|
||||
|
||||
/*! Construct an x-monotone arc from a conic arc.
|
||||
|
|
@ -421,7 +421,7 @@ public:
|
|||
bool is_lower() const { return this->test_flag(FACING_DOWN); }
|
||||
|
||||
/*! Check whether the arc is a special segment connecting two algebraic
|
||||
* endpoints (and has no undelying integer conic coefficients).
|
||||
* endpoints (and has no underlying integer conic coefficients).
|
||||
*/
|
||||
bool is_special_segment() const { return this->test_flag(IS_SPECIAL_SEGMENT); }
|
||||
|
||||
|
|
@ -447,7 +447,7 @@ public:
|
|||
Conic_id id() const { return m_id; }
|
||||
|
||||
/*! Check whether the given point lies on the arc.
|
||||
* \param p The qury point.
|
||||
* \param p The query point.
|
||||
* \param (true) if p lies on the arc; (false) otherwise.
|
||||
*/
|
||||
CGAL_DEPRECATED
|
||||
|
|
@ -660,7 +660,7 @@ public:
|
|||
//@{
|
||||
|
||||
/*! Flip the arc.
|
||||
* \return An arc with swapped source and target and a reverse orienation.
|
||||
* \return An arc with swapped source and target and a reverse orientation.
|
||||
*/
|
||||
Self flip() const {
|
||||
// Make a copy of the current arc.
|
||||
|
|
@ -1316,7 +1316,7 @@ private:
|
|||
|
||||
if (CGAL::compare(slope1_numer*slope2_denom, slope2_numer*slope1_denom) !=
|
||||
EQUAL) {
|
||||
// Different slopes at p - the mutiplicity of p is 1:
|
||||
// Different slopes at p - the multiplicity of p is 1:
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
@ -1337,7 +1337,7 @@ private:
|
|||
if (CGAL::compare(slope1_numer*slope2_denom,
|
||||
slope2_numer*slope1_denom) != EQUAL)
|
||||
{
|
||||
// Different curvatures at p - the mutiplicity of p is 2:
|
||||
// Different curvatures at p - the multiplicity of p is 2:
|
||||
return 2;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -409,7 +409,7 @@ public:
|
|||
// and check if it lies next to a pole.
|
||||
if (CGAL::sign (nt_traits.evaluate_at (_denom, x_s)) != CGAL::ZERO)
|
||||
{
|
||||
// We have a nomral endpoint.
|
||||
// We have a normal endpoint.
|
||||
_ps = Point_2 (x_s, nt_traits.evaluate_at (_numer, x_s) /
|
||||
nt_traits.evaluate_at (_denom, x_s));
|
||||
}
|
||||
|
|
@ -499,7 +499,7 @@ public:
|
|||
// Set the source point and check if it lies next to a pole.
|
||||
if (CGAL::sign (nt_traits.evaluate_at (_denom, x_s)) != CGAL::ZERO)
|
||||
{
|
||||
// We have a nomral endpoint.
|
||||
// We have a normal endpoint.
|
||||
_ps = Point_2 (x_s, nt_traits.evaluate_at (_numer, x_s) /
|
||||
nt_traits.evaluate_at (_denom, x_s));
|
||||
}
|
||||
|
|
@ -521,7 +521,7 @@ public:
|
|||
// Set the target point and check if it lies next to a pole.
|
||||
if (CGAL::sign (nt_traits.evaluate_at (_denom, x_t)) != CGAL::ZERO)
|
||||
{
|
||||
// We have a nomral endpoint.
|
||||
// We have a normal endpoint.
|
||||
_pt = Point_2 (x_t, nt_traits.evaluate_at (_numer, x_t) /
|
||||
nt_traits.evaluate_at (_denom, x_t));
|
||||
}
|
||||
|
|
@ -1026,7 +1026,7 @@ public:
|
|||
* intersection point.
|
||||
* \param cv The given arc.
|
||||
* \param p The intersection point.
|
||||
* \param mult Output: The mutiplicity of the intersection point.
|
||||
* \param mult Output: The multiplicity of the intersection point.
|
||||
* \return SMALLER if (*this) slope is less than cv's;
|
||||
* EQUAL if the two slopes are equal;
|
||||
* LARGER if (*this) slope is greater than cv's.
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ namespace CGAL {
|
|||
/*! \class Arr_landmarks_point_location
|
||||
* A class that answers point-location queries on an arrangement using the
|
||||
* landmarks algorithm, namely by locating the (approximately) nearest
|
||||
* landmark point to the qury point and walking from it toward the query
|
||||
* landmark point to the query point and walking from it toward the query
|
||||
* point.
|
||||
* This class-template has two parameters:
|
||||
* Arrangement corresponds to an arrangement-on-surface instantiation.
|
||||
|
|
|
|||
|
|
@ -364,7 +364,7 @@ public:
|
|||
}
|
||||
}
|
||||
|
||||
/*! Notificaion after the removal of a vertex. */
|
||||
/*! Notification after the removal of a vertex. */
|
||||
virtual void after_remove_vertex() override {
|
||||
if (! m_ignore_notifications && ! m_ignore_remove_edge) {
|
||||
clear_landmark_set();
|
||||
|
|
@ -381,7 +381,7 @@ public:
|
|||
m_ignore_remove_edge = false;
|
||||
}
|
||||
|
||||
/*! Notificaion after the removal of an outer CCB. */
|
||||
/*! Notification after the removal of an outer CCB. */
|
||||
virtual void after_remove_outer_ccb(Face_handle) override {
|
||||
if (! m_ignore_notifications && ! m_ignore_remove_edge) {
|
||||
clear_landmark_set();
|
||||
|
|
@ -389,7 +389,7 @@ public:
|
|||
}
|
||||
}
|
||||
|
||||
/*! Notificaion after the removal of an inner CCB. */
|
||||
/*! Notification after the removal of an inner CCB. */
|
||||
virtual void after_remove_inner_ccb(Face_handle) override {
|
||||
if (! m_ignore_notifications && ! m_ignore_remove_edge) {
|
||||
clear_landmark_set();
|
||||
|
|
|
|||
|
|
@ -113,7 +113,7 @@ Arr_walk_along_line_point_location<Arrangement>::locate(const Point_2& p) const
|
|||
face = closest_he->twin()->face();
|
||||
|
||||
// Perform a vertical walk along the faces of the hole until locating
|
||||
// a face that contains the qeury point.
|
||||
// a face that contains the query point.
|
||||
do {
|
||||
CGAL_assertion_code
|
||||
(Halfedge_const_handle old_closest_he = closest_he);
|
||||
|
|
@ -256,7 +256,7 @@ _vertical_ray_shoot(const Point_2& p, bool shoot_up) const
|
|||
face = closest_he->twin()->face();
|
||||
|
||||
// Perform a vertical walk along the faces of the hole until locating
|
||||
// a face that contains the qeury point.
|
||||
// a face that contains the query point.
|
||||
do {
|
||||
CGAL_assertion_code (
|
||||
Halfedge_const_handle old_closest_he = closest_he;
|
||||
|
|
|
|||
|
|
@ -2636,7 +2636,7 @@ merge_edge(Halfedge_const_handle he1,
|
|||
Td_map_item rightp_item = locate(rightmost, lt2);
|
||||
Td_map_item mrgp_item = locate(ce, lt);
|
||||
|
||||
//varifying that all trapezoids are not nullptr and are of type POINT
|
||||
//verifying that all trapezoids are not nullptr and are of type POINT
|
||||
CGAL_warning(std::visit(dag_node_visitor(), leftp_item) != nullptr);
|
||||
CGAL_warning(std::visit(dag_node_visitor(), rightp_item)!= nullptr);
|
||||
CGAL_warning(std::visit(dag_node_visitor(), mrgp_item) != nullptr);
|
||||
|
|
|
|||
|
|
@ -543,7 +543,7 @@ public:
|
|||
//check if the source point lies next to a pole.
|
||||
if (typename Algebraic_kernel::Sign_at_1()(Q, x_s) != CGAL::ZERO)
|
||||
{
|
||||
// We have a nomral endpoint.
|
||||
// We have a normal endpoint.
|
||||
//nothing to do....
|
||||
}
|
||||
else
|
||||
|
|
@ -644,7 +644,7 @@ public:
|
|||
//check if source point lies next to a pole.
|
||||
if (typename Algebraic_kernel::Sign_at_1()(Q,x_s) != CGAL::ZERO)
|
||||
{
|
||||
// We have a nomral endpoint.
|
||||
// We have a normal endpoint.
|
||||
//nothing to do ..
|
||||
}
|
||||
else
|
||||
|
|
@ -666,7 +666,7 @@ public:
|
|||
//check if target point lies next to a pole.
|
||||
if (typename Algebraic_kernel::Sign_at_1()(Q,x_t) != CGAL::ZERO)
|
||||
{
|
||||
// We have a nomral endpoint.
|
||||
// We have a normal endpoint.
|
||||
//nothing to do ..
|
||||
}
|
||||
else
|
||||
|
|
@ -1206,7 +1206,7 @@ public:
|
|||
// at their given intersection point.
|
||||
// param cv The given arc.
|
||||
// param p The intersection point.
|
||||
// param mult Output: The mutiplicity of the intersection point.
|
||||
// param mult Output: The multiplicity of the intersection point.
|
||||
// return SMALLER if (*this) slope is less than cv's;
|
||||
// EQUAL if the two slopes are equal;
|
||||
// LARGER if (*this) slope is greater than cv's.
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ void Arr_transform_on_sphere(Arrangement & arr,
|
|||
|
||||
Arr_accessor<Arrangement> m_arr_access(arr);
|
||||
|
||||
// Preprocessing loop - merge all the edges that were splited
|
||||
// Preprocessing loop - merge all the edges that were split
|
||||
// (meaning have a common endpoint that lies on the boundary and their degree
|
||||
// is 2) on the identification curve.
|
||||
for (auto vi1 = arr.vertices_begin(); vi1 != arr.vertices_end(); ) {
|
||||
|
|
@ -151,7 +151,7 @@ void Arr_transform_on_sphere(Arrangement & arr,
|
|||
|
||||
// If the curve is not x-monotone - split it into 2 x_monotone parts.
|
||||
// Since the curves were x_monotone before , can assume that it will be
|
||||
// splited into 2 parts max.
|
||||
// split into 2 parts max.
|
||||
if (objects.size() == 2) {
|
||||
auto it = objects.begin();
|
||||
|
||||
|
|
|
|||
|
|
@ -314,7 +314,7 @@ public:
|
|||
// defining a type that inherits from the template we need to alias. However,
|
||||
// the non-C++11 code requires the (re)definition of all constructors of the
|
||||
// derived class. The non-C++11 code follows the commented out C++11 code.
|
||||
// When we move to C++11 we can use the more elgant code.
|
||||
// When we move to C++11 we can use the more elegant code.
|
||||
// Type definition for the construction surface-sweep visitor.
|
||||
template <typename Evt, typename Crv>
|
||||
struct Construction_helper :
|
||||
|
|
|
|||
|
|
@ -261,7 +261,7 @@ is_in_face(const Face* f, const Point_2& p, const Vertex* v) const
|
|||
// Ignore vertical curves:
|
||||
if (is_vertical(curr->curve())) {
|
||||
/* If this outer ccb chain contains the north pole, and our point
|
||||
* lies horizontaly between the two vertical curves that meet at
|
||||
* lies horizontally between the two vertical curves that meet at
|
||||
* the north pole, increase the intersection counter
|
||||
*/
|
||||
if (curr->direction() == ARR_LEFT_TO_RIGHT) {
|
||||
|
|
@ -486,7 +486,7 @@ are_equal(const Vertex* v,
|
|||
|
||||
CGAL_assertion(ps_x != ARR_INTERIOR);
|
||||
/* Both vertices have the same x boundary conditions =>
|
||||
* comapare their y-position.
|
||||
* compare their y-position.
|
||||
*/
|
||||
const Point_2& p1 = v->point();
|
||||
const Point_2& p2 = (ind == ARR_MIN_END) ?
|
||||
|
|
|
|||
|
|
@ -280,7 +280,7 @@ public:
|
|||
}
|
||||
}
|
||||
|
||||
/*! Notificaion before the removal of a vertex.
|
||||
/*! Notification before the removal of a vertex.
|
||||
* \param v (in) A handle to the vertex to be deleted.
|
||||
*/
|
||||
virtual void after_remove_vertex() override {
|
||||
|
|
@ -331,7 +331,7 @@ public:
|
|||
}
|
||||
}
|
||||
|
||||
/*! Notificaion after the removal of an inner CCB.
|
||||
/*! Notification after the removal of an inner CCB.
|
||||
* \param f (in) The face that used to contain the inner CCB.
|
||||
*/
|
||||
virtual void after_remove_inner_ccb(Face_handle /* f */) override {
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@ assign(const Self& arr)
|
|||
}
|
||||
|
||||
// Go over the list of halfedges in our arrangement. The curves associated
|
||||
// with these edges sotre pointers to the curves in the original
|
||||
// with these edges store pointers to the curves in the original
|
||||
// arrangement, so we now have to modify these pointers, according to the
|
||||
// mapping we have just created. While doing so, we also construct the set
|
||||
// of edges associated with each (duplicated) curve in our arrangement.
|
||||
|
|
|
|||
|
|
@ -312,8 +312,8 @@ public:
|
|||
}
|
||||
|
||||
/*! 6. Implementation of the operator in case the left and right sides have
|
||||
* boundary conditions (but they are nopt identified) and the bottom and top
|
||||
* sides are identied.
|
||||
* boundary conditions (but they are not identified) and the bottom and top
|
||||
* sides are identified.
|
||||
*/
|
||||
Comparison_result compare_y_at_x(const Point_2& p,
|
||||
const X_monotone_curve_2& xcv,
|
||||
|
|
@ -397,7 +397,7 @@ public:
|
|||
|
||||
/*! 8. Implementation of the operator in case the left and right sides are
|
||||
* identified, and the bottom and top sides have boundary conditions (but
|
||||
* they are not identied).
|
||||
* they are not identified).
|
||||
*/
|
||||
Comparison_result compare_y_at_x(const Point_2& p,
|
||||
const X_monotone_curve_2& xcv,
|
||||
|
|
|
|||
|
|
@ -2534,7 +2534,7 @@ _insert_at_vertices(DHalfedge* he_to,
|
|||
// EBEB 2012-07-26 the following code enables optimizations:
|
||||
// - avoid length-test
|
||||
// - search only local minima to find leftmost vertex
|
||||
// - re-use of signs of ccbs
|
||||
// - reuse of signs of ccbs
|
||||
// signs1/2 are only used when hole1 == hole2,
|
||||
// thus we have to init them now
|
||||
Arr_halfedge_direction cv_dir1 = cv_dir;
|
||||
|
|
|
|||
|
|
@ -1176,7 +1176,7 @@ _zone_in_face(Face_handle face, bool on_boundary) {
|
|||
m_left_he = (m_right_he->direction() == ARR_LEFT_TO_RIGHT) ?
|
||||
inserted_he : m_right_he;
|
||||
else {
|
||||
// Mutliplicity is unknown:
|
||||
// Multiplicity is unknown:
|
||||
m_left_he = m_invalid_he;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -271,7 +271,7 @@ public:
|
|||
class Halfedge;
|
||||
class Face;
|
||||
|
||||
// Definition of the halfedge data-structure itereators and circulators:
|
||||
// Definition of the halfedge data-structure iterators and circulators:
|
||||
typedef I_Filtered_iterator<DVertex_iter, _Is_concrete_vertex,
|
||||
Vertex, DDifference, DIterator_category>
|
||||
Vertex_iterator;
|
||||
|
|
|
|||
|
|
@ -2015,7 +2015,7 @@ protected:
|
|||
* boundary implies equality
|
||||
*
|
||||
* \param p first endpoint
|
||||
* \param q second endpint
|
||||
* \param q second endpoint
|
||||
* \param equal_x \c true indicates to skip the comparison by x
|
||||
* \param only_x \c true indicates to report only the comparison by x
|
||||
* \returns the result of the queried comparison
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ struct Curve_interval_arcno_cache {
|
|||
//! type of second argument
|
||||
typedef bool second_argument_type;
|
||||
|
||||
//! type of third arguent
|
||||
//! type of third argument
|
||||
typedef int third_argument_type;
|
||||
|
||||
//! the result type
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
// whether to use exact rational arithmetic
|
||||
#define CGAL_CKVA_USE_RATIONAL_ARITHMETIC
|
||||
|
||||
// this turns on a signleton curve renderer
|
||||
// this turns on a singleton curve renderer
|
||||
// (not recommended for multi-threaded applications)
|
||||
//#define CGAL_CKVA_USE_STATIC_RENDERER
|
||||
|
||||
|
|
|
|||
|
|
@ -221,7 +221,7 @@ private:
|
|||
//! returns \c true when the precision limit for a specified number type is
|
||||
//! reached
|
||||
typename Renderer_traits::Precision_limit limit;
|
||||
//! maximum level of subdivision dependending on specified number type
|
||||
//! maximum level of subdivision depending on specified number type
|
||||
static const unsigned MAX_SUBDIVISION_LEVEL =
|
||||
Renderer_traits::MAX_SUBDIVISION_LEVEL;
|
||||
|
||||
|
|
|
|||
|
|
@ -130,7 +130,7 @@ struct Transform {
|
|||
/*!\brief
|
||||
* class template \c Curve_renderer_traits
|
||||
*
|
||||
* this traits class prodives various number type conversions for the
|
||||
* this traits class provides various number type conversions for the
|
||||
* curve renderer
|
||||
*/
|
||||
|
||||
|
|
|
|||
|
|
@ -317,7 +317,7 @@ namespace CGAL {
|
|||
}
|
||||
|
||||
/*!
|
||||
* Read a circular boundary of a conncted component.
|
||||
* Read a circular boundary of a connected component.
|
||||
* \param formatter The formatter.
|
||||
* \param boundary_size The number of halfedges along the boundary.
|
||||
* \param p_outer The outer CCB.
|
||||
|
|
|
|||
|
|
@ -197,7 +197,7 @@ namespace draw_function_for_arrangement_2
|
|||
}
|
||||
}
|
||||
|
||||
/*! Draw a region using aproximate coordinates.
|
||||
/*! Draw a region using approximate coordinates.
|
||||
* Call this member function only if the geometry traits is equipped with
|
||||
* the coordinate-approximation functionality of a curve.
|
||||
* This function must be inlined (e.g., a template) to enable the
|
||||
|
|
@ -416,7 +416,7 @@ namespace draw_function_for_arrangement_2
|
|||
m_visited.clear();
|
||||
}
|
||||
|
||||
/*! Draw a curve using aproximate coordinates.
|
||||
/*! Draw a curve using approximate coordinates.
|
||||
* Call this member function only of the geometry traits is equipped with
|
||||
* the coordinate-aproximation functionality of a curve.
|
||||
* This function must be inlined (e.g., a template) to enable the
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Arrangement_on_surface_2_Tests)
|
||||
|
||||
enable_testing()
|
||||
|
|
|
|||
|
|
@ -476,13 +476,13 @@ public:
|
|||
virtual void after_move_isolated_vertex(Vertex_handle /* v */) override
|
||||
{ compare_results("after_move_isolated_vertex"); }
|
||||
|
||||
/*! Notificaion before the removal of a vertex.
|
||||
/*! Notification before the removal of a vertex.
|
||||
* \param v A handle to the vertex to be deleted.
|
||||
*/
|
||||
virtual void before_remove_vertex(Vertex_handle /* v */) override
|
||||
{ compare_results("before_remove_vertex"); }
|
||||
|
||||
/*! Notificaion after the removal of a vertex.
|
||||
/*! Notification after the removal of a vertex.
|
||||
*/
|
||||
virtual void after_remove_vertex() override
|
||||
{ compare_results("after_remove_vertex"); }
|
||||
|
|
@ -493,7 +493,7 @@ public:
|
|||
virtual void before_remove_edge(Halfedge_handle /* e */) override
|
||||
{ compare_results("before_remove_edge"); }
|
||||
|
||||
/*! Notificaion after the removal of an edge.
|
||||
/*! Notification after the removal of an edge.
|
||||
*/
|
||||
virtual void after_remove_edge() override
|
||||
{ compare_results("after_remove_edge"); }
|
||||
|
|
@ -506,7 +506,7 @@ public:
|
|||
Ccb_halfedge_circulator /* h */) override
|
||||
{ compare_results("before_remove_outer_ccb"); }
|
||||
|
||||
/*! Notificaion after the removal of an outer CCB.
|
||||
/*! Notification after the removal of an outer CCB.
|
||||
* \param f The face that used to own the outer CCB.
|
||||
*/
|
||||
virtual void after_remove_outer_ccb(Face_handle /* f */) override
|
||||
|
|
@ -520,7 +520,7 @@ public:
|
|||
Ccb_halfedge_circulator /* h */) override
|
||||
{ compare_results("before_remove_inner_ccb"); }
|
||||
|
||||
/*! Notificaion after the removal of an inner CCB.
|
||||
/*! Notification after the removal of an inner CCB.
|
||||
* \param f The face that used to contain the inner CCB.
|
||||
*/
|
||||
virtual void after_remove_inner_ccb(Face_handle /* f */) override
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(BGL_LCC_Examples)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(BGL_OpenMesh_Examples)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(BGL_arrangement_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
|
||||
project(BGL_graphcut_Examples)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(BGL_polyhedron_3_Examples)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(BGL_surface_mesh_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(BGL_triangulation_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -607,7 +607,7 @@ remove_face(typename boost::graph_traits<OPEN_MESH_CLASS >::face_descriptor f,
|
|||
sm.status(f).set_deleted(true);
|
||||
}
|
||||
|
||||
#if 0 // conflits with function in Euler_operations.h
|
||||
#if 0 // conflicts with function in Euler_operations.h
|
||||
template<typename K>
|
||||
std::pair<typename boost::graph_traits<OPEN_MESH_CLASS >::edge_descriptor,
|
||||
bool>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script_with_options
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(BGL_Tests)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -531,7 +531,7 @@ add_faces()
|
|||
typedef typename boost::graph_traits<T>::face_descriptor face_descriptor;
|
||||
typedef typename boost::graph_traits<T>::halfedge_descriptor halfedge_descriptor;
|
||||
|
||||
// read a mesh with bord + test append
|
||||
// read a mesh with border + test append
|
||||
{
|
||||
T m;
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
project(Barycentric_coordinates_2_Benchmarks)
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script.
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
|
||||
project(Barycentric_coordinates_2_Examples)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script.
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
|
||||
project(Barycentric_coordinates_2_Tests)
|
||||
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
# Used in /CGAL/Documentation/doc/Documentation/Developer_manual/create_and_use_a_cmakelist.txt.
|
||||
# Careful when modifying
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Basic_viewer_Examples)
|
||||
|
||||
#CGAL_Qt6 is needed for the drawing.
|
||||
|
|
|
|||
|
|
@ -575,13 +575,13 @@ If the `UsePolylines` template parameter is substitited with
|
|||
|
||||
<li>Instead of using an instance of the `Polygon_set_2` class
|
||||
template, as described above, an instance of the
|
||||
`General_polygon_set_2` class template is used, which utilzes the
|
||||
`General_polygon_set_2` class template is used, which utilizes the
|
||||
`Arr_polyline_traits_2` class template; see Section \ref
|
||||
arr_ssectr_polylines in the 2D Arrangements package.
|
||||
|
||||
<li>Each input linear polygon (respectively linear polygon with holes) is
|
||||
converted into a general polygon (respectively general polygon with holes)
|
||||
bounded by \f$x\f$-monotone polylines. Then, the resulting generl
|
||||
bounded by \f$x\f$-monotone polylines. Then, the resulting general
|
||||
polygons, which are also bounded by \f$x\f$-monotone polylines, are
|
||||
converted back to standard polygons.
|
||||
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ opens a new window and draws a 2D polygon set. Parameters of the drawing are tak
|
|||
A call to this function blocks the execution of the program until the drawing window is closed. This function requires `CGAL_Qt6`, and is only available if the macro `CGAL_USE_BASIC_VIEWER` is defined.
|
||||
Linking with the cmake target `CGAL::CGAL_Basic_viewer` will link with `CGAL_Qt6` and add the definition `CGAL_USE_BASIC_VIEWER`.
|
||||
|
||||
\tparam PS2 which must be an instanciation of a `CGAL::Polygon_set_2<...>`.
|
||||
\tparam PS2 which must be an instantiation of a `CGAL::Polygon_set_2<...>`.
|
||||
\tparam GSOptions a model of `GraphicsSceneOptionsPolygonSet2` concept.
|
||||
|
||||
\param ps2 the polygon set to draw.
|
||||
|
|
@ -62,7 +62,7 @@ void draw(const PS2& ps2);
|
|||
|
||||
adds the vertices, edges and faces of `ps2` into the given graphic scene `gs`. Parameters of the cells are taken from the optional graphics scene options parameter `gso`. Note that `gs` is not cleared before being filled (to enable to draw several data structures in the same basic viewer).
|
||||
|
||||
\tparam PS2 which must be an instanciation of a `CGAL::Polygon_set_2<...>`.
|
||||
\tparam PS2 which must be an instantiation of a `CGAL::Polygon_set_2<...>`.
|
||||
\tparam GSOptions a model of `GraphicsSceneOptionsPolygonSet2` concept.
|
||||
|
||||
\param ps2 the polygon set to draw.
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.23)
|
||||
cmake_minimum_required(VERSION 3.12...3.29)
|
||||
project(Boolean_set_operations_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core OPTIONAL_COMPONENTS Qt6)
|
||||
|
|
|
|||
|
|
@ -691,7 +691,7 @@ bool are_holes_and_boundary_pairwise_disjoint
|
|||
bool intersect = gps.do_intersect(hole);
|
||||
if (intersect) return false;
|
||||
else {
|
||||
/* to use gps.insert(hole) it is required that the set coponents and the
|
||||
/* to use gps.insert(hole) it is required that the set components and the
|
||||
* new holes do not intersect.
|
||||
* because the sweep detects shared edges and the do_intersect query
|
||||
* detects 2D intersections we can safely use the insert(pwh) function
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ struct _Less_handle
|
|||
|
||||
/*!
|
||||
* Connect the given polygon with holes, turning it into a sequence of
|
||||
* points, where the holes are connceted to the outer boundary using
|
||||
* points, where the holes are connected to the outer boundary using
|
||||
* zero-width passages.
|
||||
* For example:
|
||||
* Input Output
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue