File distance3d.h
File List > algorithm > distance3d.h
Go to the documentation of this file
// Copyright (c) 2012-2013, IGN France.
// Copyright (c) 2012-2022, Oslandia.
// SPDX-License-Identifier: LGPL-2.0-or-later
#ifndef _SFCGAL_ALGORITHM_DISTANCE3D_H_
#define _SFCGAL_ALGORITHM_DISTANCE3D_H_
#include "SFCGAL/config.h"
#include "SFCGAL/Geometry.h"
namespace SFCGAL {
namespace algorithm {
struct NoValidityCheck;
SFCGAL_API double
distance3D(const Geometry &gA, const Geometry &gB);
SFCGAL_API double
distance3D(const Geometry &gA, const Geometry &gB, NoValidityCheck);
SFCGAL_API double
distancePointGeometry3D(const Point &gA, const Geometry &gB);
SFCGAL_API double
distancePointPoint3D(const Point &gA, const Point &gB);
SFCGAL_API double
distancePointLineString3D(const Point &gA, const LineString &gB);
SFCGAL_API double
distancePointTriangle3D(const Point &gA, const Triangle &gB);
SFCGAL_API double
distancePointPolygon3D(const Point &gA, const Polygon &gB);
SFCGAL_API double
distancePointSolid3D(const Point &gA, const Solid &gB);
SFCGAL_API double
distanceLineStringGeometry3D(const LineString &gA, const Geometry &gB);
SFCGAL_API double
distanceLineStringLineString3D(const LineString &gA, const LineString &gB);
SFCGAL_API double
distanceLineStringTriangle3D(const LineString &gA, const Triangle &gB);
SFCGAL_API double
distanceLineStringPolygon3D(const LineString &gA, const Polygon &gB);
SFCGAL_API double
distanceLineStringSolid3D(const LineString &gA, const Solid &gB);
SFCGAL_API double
distanceTriangleGeometry3D(const Triangle &gA, const Geometry &gB);
SFCGAL_API double
distanceTriangleSolid3D(const Triangle &gA, const Solid &gB);
SFCGAL_API double
distancePolygonGeometry3D(const Polygon &gA, const Geometry &gB);
SFCGAL_API double
distanceSolidGeometry3D(const Solid &gA, const Geometry &gB);
SFCGAL_API double
distanceSolidSolid3D(const Solid &gA, const Solid &gB);
SFCGAL_API double
distanceGeometryCollectionToGeometry3D(const Geometry &gA, const Geometry &gB);
SFCGAL_API double
distancePointSegment3D(const Point &p, const Point &a, const Point &b);
SFCGAL_API double
distancePointTriangle3D(const Point &p, const Point &a, const Point &b,
const Point &c);
SFCGAL_API double
distanceSegmentSegment3D(const Point &a, const Point &b, const Point &c,
const Point &d);
SFCGAL_API double
distanceSegmentTriangle3D(const Point &sA, const Point &sB, const Point &tA,
const Point &tB, const Point &tC);
SFCGAL_API double
distanceTriangleTriangle3D(const Triangle &gA, const Triangle &gB);
} // namespace algorithm
} // namespace SFCGAL
#endif