#include </home/runner/work/OrcaSlicer/OrcaSlicer/src/libslic3r/MarchingSquares.hpp>
Classes | |
| struct | CellIt |
| struct | Edge |
Public Member Functions | |
| Grid (const Rst &rst, const Coord &window) | |
| template<class ExecutionPolicy> | |
| void | tag_grid (ExecutionPolicy &&policy, TRasterValue< Rst > isoval) |
| std::vector< Ring > | scan_rings () |
| template<class ExecutionPolicy> | |
| void | interpolate_rings (ExecutionPolicy &&policy, std::vector< Ring > &rings, TRasterValue< Rst > isov) |
| std::ostream & | streamtags (std::ostream &os) |
| std::ostream & | streamdirs (std::ostream &os) |
Private Member Functions | |
| Coord | rastercoord (const Coord &crd) const |
| Coord | bl (const Coord &crd) const |
| Coord | br (const Coord &crd) const |
| Coord | tr (const Coord &crd) const |
| Coord | tl (const Coord &crd) const |
| bool | is_within (const Coord &crd) const |
| uint32_t | get_tags_block32 (const size_t bidx, const TRasterValue< Rst > v) const |
| uint32_t | get_dirs_block8 (const size_t bidx) const |
| uint32_t | get_tags9 (size_t gidx) const |
| void | clr_dirs (const size_t gidx, const Dir d) |
| Dir | get_dirs (const size_t gidx) const |
| Coord | coord (size_t i) const |
| size_t | seq (const Coord &crd) const |
| size_t | stepidx (const size_t idx, const Dir d) const |
| size_t | search_start_cell (size_t gidx=0) const |
| Dir | next_dir (size_t idx, Dir prev=Dir::all) const |
| Edge | _edge (const Coord &ringvertex) const |
| Edge | edge (const Coord &ringvertex) const |
| void | interpolate_edge (Coord &ecrd, TRasterValue< Rst > isoval) const |
Private Attributes | |
| const Rst * | m_rst = nullptr |
| Coord | m_window |
| Coord | m_rastsize |
| Coord | m_gridsize |
| size_t | m_gridlen |
| std::vector< uint32_t > | m_tags |
| std::vector< uint32_t > | m_dirs |
| struct marchsq::__impl::Grid::Edge |
|
inlineexplicit |
References marchsq::__impl::cols(), m_dirs, m_gridlen, m_gridsize, m_rastsize, m_rst, m_tags, m_window, and marchsq::__impl::rows().
|
inlineprivate |
References bl(), br(), marchsq::Coord::c, coord(), marchsq::__impl::down, marchsq::__impl::left, m_rst, marchsq::Coord::r, marchsq::__impl::right, tl(), tr(), and marchsq::__impl::up.
Referenced by edge().
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
References m_dirs, and m_gridlen.
Referenced by scan_rings().
|
inlineprivate |
References m_gridsize.
Referenced by _edge(), and get_tags_block32().
|
inlineprivate |
References _edge(), marchsq::Coord::c, marchsq::__impl::Grid< Rst >::CellIt::crd, marchsq::__impl::Grid< Rst >::CellIt::dir, marchsq::__impl::Grid< Rst >::Edge::from, m_rastsize, marchsq::Coord::r, and marchsq::__impl::Grid< Rst >::Edge::to.
Referenced by interpolate_edge().
|
inlineprivate |
References m_dirs, and m_gridlen.
Referenced by next_dir(), and streamdirs().
|
inlineprivate |
References get_tags9(), m_gridsize, and marchsq::__impl::NEXT_CCW.
|
inlineprivate |
References m_gridlen, and m_tags.
Referenced by get_dirs_block8(), and streamtags().
|
inlineprivate |
References marchsq::Coord::c, coord(), is_within(), marchsq::__impl::isoval(), m_gridsize, m_rst, m_window, marchsq::Coord::r, and rastercoord().
|
inlineprivate |
References marchsq::Coord::c, marchsq::__impl::Grid< Rst >::CellIt::dir, marchsq::__impl::down, edge(), marchsq::__impl::Grid< Rst >::Edge::from, marchsq::__impl::isoval(), marchsq::__impl::left, m_gridlen, marchsq::Coord::r, marchsq::__impl::right, marchsq::__impl::Grid< Rst >::Edge::to, and marchsq::__impl::up.
|
inline |
References marchsq::__impl::for_each_idx().
|
inlineprivate |
References marchsq::Coord::c, m_rastsize, and marchsq::Coord::r.
Referenced by get_tags_block32().
|
inlineprivate |
References marchsq::__impl::all, marchsq::__impl::down, get_dirs(), marchsq::__impl::left, marchsq::__impl::leftright, marchsq::__impl::none, marchsq::__impl::right, marchsq::__impl::up, and marchsq::__impl::updown.
Referenced by scan_rings().
|
inlineprivate |
References marchsq::Coord::c, m_window, and marchsq::Coord::r.
Referenced by get_tags_block32(), and tl().
|
inline |
References clr_dirs(), marchsq::__impl::left, m_gridlen, next_dir(), marchsq::__impl::none, search_start_cell(), stepidx(), and marchsq::__impl::up.
|
inlineprivate |
References m_dirs.
Referenced by scan_rings().
|
inlineprivate |
References m_gridsize, and marchsq::Coord::seq().
Referenced by streamdirs(), and streamtags().
|
inlineprivate |
References marchsq::__impl::down, marchsq::__impl::left, m_gridlen, m_gridsize, marchsq::__impl::right, and marchsq::__impl::up.
Referenced by scan_rings().
|
inline |
References get_dirs(), m_gridsize, and seq().
|
inline |
References get_tags9(), m_gridsize, and seq().
|
inline |
References marchsq::__impl::for_each_idx(), marchsq::__impl::isoval(), m_dirs, and m_tags.
|
inlineprivate |
References rastercoord().
Referenced by _edge(), bl(), br(), and tr().
|
inlineprivate |
|
private |
Referenced by Grid(), clr_dirs(), get_dirs(), search_start_cell(), and tag_grid().
|
private |
Referenced by Grid(), clr_dirs(), get_dirs(), get_tags9(), interpolate_edge(), scan_rings(), and stepidx().
|
private |
Referenced by Grid(), coord(), get_dirs_block8(), get_tags_block32(), seq(), stepidx(), streamdirs(), and streamtags().
|
private |
Referenced by Grid(), edge(), and is_within().
|
private |
Referenced by Grid(), _edge(), and get_tags_block32().
|
private |
Referenced by Grid(), get_tags9(), and tag_grid().
|
private |
Referenced by Grid(), bl(), br(), get_tags_block32(), rastercoord(), and tr().