BRL-CAD
libbrep_brep_tools.cpp File Reference
#include "common.h"
#include <vector>
#include <iostream>
#include "opennurbs.h"
#include "bu/log.h"
#include "libbrep_brep_tools.h"
Include dependency graph for libbrep_brep_tools.cpp:

Go to the source code of this file.

Functions

bool ON_NearZero (double val, double epsilon)
 Return truthfully whether a value is within a specified epsilon distance from zero. More...
 
double ON_Curve_Get_Tangent (int direction, const ON_Curve *curve, double min, double max, double zero_tol)
 
double ON_Curve_Get_Horizontal_Tangent (const ON_Curve *curve, double min, double max, double zero_tol)
 Search for a horizontal tangent on the curve between two curve parameters. More...
 
double ON_Curve_Get_Vertical_Tangent (const ON_Curve *curve, double min, double max, double zero_tol)
 Search for a vertical tangent on the curve between two curve parameters. More...
 
int ON_Curve_Has_Tangent (const ON_Curve *curve, double ct_min, double ct_max, double t_tol)
 Test whether a curve interval contains one or more horizontal or vertical tangents. More...
 
bool ON_Surface_IsFlat (ON_Plane *frames, double f_tol)
 Perform flatness test of surface. More...
 
bool ON_Surface_IsFlat_U (ON_Plane *frames, double f_tol)
 Perform flatness test of surface in U only. More...
 
bool ON_Surface_IsFlat_V (ON_Plane *frames, double f_tol)
 Perform flatness test of surface in V only. More...
 
bool ON_Surface_IsStraight (ON_Plane *frames, double s_tol)
 Perform straightness test of surface. More...
 
void ON_Surface_Create_Scratch_Surfaces (ON_Surface **t1, ON_Surface **t2, ON_Surface **t3, ON_Surface **t4)
 Create surfaces and store their pointers in the t* arguments. More...
 
bool ON_Surface_SubSurface (const ON_Surface *srf, ON_Interval *u_val, ON_Interval *v_val, ON_Surface **t1, ON_Surface **t2, ON_Surface **t3, ON_Surface **t4, ON_Surface **result)
 Create a surface based on a subset of a parent surface. More...
 
bool ON_Surface_Quad_Split (const ON_Surface *surf, const ON_Interval &u, const ON_Interval &v, double upt, double vpt, ON_Surface **q0, ON_Surface **q1, ON_Surface **q2, ON_Surface **q3)
 Create four sub-surfaces from a parent surface. More...
 

Detailed Description

Utility routines for working with geometry.

Definition in file libbrep_brep_tools.cpp.

Function Documentation

double ON_Curve_Get_Tangent ( int  direction,
const ON_Curve *  curve,
double  min,
double  max,
double  zero_tol 
)

Definition at line 38 of file libbrep_brep_tools.cpp.

References ON_NearZero().

Referenced by ON_Curve_Get_Horizontal_Tangent(), and ON_Curve_Get_Vertical_Tangent().

Here is the call graph for this function:

void ON_Surface_Create_Scratch_Surfaces ( ON_Surface **  t1,
ON_Surface **  t2,
ON_Surface **  t3,
ON_Surface **  t4 
)

Create surfaces and store their pointers in the t* arguments.

For any pre-existing surface passed as one of the t* args, this is a no-op.

Parameters
t1Pointer to pointer addressing first surface
t2Pointer to pointer addressing second surface
t3Pointer to pointer addressing third surface
t4Pointer to pointer addressing fourth surface

Definition at line 215 of file libbrep_brep_tools.cpp.

Referenced by ON_Surface_SubSurface().