BRL-CAD
Loading...
Searching...
No Matches

#include <pullback.h>

Collaboration diagram for pbc_data:
[legend]

Data Fields

double tolerance
 
double flatness
 
const ON_Curvecurve
 
const ON_Surfacesurf
 
bool surface_parameterization_cached = false
 
bool surface_closed [2] = {false, false}
 
ON_Interval surface_domain [2]
 
brlcad::SurfaceTreesurftree
 
std::list< ON_2dPointArray * > * segments
 
const ON_BrepEdgeedge
 
bool order_reversed
 
std::shared_ptr< brlcad::PullbackContextcontext
 
PullbackFailureReason failure_reason = PullbackFailureReason::None
 
bool stop_after_first_rejection = false
 
size_t projection_samples = 0
 
size_t rejected_projection_samples = 0
 
size_t failed_projection_samples = 0
 
size_t failed_seam_crossing_searches = 0
 
double maximum_projection_distance = 0.0
 
bool samples_source_validated = false
 
bool tolerance_adjusted = false
 
double declared_tolerance = 0.0
 
double maximum_recovery_tolerance = 0.0
 
double maximum_recovery_distance = 0.0
 
bool periodic_pole_cut_before = false
 
bool periodic_pole_cut_after = false
 

Detailed Description

Definition at line 93 of file pullback.h.

Field Documentation

◆ tolerance

double tolerance

Definition at line 94 of file pullback.h.

◆ flatness

double flatness

Definition at line 95 of file pullback.h.

◆ curve

const ON_Curve* curve

Definition at line 96 of file pullback.h.

◆ surf

Definition at line 97 of file pullback.h.

◆ surface_parameterization_cached

bool surface_parameterization_cached = false

Immutable surface parameterization facts cached for the numerical job. ON_NurbsSurface::IsClosed() constructs and compares boundary curves, so it must not be repeated for every projected sample.

Definition at line 101 of file pullback.h.

◆ surface_closed

bool surface_closed[2] = {false, false}

Definition at line 102 of file pullback.h.

◆ surface_domain

ON_Interval surface_domain[2]

Definition at line 103 of file pullback.h.

◆ surftree

Definition at line 104 of file pullback.h.

◆ segments

std::list<ON_2dPointArray *>* segments

Definition at line 105 of file pullback.h.

◆ edge

Definition at line 106 of file pullback.h.

◆ order_reversed

bool order_reversed

Definition at line 107 of file pullback.h.

◆ context

Job-local closest-point cache. It never owns STEP or geometry data.

Definition at line 109 of file pullback.h.

◆ failure_reason

Typed result from the bounded point-projection stage.

Definition at line 111 of file pullback.h.

◆ stop_after_first_rejection

bool stop_after_first_rejection = false

A speculative caller needs only to establish that its exact candidate cannot be constructed. Once continuity-seeded and global projection have both rejected a sample, stop walking that direction instead of spending the caller's complete budget quantifying an already decisive failure. Ordinary and repair pullbacks retain exhaustive sampling.

Definition at line 117 of file pullback.h.

◆ projection_samples

size_t projection_samples = 0

Definition at line 118 of file pullback.h.

◆ rejected_projection_samples

size_t rejected_projection_samples = 0

Definition at line 119 of file pullback.h.

◆ failed_projection_samples

size_t failed_projection_samples = 0

Rejected samples for which the closest-point solver found no finite candidate. These are solver failures, not evidence that the source curve lies outside its declared surface tolerance.

Definition at line 123 of file pullback.h.

◆ failed_seam_crossing_searches

size_t failed_seam_crossing_searches = 0

Closed-curve seam transitions for which the local root finder did not locate an exact split. Callers may defer these to loop-level seam resolution, but must report the aggregate rather than printing inside this low-level numerical routine.

Definition at line 128 of file pullback.h.

◆ maximum_projection_distance

double maximum_projection_distance = 0.0

Definition at line 129 of file pullback.h.

◆ samples_source_validated

bool samples_source_validated = false

Every stored UV was produced from a known source-curve parameter and its 3-D lift passed the active projection tolerance. Importers may consume this proof before any seam/topology routine mutates the samples; subsequent validation must use the represented curve locus again.

Definition at line 134 of file pullback.h.

◆ tolerance_adjusted

bool tolerance_adjusted = false

Definition at line 135 of file pullback.h.

◆ declared_tolerance

double declared_tolerance = 0.0

Definition at line 136 of file pullback.h.

◆ maximum_recovery_tolerance

double maximum_recovery_tolerance = 0.0

Optional caller-authorized search bound used only when periodic seam handling collapses an otherwise valid pullback to one UV sample. The recovery still records the largest measured lift error separately, so callers can install a measured tolerance rather than this search bound. Generic callers retain strict behavior because this defaults to the ordinary pullback tolerance.

Definition at line 143 of file pullback.h.

◆ maximum_recovery_distance

double maximum_recovery_distance = 0.0

Definition at line 144 of file pullback.h.

◆ periodic_pole_cut_before

bool periodic_pole_cut_before = false

Loop-level proof selected this edge boundary as the unique periodic cut to a surface pole. Endpoint closure must preserve this pair until the exact seam-edge and singular trims are emitted.

Definition at line 148 of file pullback.h.

◆ periodic_pole_cut_after

bool periodic_pole_cut_after = false

Definition at line 149 of file pullback.h.


The documentation for this struct was generated from the following file: