\hypertarget{a08928}{}\section{Open\+Mesh\+:\+:Decimater\+:\+:Collapse\+InfoT$<$ Mesh $>$ Struct Template Reference}
\label{a08928}\index{Open\+Mesh\+::\+Decimater\+::\+Collapse\+Info\+T$<$ Mesh $>$@{Open\+Mesh\+::\+Decimater\+::\+Collapse\+Info\+T$<$ Mesh $>$}}


{\ttfamily \#include $<$Open\+Flipper/libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Tools/\+Decimater/\+Collapse\+Info\+T.\+hh$>$}

\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{a08928_a3119dd3ab3c513c0f853448c86ec8cf5}{Collapse\+InfoT} (\hyperlink{a08764}{Mesh} \&\+\_\+mesh, typename Mesh\+::\+Halfedge\+Handle \+\_\+heh)
\end{DoxyCompactItemize}
\subsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a08928_acd82af5cffe211ec9723f459eb7d6252}\label{a08928_acd82af5cffe211ec9723f459eb7d6252}} 
\hyperlink{a08764}{Mesh} \& {\bfseries mesh}
\item 
\mbox{\Hypertarget{a08928_a5167e49665056a7a8b6bcc6b6915c09e}\label{a08928_a5167e49665056a7a8b6bcc6b6915c09e}} 
Mesh\+::\+Halfedge\+Handle \hyperlink{a08928_a5167e49665056a7a8b6bcc6b6915c09e}{v0v1}
\begin{DoxyCompactList}\small\item\em Halfedge to be collapsed. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a08928_a53dc5ea9882b3097b8281142c0bdb225}\label{a08928_a53dc5ea9882b3097b8281142c0bdb225}} 
Mesh\+::\+Halfedge\+Handle \hyperlink{a08928_a53dc5ea9882b3097b8281142c0bdb225}{v1v0}
\begin{DoxyCompactList}\small\item\em Reverse halfedge. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a08928_abacd9a21d5a78d80dc1faf617caf39e9}\label{a08928_abacd9a21d5a78d80dc1faf617caf39e9}} 
\hyperlink{a08776_a0fc18e13d70825938274e3faf7b55e01}{Mesh\+::\+Vertex\+Handle} \hyperlink{a08928_abacd9a21d5a78d80dc1faf617caf39e9}{v0}
\begin{DoxyCompactList}\small\item\em Vertex to be removed. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a08928_a7e472c32525398eeb34cad7c52aa3651}\label{a08928_a7e472c32525398eeb34cad7c52aa3651}} 
\hyperlink{a08776_a0fc18e13d70825938274e3faf7b55e01}{Mesh\+::\+Vertex\+Handle} \hyperlink{a08928_a7e472c32525398eeb34cad7c52aa3651}{v1}
\begin{DoxyCompactList}\small\item\em Remaining vertex. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a08928_a4d6e1b8c56453e3de48ed178d067c876}\label{a08928_a4d6e1b8c56453e3de48ed178d067c876}} 
\hyperlink{a08776_aed10fb4dfb536b53a5e20c8f2442eadf}{Mesh\+::\+Point} \hyperlink{a08928_a4d6e1b8c56453e3de48ed178d067c876}{p0}
\begin{DoxyCompactList}\small\item\em Position of removed vertex. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a08928_a91226116d563790a8d04b09a9ef2d965}\label{a08928_a91226116d563790a8d04b09a9ef2d965}} 
\hyperlink{a08776_aed10fb4dfb536b53a5e20c8f2442eadf}{Mesh\+::\+Point} \hyperlink{a08928_a91226116d563790a8d04b09a9ef2d965}{p1}
\begin{DoxyCompactList}\small\item\em Positions of remaining vertex. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a08928_abe823726812c34c63eccc8316f5b1de5}\label{a08928_abe823726812c34c63eccc8316f5b1de5}} 
Mesh\+::\+Face\+Handle \hyperlink{a08928_abe823726812c34c63eccc8316f5b1de5}{fl}
\begin{DoxyCompactList}\small\item\em Left face. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a08928_a2962fea162ba214fe7394d60ddb322d7}\label{a08928_a2962fea162ba214fe7394d60ddb322d7}} 
Mesh\+::\+Face\+Handle \hyperlink{a08928_a2962fea162ba214fe7394d60ddb322d7}{fr}
\begin{DoxyCompactList}\small\item\em Right face. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a08928_a4d6ceec9090fb5a282e3a2f842962597}\label{a08928_a4d6ceec9090fb5a282e3a2f842962597}} 
\hyperlink{a08776_a0fc18e13d70825938274e3faf7b55e01}{Mesh\+::\+Vertex\+Handle} \hyperlink{a08928_a4d6ceec9090fb5a282e3a2f842962597}{vl}
\begin{DoxyCompactList}\small\item\em Left vertex. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a08928_ad65dfec5ec35931c6aaac3587b0fd55e}\label{a08928_ad65dfec5ec35931c6aaac3587b0fd55e}} 
\hyperlink{a08776_a0fc18e13d70825938274e3faf7b55e01}{Mesh\+::\+Vertex\+Handle} \hyperlink{a08928_ad65dfec5ec35931c6aaac3587b0fd55e}{vr}
\begin{DoxyCompactList}\small\item\em Right vertex. \end{DoxyCompactList}\end{DoxyCompactItemize}
\textbf{ }\par
\begin{DoxyCompactItemize}
\item 
Mesh\+::\+Halfedge\+Handle \hyperlink{a08928_a0d3ab34ba78e36e61066d0b26bdb3e4e}{vlv1}
\item 
Mesh\+::\+Halfedge\+Handle \hyperlink{a08928_a4df2f92321dbd926da6c830a22346d6c}{v0vl}
\item 
Mesh\+::\+Halfedge\+Handle \hyperlink{a08928_a14f222f628f5256dd26dbe495a6452d2}{vrv0}
\item 
Mesh\+::\+Halfedge\+Handle \hyperlink{a08928_a67375650879904935d62e544285aa0f9}{v1vr}
\end{DoxyCompactItemize}



