\hypertarget{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo}{\section{Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo Class Reference}
\label{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo}\index{Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo@{Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}}
}


This module inserts a layer of hexes corresponding to the input \hyperlink{class_s_c_i_run_1_1_tri_surf_mesh}{Tri\-Surf\-Mesh}.  


\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
class \hyperlink{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_1_1_triangle_mesh_face_tree}{Triangle\-Mesh\-Face\-Tree}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
bool \hyperlink{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_aa8c4c96649fc0d12f64e64d334e44fe0}{execute} (Progress\-Reporter $\ast$reporter, \hyperlink{namespace_s_c_i_run_ae62efffc02ce1c5a899048c76e4411bd}{Field\-Handle} hexfieldh, \hyperlink{namespace_s_c_i_run_ae62efffc02ce1c5a899048c76e4411bd}{Field\-Handle} trifieldh, \hyperlink{namespace_s_c_i_run_ae62efffc02ce1c5a899048c76e4411bd}{Field\-Handle} \&side1field, \hyperlink{namespace_s_c_i_run_ae62efffc02ce1c5a899048c76e4411bd}{Field\-Handle} \&side2field, bool add\-\_\-to\-\_\-side1, bool add\-\_\-layer)
\begin{DoxyCompactList}\small\item\em virtual interface. \end{DoxyCompactList}\item 
void \hyperlink{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_a8e26d4542d4d14ea038b747c38da6db6}{load\-\_\-hex\-\_\-mesh} (\hyperlink{class_s_c_i_run_1_1_v_mesh}{V\-Mesh} $\ast$hexfield)
\item 
void \hyperlink{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_a514dfc7792657648d4e62ef3db0fb8ae}{load\-\_\-tri\-\_\-mesh} (\hyperlink{class_s_c_i_run_1_1_v_mesh}{V\-Mesh} $\ast$trifield)
\item 
void \hyperlink{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_ac3c1c0abee11d66238061d7d89258122}{compute\-\_\-intersections} (Progress\-Reporter $\ast$mod, \hyperlink{class_s_c_i_run_1_1_v_mesh}{V\-Mesh} $\ast$original\-\_\-mesh, \hyperlink{class_s_c_i_run_1_1_v_mesh}{V\-Mesh} $\ast$tri\-\_\-mesh, \hyperlink{class_s_c_i_run_1_1_v_mesh}{V\-Mesh} $\ast$side1\-\_\-mesh, \hyperlink{class_s_c_i_run_1_1_v_mesh}{V\-Mesh} $\ast$side2\-\_\-mesh, bool add\-\_\-to\-\_\-side1, bool add\-\_\-layer)
\item 
bool \hyperlink{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_aa9174c19cfb30947d80f8611ec70ab23}{interferes} (const std\-::vector$<$ \hyperlink{class_s_c_i_run_1_1_core_1_1_geometry_1_1_vector}{Vector} $>$ \&p, const \hyperlink{class_s_c_i_run_1_1_core_1_1_geometry_1_1_vector}{Vector} \&axis, int split)
\begin{DoxyCompactList}\small\item\em Brief projects points on the axis, tests overlap. \end{DoxyCompactList}\item 
bool \hyperlink{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_a7c9a94ae563f1b0337f88de1b733c271}{intersects} (const \hyperlink{class_s_c_i_run_1_1_hex_mesh}{Hex\-Mesh} \&hexmesh, int hex\-\_\-index, const \hyperlink{class_s_c_i_run_1_1_triangle_mesh}{Triangle\-Mesh} \&trimesh, int face\-\_\-index)
\item 
void \hyperlink{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_af0c1ace6ce751057cce250a3c5afd5e6}{compute\-\_\-intersections\-\_\-\-K\-D\-Tree} (Progress\-Reporter $\ast$pr, std\-::vector$<$ int $>$ \&crosses, const \hyperlink{class_s_c_i_run_1_1_triangle_mesh}{Triangle\-Mesh} \&trimesh, const \hyperlink{class_s_c_i_run_1_1_hex_mesh}{Hex\-Mesh} \&hexmesh)
\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static bool \hyperlink{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_adf8e7199650b7c3a1607beb65d6d2656}{pair\-\_\-less} (const std\-::pair$<$ double, unsigned int $>$ \&a, const std\-::pair$<$ double, unsigned int $>$ \&b)
\end{DoxyCompactItemize}


