TIntrTriangle3Triangle3

Compute intersection between 3D triangles use [Test()](API\Plugins\GeometricObjects\Intersection\TIntrTriangle3Triangle3\Test) for fast boolean query, does not compute intersection info use [Find()](API\Plugins\GeometricObjects\Intersection\TIntrTriangle3Triangle3\Find) to compute full information By default fully-contained co-planar triangles are not reported as intersecting.

Windows
MacOS
Linux

References

Module

GeometricObjects

Header

/Engine/Plugins/Experimental/GeometryProcessing/Source/GeometricObjects/Public/Intersection/IntrTriangle3Triangle3.h

Include

#include "Intersection/IntrTriangle3Triangle3.h"

Syntax

template<typename Real>
class TIntrTriangle3Triangle3

Remarks

Compute intersection between 3D triangles use Test() for fast boolean query, does not compute intersection info use Find() to compute full information By default fully-contained co-planar triangles are not reported as intersecting. Call SetReportCoplanarIntersection(true) to handle this case (more expensive)

Variables

Name Description

Protected variable

bool

 

bReportCoplanarIntersection

If true, will return intersection polygons for co-planar triangles.

Public variable

FVector3< Real ...

 

Points

Public variable

int

 

Quantity

Intersection points (for point, line, polygon) only first Quantity elements are relevant

Public variable

EIntersectionRe...

 

Result

Result flags

Protected variable

double

 

Tolerance

Protected variable

TTriangle3< Rea...

 

Triangle0

Input.

Protected variable

TTriangle3< Rea...

 

Triangle1

Public variable

EIntersectionTy...

 

Type

Constructors

Name Description

Public function

TIntrTriangle3Triangle3()

Public function

TIntrTriangle3Triangle3

(
    const TTriangle3< Real >& T0,
    const TTriangle3< Real >& T1
)

Functions

Name Description

Public function

TIntrTriangl...

 

Compute()

Protected function

bool

 

ContainsPoint

(
    const TTriangle3< Real >& triangle,
    const TPlane3< Real >& plane,
    const FVector3< Real >& point
)

Public function

bool

 

Find()

Protected function

bool

 

GetCoplanarIntersection

(
    const TPlane3< Real >& plane,
    const TTriangle3< Real >& tri0,
    const TTriangle3< Real >& tri1
)

Public function Const

bool

 

GetReportCoplanarIntersection()

Public function Const

double

 

GetTolerance()

Public function Const

TTriangle3< ...

 

GetTriangle0()

Public function Const

TTriangle3< ...

 

GetTriangle1()

Public function Static

bool

 

Intersects

(
    const TTriangle3< Real >& Triangle...,
    const TTriangle3< Real >& Triangle...,
    Real Tolerance
)

Protected function

bool

 

IntersectsSegment

(
    const TPlane3< Real >& plane,
    const TTriangle3< Real >& triangle,
    const FVector3< Real >& end0,
    const FVector3< Real >& end1
)

Public function Static

int

 

IntersectTriangleWithCoplanarSegment

(
    const TPlane3< Real >& plane,
    const TTriangle3< Real >& triangle,
    const FVector3< Real >& end0,
    const FVector3< Real >& end1,
    FVector3< Real >& OutA,
    FVector3< Real >& OutB,
    Real Tolerance
)

Solve a common sub-problem for triangle-triangle intersection find the sub-segment (or point) where a triangle intersects a coplanar segment

Public function Static

void

 

ProjectOntoAxis

(
    const TTriangle3< Real >& triangle,
    const FVector3< Real >& axis,
    double& fmin,
    double& fmax
)

Public function

void

 

SetReportCoplanarIntersection

(
    bool bReportCoplanarIntersectionIn
)

Public function

void

 

SetResult

(
    bool IsIntersecting
)

Store an externally-computed binary yes/no result

Public function

void

 

SetResult

(
    const FVector3d& A,
    const FVector3d& B
)

Store an externally-computed segment intersection result

Public function

void

 

SetResultNone()

Store an externally-computed no-intersection result

Public function

void

 

SetTolerance

(
    double ToleranceIn
)

Public function

void

 

SetTriangle0

(
    const TTriangle3< Real >& Triangle...
)

Public function

void

 

SetTriangle1

(
    const TTriangle3< Real >& Triangle...
)

Public function

bool

 

Test()

Public function Static

void

 

TrianglePlaneRelations

(
    const TTriangle3< Real >& triangle,
    const TPlane3< Real >& plane,
    FVector3< Real >& distance,
    FIndex3i& sign,
    int& positive,
    int& negative,
    int& zero,
    Real Tolerance
)

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss