Program Listing for File collinear.hxx¶
↰ Return to documentation for file (src/acme/collinear.hxx
)
/*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* *
* The ACME project *
* *
* Copyright (c) 2020, Davide Stocco and Enrico Bertolazzi. *
* *
* The ACME project and its components are supplied under the terms of *
* the open source BSD 2-Clause License. The contents of the ACME *
* project and its components may not be copied or disclosed except in *
* accordance with the terms of the BSD 2-Clause License. *
* *
* URL: https://opensource.org/licenses/BSD-2-Clause *
* *
* Davide Stocco *
* Department of Industrial Engineering *
* University of Trento *
* e-mail: davide.stocco@unitn.it *
* *
* Enrico Bertolazzi *
* Department of Industrial Engineering *
* University of Trento *
* e-mail: enrico.bertolazzi@unitn.it *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/
#pragma once
#ifndef INCLUDE_ACME_COLLINEAR_HXX
#define INCLUDE_ACME_COLLINEAR_HXX
#include "line.hxx"
#include "parallel.hxx"
#include "ray.hxx"
#include "segment.hxx"
namespace acme
{
/*\
| ____ _ _ _
| / ___|___ | | (_)_ __ ___ __ _ _ __
| | | / _ \| | | | '_ \ / _ \/ _` | '__|
| | |__| (_) | | | | | | | __/ (_| | |
| \____\___/|_|_|_|_| |_|\___|\__,_|_|
|
\*/
bool
IsCollinear(
entity const * entity0_in,
entity const * entity1_in,
real tolerance = EPSILON
);
bool
IsCollinear(
line const & line0_in,
line const & line1_in,
real tolerance = EPSILON
);
bool
IsCollinear(
ray const & ray0_in,
ray const & ray1_in,
real tolerance = EPSILON
);
bool
IsCollinear(
segment const & segment0_in,
segment const & segment1_in,
real tolerance = EPSILON
);
bool
IsCollinear(
line const & line_in,
ray const & ray_in,
real tolerance = EPSILON
);
bool
IsCollinear(
line const & line_in,
segment const & segment_in,
real tolerance = EPSILON
);
bool
IsCollinear(
ray const & ray_in,
segment const & segment_in,
real tolerance = EPSILON
);
} // namespace acme
#endif