Skip to content

Class EdgeFaceIntersection

ClassList > EdgeFaceIntersection

Metric counting edge–face intersections between the original and reconstructed meshes.More...

  • #include <bench_edge_face_intersections.h>

Inherits the following classes: Metric

Public Functions

Type Name
EdgeFaceIntersection ()
Construct the metric with label "EdgeFaceIntersects".
virtual void compute (const Mesh & originalMesh, const Mesh & reconstructedMesh, benchmark::State & state) override const
Compute the metric for a single (original, reconstructed) pair.
~EdgeFaceIntersection () = default

Public Functions inherited from Metric

See Metric

Type Name
Metric (const std::string & name)
Construct a metric with the given short label.
virtual void compute (const Mesh & originalMesh, const Mesh & reconstructedMesh, benchmark::State & state) const = 0
Compute the metric for a single (original, reconstructed) pair.
const std::string & getName () const
Return the metric's short label.
virtual ~Metric () = default

Detailed Description

For every unique edge of the reconstructed mesh, the metric counts how many triangles of the original mesh it crosses (using an AABB tree for acceleration). The total is recorded under the counter EdgeFaceIntersects.

If the original mesh is empty, the counter is set to -1.0 and the computation is skipped.

Public Functions Documentation

function EdgeFaceIntersection

Construct the metric with label "EdgeFaceIntersects".

inline EdgeFaceIntersection::EdgeFaceIntersection () 


function compute

Compute the metric for a single (original, reconstructed) pair.

virtual void EdgeFaceIntersection::compute (
    const Mesh & originalMesh,
    const Mesh & reconstructedMesh,
    benchmark::State & state
) override const

Implementations should record their values on state.counters.

Parameters:

  • originalMesh Ground-truth mesh.
  • reconstructedMesh Mesh produced by the reconstruction algorithm.
  • state Google Benchmark state receiving the counters.

Implements Metric::compute


function ~EdgeFaceIntersection

EdgeFaceIntersection::~EdgeFaceIntersection () = default


The documentation for this class was generated from the following file benchmark/metrics/implementations/bench_edge_face_intersections.h