PCB Environment 2
Loading...
Searching...
No Matches
Geometry.hpp File Reference
#include <iostream>
#include "Defs.hpp"
#include <CGAL/Bbox_2.h>
#include <CGAL/Polygon_2.h>
#include <CGAL/Simple_cartesian.h>
#include "Math/IPoint2.hpp"
#include "Math/IPoint3.hpp"

Go to the source code of this file.

Data Structures

class  Point_25
 2.5D (2 continuous + 1 discrete) Point class. More...
class  Segment_25

Namespaces

namespace  geo

Macros

#define CGAL_DISABLE_ROUNDING_MATH_CHECK
#define std_get_for_cgal   boost::get

Typedefs

typedef CGAL::Simple_cartesian< RealKernel
using Vector_2 = Kernel::Vector_2
using Vector_3 = Kernel::Vector_3
using Point_2 = Kernel::Point_2
using Point_3 = Kernel::Point_3
using Direction_2 = Kernel::Direction_2
using Ray_2 = Kernel::Ray_2
using Ray_3 = Kernel::Ray_3
using Line_2 = Kernel::Line_2
using Segment_2 = Kernel::Segment_2
using Segment_3 = Kernel::Segment_3
using Triangle_2 = Kernel::Triangle_2
using Triangle_3 = Kernel::Triangle_3
using Circle_2 = Kernel::Circle_2
using Bbox_2 = CGAL::Bbox_2
using Iso_rectangle_2 = CGAL::Iso_rectangle_2<Kernel>
using Polygon_2 = CGAL::Polygon_2<Kernel>
using Aff_transformation_2 = CGAL::Aff_transformation_2<Kernel>

Functions

Real geo::cosine (const Vector_2 &v1, const Vector_2 &v2)
 Compute the cosine of the angle between two 2D vectors.
float geo::distance45 (const Point_2 &A, const Point_2 &B)
Bbox_2 geo::expandBox (const Bbox_2 &box, Real m)
Bbox_2 geo::expandBox_r (const Bbox_2 &box, Real m_rel)
Bbox_2 geo::cropBox (const Bbox_2 &box, const Bbox_2 &crop)
Real geo::bbox_area (const Bbox_2 &box)
Real geo::bbox_diameter (const Bbox_2 &box)
std::string geo::to_string (const Bbox_2 &box)
Point_2 geo::closest_on (const Segment_2 &s, const Point_2 &o)
std::ostream & operator<< (std::ostream &os, const Point_2 &v)
std::ostream & operator<< (std::ostream &os, const Point_25 &v)
std::ostream & operator<< (std::ostream &os, const Vector_2 &v)
std::ostream & operator<< (std::ostream &os, const Triangle_2 &A)
std::ostream & operator<< (std::ostream &os, const Segment_2 &s)
std::ostream & operator<< (std::ostream &os, const Segment_25 &s)

Macro Definition Documentation

◆ CGAL_DISABLE_ROUNDING_MATH_CHECK

#define CGAL_DISABLE_ROUNDING_MATH_CHECK

◆ std_get_for_cgal

#define std_get_for_cgal   boost::get

Typedef Documentation

◆ Aff_transformation_2

using Aff_transformation_2 = CGAL::Aff_transformation_2<Kernel>

◆ Bbox_2

using Bbox_2 = CGAL::Bbox_2

◆ Circle_2

using Circle_2 = Kernel::Circle_2

◆ Direction_2

using Direction_2 = Kernel::Direction_2

◆ Iso_rectangle_2

using Iso_rectangle_2 = CGAL::Iso_rectangle_2<Kernel>

◆ Kernel

typedef CGAL::Simple_cartesian<Real> Kernel

◆ Line_2

using Line_2 = Kernel::Line_2

◆ Point_2

using Point_2 = Kernel::Point_2

◆ Point_3

using Point_3 = Kernel::Point_3

◆ Polygon_2

using Polygon_2 = CGAL::Polygon_2<Kernel>

◆ Ray_2

using Ray_2 = Kernel::Ray_2

◆ Ray_3

using Ray_3 = Kernel::Ray_3

◆ Segment_2

using Segment_2 = Kernel::Segment_2

◆ Segment_3

using Segment_3 = Kernel::Segment_3

◆ Triangle_2

using Triangle_2 = Kernel::Triangle_2

◆ Triangle_3

using Triangle_3 = Kernel::Triangle_3

◆ Vector_2

using Vector_2 = Kernel::Vector_2

◆ Vector_3

using Vector_3 = Kernel::Vector_3

Function Documentation

◆ operator<<() [1/6]

std::ostream & operator<< ( std::ostream & os,
const Point_2 & v )
inline

◆ operator<<() [2/6]

std::ostream & operator<< ( std::ostream & os,
const Point_25 & v )
inline

◆ operator<<() [3/6]

std::ostream & operator<< ( std::ostream & os,
const Segment_2 & s )
inline

◆ operator<<() [4/6]

std::ostream & operator<< ( std::ostream & os,
const Segment_25 & s )
inline

◆ operator<<() [5/6]

std::ostream & operator<< ( std::ostream & os,
const Triangle_2 & A )
inline

◆ operator<<() [6/6]

std::ostream & operator<< ( std::ostream & os,
const Vector_2 & v )
inline