Program Listing for File parallel.hxx¶
↰ Return to documentation for file (src/acme/parallel.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_PARALLEL_HXX
#define INCLUDE_ACME_PARALLEL_HXX
#include "aabb.hxx"
#include "disk.hxx"
#include "line.hxx"
#include "orthogonal.hxx"
#include "plane.hxx"
#include "ray.hxx"
#include "segment.hxx"
#include "triangle.hxx"
namespace acme
{
/*\
| ____ _ _ _
| | _ \ __ _ _ __ __ _| | | ___| |
| | |_) / _` | '__/ _` | | |/ _ \ |
| | __/ (_| | | | (_| | | | __/ |
| |_| \__,_|_| \__,_|_|_|\___|_|
|
\*/
bool
IsParallel(
entity const * entity0_in,
entity const * entity1_in,
real tolerance = EPSILON
);
bool
IsParallel(
vec3 const & vector0_in,
vec3 const & vector1_in,
real tolerance = EPSILON
);
bool
IsParallel(
vec3 const & vector_in,
line const & line_in,
real tolerance = EPSILON
);
bool
IsParallel(
vec3 const & vector_in,
ray const & ray_in,
real tolerance = EPSILON
);
bool
IsParallel(
vec3 const & vector_in,
plane const & plane_in,
real tolerance = EPSILON
);
bool
IsParallel(
vec3 const & vector_in,
segment const & segment_in,
real tolerance = EPSILON
);
bool
IsParallel(
vec3 const & vector_in,
triangle const & triangle_in,
real tolerance = EPSILON
);
bool
IsParallel(
vec3 const & vector_in,
disk const & disk_in,
real tolerance = EPSILON
);
bool
IsParallel(
line const & line0_in,
line const & line1_in,
real tolerance = EPSILON
);
bool
IsParallel(
ray const & ray0_in,
ray const & ray1_in,
real tolerance = EPSILON
);
bool
IsParallel(
plane const & plane0_in,
plane const & plane1_in,
real tolerance = EPSILON
);
bool
IsParallel(
segment const & segment0_in,
segment const & segment1_in,
real tolerance = EPSILON
);
bool
IsParallel(
triangle const & triangle0_in,
triangle const & triangle1_in,
real tolerance = EPSILON
);
bool
IsParallel(
disk const & disk0_in,
disk const & disk1_in,
real tolerance = EPSILON
);
bool
IsParallel(
line const & line_in,
ray const & ray_in,
real tolerance = EPSILON
);
bool
IsParallel(
line const & line_in,
plane const & plane_in,
real tolerance = EPSILON
);
bool
IsParallel(
line const & line_in,
segment const & segment_in,
real tolerance = EPSILON
);
bool
IsParallel(
line const & line_in,
triangle const & triangle_in,
real tolerance = EPSILON
);
bool
IsParallel(
line const & line_in,
disk const & disk_in,
real tolerance = EPSILON
);
bool
IsParallel(
ray const & ray_in,
plane const & plane_in,
real tolerance = EPSILON
);
bool
IsParallel(
ray const & ray_in,
segment const & segment_in,
real tolerance = EPSILON
);
bool
IsParallel(
ray const & ray_in,
triangle const & triangle_in,
real tolerance = EPSILON
);
bool
IsParallel(
ray const & ray_in,
disk const & disk_in,
real tolerance = EPSILON
);
bool
IsParallel(
plane const & plane_in,
segment const & segment_in,
real tolerance = EPSILON
);
bool
IsParallel(
plane const & plane_in,
triangle const & triangle_in,
real tolerance = EPSILON
);
bool
IsParallel(
plane const & plane_in,
disk const & disk_in,
real tolerance = EPSILON
);
bool
IsParallel(
segment const & segment_in,
triangle const & triangle_in,
real tolerance = EPSILON
);
bool
IsParallel(
segment const & segment_in,
disk const & disk_in,
real tolerance = EPSILON
);
bool
IsParallel(
triangle const & triangle_in,
disk const & disk_in,
real tolerance = EPSILON
);
} // namespace acme
#endif