\subsection{Detailed Description}
\subsubsection*{template$<$class Mesh$>$\newline
struct Open\+Mesh\+::\+Decimater\+::\+Collapse\+Info\+T$<$ Mesh $>$}

Stores information about a halfedge collapse.

The class stores information about a halfedge collapse. The most important information is {\ttfamily v0v1}, {\ttfamily v1v0}, {\ttfamily v0}, {\ttfamily v1}, {\ttfamily vl}, {\ttfamily vr}, which you can lookup in the following image\+:  \begin{DoxySeeAlso}{See also}
\hyperlink{a08984}{Mod\+Prog\+Mesh\+T\+::\+Info} 
\end{DoxySeeAlso}


Definition at line 74 of file Collapse\+Info\+T.\+hh.



\subsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{a08928_a3119dd3ab3c513c0f853448c86ec8cf5}\label{a08928_a3119dd3ab3c513c0f853448c86ec8cf5}} 
\index{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT@{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}!Collapse\+InfoT@{Collapse\+InfoT}}
\index{Collapse\+InfoT@{Collapse\+InfoT}!Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT@{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}}
\subsubsection{\texorpdfstring{Collapse\+Info\+T()}{CollapseInfoT()}}
{\footnotesize\ttfamily template$<$class Mesh $>$ \\
\hyperlink{a08928}{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}$<$ \hyperlink{a08764}{Mesh} $>$\+::\hyperlink{a08928}{Collapse\+InfoT} (\begin{DoxyParamCaption}\item[{\hyperlink{a08764}{Mesh} \&}]{\+\_\+mesh,  }\item[{typename Mesh\+::\+Halfedge\+Handle}]{\+\_\+heh }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

Initializing constructor.

Given a mesh and a halfedge handle of the halfedge to be collapsed all important information of a halfedge collapse will be stored. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+mesh} & Mesh source \\
\hline
{\em \+\_\+heh} & Halfedge to collapse. The direction of the halfedge defines the direction of the collapse, i.\+e. the from-\/vertex will be removed and the to-\/vertex remains.\\
\hline
\end{DoxyParams}
Local configuration of halfedge collapse to be stored in \hyperlink{a08928}{Collapse\+InfoT}\+: \begin{DoxyVerb}vl
 *
/ \
\end{DoxyVerb}
 / \textbackslash{} / fl \textbackslash{} v0 {\itshape -\/-\/-\/---$>$} v1 \textbackslash{} fr / \textbackslash{} / \textbackslash{} /
\begin{DoxyItemize}
\item vr
\end{DoxyItemize}


\begin{DoxyParams}{Parameters}
{\em \+\_\+mesh} & Reference to mesh \\
\hline
{\em \+\_\+heh} & The halfedge (v0 -\/$>$ v1) defining the collapse \\
\hline
\end{DoxyParams}


Definition at line 129 of file Collapse\+Info\+T.\+hh.



\subsection{Member Data Documentation}
\mbox{\Hypertarget{a08928_a4df2f92321dbd926da6c830a22346d6c}\label{a08928_a4df2f92321dbd926da6c830a22346d6c}} 
\index{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT@{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}!v0vl@{v0vl}}
\index{v0vl@{v0vl}!Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT@{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}}
\subsubsection{\texorpdfstring{v0vl}{v0vl}}
{\footnotesize\ttfamily template$<$class Mesh $>$ \\
Mesh\+::\+Halfedge\+Handle \hyperlink{a08928}{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}$<$ \hyperlink{a08764}{Mesh} $>$\+::v0vl}

Outer remaining halfedge of diamond spanned by {\ttfamily v0}, {\ttfamily v1}, {\ttfamily vl}, and {\ttfamily vr} 

Definition at line 103 of file Collapse\+Info\+T.\+hh.

\mbox{\Hypertarget{a08928_a67375650879904935d62e544285aa0f9}\label{a08928_a67375650879904935d62e544285aa0f9}} 
\index{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT@{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}!v1vr@{v1vr}}
\index{v1vr@{v1vr}!Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT@{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}}
\subsubsection{\texorpdfstring{v1vr}{v1vr}}
{\footnotesize\ttfamily template$<$class Mesh $>$ \\
Mesh\+::\+Halfedge\+Handle \hyperlink{a08928}{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}$<$ \hyperlink{a08764}{Mesh} $>$\+::v1vr}

Outer remaining halfedge of diamond spanned by {\ttfamily v0}, {\ttfamily v1}, {\ttfamily vl}, and {\ttfamily vr} 

Definition at line 103 of file Collapse\+Info\+T.\+hh.

\mbox{\Hypertarget{a08928_a0d3ab34ba78e36e61066d0b26bdb3e4e}\label{a08928_a0d3ab34ba78e36e61066d0b26bdb3e4e}} 
\index{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT@{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}!vlv1@{vlv1}}
\index{vlv1@{vlv1}!Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT@{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}}
\subsubsection{\texorpdfstring{vlv1}{vlv1}}
{\footnotesize\ttfamily template$<$class Mesh $>$ \\
Mesh\+::\+Halfedge\+Handle \hyperlink{a08928}{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}$<$ \hyperlink{a08764}{Mesh} $>$\+::vlv1}

Outer remaining halfedge of diamond spanned by {\ttfamily v0}, {\ttfamily v1}, {\ttfamily vl}, and {\ttfamily vr} 

Definition at line 103 of file Collapse\+Info\+T.\+hh.

\mbox{\Hypertarget{a08928_a14f222f628f5256dd26dbe495a6452d2}\label{a08928_a14f222f628f5256dd26dbe495a6452d2}} 
\index{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT@{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}!vrv0@{vrv0}}
\index{vrv0@{vrv0}!Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT@{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}}
\subsubsection{\texorpdfstring{vrv0}{vrv0}}
{\footnotesize\ttfamily template$<$class Mesh $>$ \\
Mesh\+::\+Halfedge\+Handle \hyperlink{a08928}{Open\+Mesh\+::\+Decimater\+::\+Collapse\+InfoT}$<$ \hyperlink{a08764}{Mesh} $>$\+::vrv0}

Outer remaining halfedge of diamond spanned by {\ttfamily v0}, {\ttfamily v1}, {\ttfamily vl}, and {\ttfamily vr} 

Definition at line 103 of file Collapse\+Info\+T.\+hh.



The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
Open\+Flipper/libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Tools/\+Decimater/\hyperlink{a02180}{Collapse\+Info\+T.\+hh}\end{DoxyCompactItemize}