\subsection{Detailed Description}
This module inserts a layer of hexes corresponding to the input \hyperlink{class_s_c_i_run_1_1_tri_surf_mesh}{Tri\-Surf\-Mesh}. 

\subsection{Member Function Documentation}
\hypertarget{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_ac3c1c0abee11d66238061d7d89258122}{\index{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}!compute\-\_\-intersections@{compute\-\_\-intersections}}
\index{compute\-\_\-intersections@{compute\-\_\-intersections}!SCIRun::InsertHexVolSheetAlongSurfaceAlgo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}}
\subsubsection[{compute\-\_\-intersections}]{\setlength{\rightskip}{0pt plus 5cm}void compute\-\_\-intersections (
\begin{DoxyParamCaption}
\item[{Progress\-Reporter $\ast$}]{mod, }
\item[{{\bf V\-Mesh} $\ast$}]{original\-\_\-mesh, }
\item[{{\bf V\-Mesh} $\ast$}]{tri\-\_\-mesh, }
\item[{{\bf V\-Mesh} $\ast$}]{side1\-\_\-mesh, }
\item[{{\bf V\-Mesh} $\ast$}]{side2\-\_\-mesh, }
\item[{bool}]{add\-\_\-to\-\_\-side1, }
\item[{bool}]{add\-\_\-layer}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_ac3c1c0abee11d66238061d7d89258122}
\hypertarget{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_af0c1ace6ce751057cce250a3c5afd5e6}{\index{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}!compute\-\_\-intersections\-\_\-\-K\-D\-Tree@{compute\-\_\-intersections\-\_\-\-K\-D\-Tree}}
\index{compute\-\_\-intersections\-\_\-\-K\-D\-Tree@{compute\-\_\-intersections\-\_\-\-K\-D\-Tree}!SCIRun::InsertHexVolSheetAlongSurfaceAlgo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}}
\subsubsection[{compute\-\_\-intersections\-\_\-\-K\-D\-Tree}]{\setlength{\rightskip}{0pt plus 5cm}void compute\-\_\-intersections\-\_\-\-K\-D\-Tree (
\begin{DoxyParamCaption}
\item[{Progress\-Reporter $\ast$}]{pr, }
\item[{std\-::vector$<$ int $>$ \&}]{crosses, }
\item[{const {\bf Triangle\-Mesh} \&}]{trimesh, }
\item[{const {\bf Hex\-Mesh} \&}]{hexmesh}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_af0c1ace6ce751057cce250a3c5afd5e6}
\hypertarget{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_aa8c4c96649fc0d12f64e64d334e44fe0}{\index{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}!execute@{execute}}
\index{execute@{execute}!SCIRun::InsertHexVolSheetAlongSurfaceAlgo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}}
\subsubsection[{execute}]{\setlength{\rightskip}{0pt plus 5cm}bool execute (
\begin{DoxyParamCaption}
\item[{Progress\-Reporter $\ast$}]{reporter, }
\item[{{\bf Field\-Handle}}]{hexfieldh, }
\item[{{\bf Field\-Handle}}]{trifieldh, }
\item[{{\bf Field\-Handle} \&}]{side1field, }
\item[{{\bf Field\-Handle} \&}]{side2field, }
\item[{bool}]{add\-\_\-to\-\_\-side1, }
\item[{bool}]{add\-\_\-layer}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_aa8c4c96649fc0d12f64e64d334e44fe0}


virtual interface. 

\begin{DoxyRefDesc}{Todo}
\item[\hyperlink{todo__todo000582}{Todo}]\-: Since the algorithm does not copy data \end{DoxyRefDesc}
\hypertarget{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_aa9174c19cfb30947d80f8611ec70ab23}{\index{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}!interferes@{interferes}}
\index{interferes@{interferes}!SCIRun::InsertHexVolSheetAlongSurfaceAlgo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}}
\subsubsection[{interferes}]{\setlength{\rightskip}{0pt plus 5cm}bool interferes (
\begin{DoxyParamCaption}
\item[{const std\-::vector$<$ {\bf Vector} $>$ \&}]{p, }
\item[{const {\bf Vector} \&}]{axis, }
\item[{int}]{split}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_aa9174c19cfb30947d80f8611ec70ab23}


Brief projects points on the axis, tests overlap. 

\hypertarget{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_a7c9a94ae563f1b0337f88de1b733c271}{\index{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}!intersects@{intersects}}
\index{intersects@{intersects}!SCIRun::InsertHexVolSheetAlongSurfaceAlgo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}}
\subsubsection[{intersects}]{\setlength{\rightskip}{0pt plus 5cm}bool intersects (
\begin{DoxyParamCaption}
\item[{const {\bf Hex\-Mesh} \&}]{hexmesh, }
\item[{int}]{hex\-\_\-index, }
\item[{const {\bf Triangle\-Mesh} \&}]{trimesh, }
\item[{int}]{face\-\_\-index}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_a7c9a94ae563f1b0337f88de1b733c271}
\hypertarget{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_a8e26d4542d4d14ea038b747c38da6db6}{\index{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}!load\-\_\-hex\-\_\-mesh@{load\-\_\-hex\-\_\-mesh}}
\index{load\-\_\-hex\-\_\-mesh@{load\-\_\-hex\-\_\-mesh}!SCIRun::InsertHexVolSheetAlongSurfaceAlgo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}}
\subsubsection[{load\-\_\-hex\-\_\-mesh}]{\setlength{\rightskip}{0pt plus 5cm}void load\-\_\-hex\-\_\-mesh (
\begin{DoxyParamCaption}
\item[{{\bf V\-Mesh} $\ast$}]{hexfield}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_a8e26d4542d4d14ea038b747c38da6db6}
\hypertarget{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_a514dfc7792657648d4e62ef3db0fb8ae}{\index{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}!load\-\_\-tri\-\_\-mesh@{load\-\_\-tri\-\_\-mesh}}
\index{load\-\_\-tri\-\_\-mesh@{load\-\_\-tri\-\_\-mesh}!SCIRun::InsertHexVolSheetAlongSurfaceAlgo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}}
\subsubsection[{load\-\_\-tri\-\_\-mesh}]{\setlength{\rightskip}{0pt plus 5cm}void load\-\_\-tri\-\_\-mesh (
\begin{DoxyParamCaption}
\item[{{\bf V\-Mesh} $\ast$}]{trifield}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_a514dfc7792657648d4e62ef3db0fb8ae}
\hypertarget{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_adf8e7199650b7c3a1607beb65d6d2656}{\index{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}!pair\-\_\-less@{pair\-\_\-less}}
\index{pair\-\_\-less@{pair\-\_\-less}!SCIRun::InsertHexVolSheetAlongSurfaceAlgo@{S\-C\-I\-Run\-::\-Insert\-Hex\-Vol\-Sheet\-Along\-Surface\-Algo}}
\subsubsection[{pair\-\_\-less}]{\setlength{\rightskip}{0pt plus 5cm}static bool pair\-\_\-less (
\begin{DoxyParamCaption}
\item[{const std\-::pair$<$ double, unsigned int $>$ \&}]{a, }
\item[{const std\-::pair$<$ double, unsigned int $>$ \&}]{b}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{class_s_c_i_run_1_1_insert_hex_vol_sheet_along_surface_algo_adf8e7199650b7c3a1607beb65d6d2656}


The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
Modules/\-Legacy/\-Fields/\hyperlink{_insert_hex_vol_sheet_along_surface_8cc}{Insert\-Hex\-Vol\-Sheet\-Along\-Surface.\-cc}\end{DoxyCompactItemize}
