a Surface_geom consisting of a set of Parametric<1> curves
More...
#include <brep.hpp>
Public Member Functions | |
| Geom_2d (std::string file_name, Int n_div) | |
| void | visualize (std::string format, std::string file_name, Int n_div=100) |
| Writes visualization files of the geometry to help diagnose import/translation bugs. | |
| Nearest_point< dyn > | nearest_point (Mat<> point, double max_distance=huge, double distance_guess=huge) override |
Computes the point on the surface which is nearest to point within max_distance. | |
| std::vector< double > | intersections (Mat<> point0, Mat<> point1, bool high_prec=true) override |
| Computes the set of intersection points between a line and the surface. | |
| next::Sequence< Mat< 3 > > | points () override |
Public Member Functions inherited from hexed::Surface_geom | |
| virtual next::Sequence< const Geom_edge & > | edges () |
| Returns a list of any geometry edges that require mesh edges to be snapped to them. | |
a Surface_geom consisting of a set of Parametric<1> curves
| hexed::brep::Geom_2d::Geom_2d | ( | std::string | file_name, |
| Int | n_div ) |
| file_name | Name of file containing geometry. Must be in IGES format. |
| n_div | Any entities that need to be discretized will be so with n_div subdivisions. Must be a power of 2. |
|
overridevirtual |
Computes the set of intersection points between a line and the surface.
The line is defined parametrically to be the set of points \( [\text{point0}] + t [\text{point1}] \) for all \( t \in \mathbb{R} \). Returns the (potentially empty) set of \( t \) values where the line intersects the surface.
Implements hexed::Surface_geom.
|
overridevirtual |
Computes the point on the surface which is nearest to point within max_distance.
If no point is found, returns an empty Nearest_point.
| point | The point you want to find the nearest point to. |
| max_distance | Only consider points within max_distance of point. |
| distance_guess | If you have some reason to suspect the nearest point is within a certain distance of the input point, you can pass it to this parameter as a hint to possibly improve performance. |
Implements hexed::Surface_geom.
|
overridevirtual |
Reimplemented from hexed::Surface_geom.
| void hexed::brep::Geom_2d::visualize | ( | std::string | format, |
| std::string | file_name, | ||
| Int | n_div = 100 ) |
Writes visualization files of the geometry to help diagnose import/translation bugs.
For visualization purposes, entities will be discretized with n_div segments. This is not the same as the n_div passed to the constructor, and need not be a power of 2. It should usually be much less than the n_div passed to the constructor, because visualization is more expensive than nearest-point calculations and requires less precision. If the input file is named INPUT_FILE and the file extension of the specified visualization format is EXT, this function will write a file INPUT_FILE_curves.EXT with all curves in the geometry. Even though Geom_2d is supposed to represent a 2D geometry, the curves will be 3D. This is because the underlying representation is 3D, and if this turns out not to lie in the \( x_0, x_1 \) plane, this is a potential source of problems and important information to convey in the visualization file.