\doxysection{Segment\+\_\+25 Class Reference}
\hypertarget{classSegment__25}{}\label{classSegment__25}\index{Segment\_25@{Segment\_25}}


{\ttfamily \#include $<$Geometry.\+hpp$>$}

\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{classSegment__25_adb26acb5f449f05dfd8565dd75f9f3b9}\label{classSegment__25_adb26acb5f449f05dfd8565dd75f9f3b9} 
{\bfseries Segment\+\_\+25} (const Segment\+\_\+2 \&s, int layer=0)
\item 
\Hypertarget{classSegment__25_a3dfa52ee152e94e8372dd061a06c42b2}\label{classSegment__25_a3dfa52ee152e94e8372dd061a06c42b2} 
{\bfseries Segment\+\_\+25} (const \+::\+Point\+\_\+2 \&p, const \+::\+Point\+\_\+2 \&q, int layer=0)
\item 
\Hypertarget{classSegment__25_a6f4f1bd997eb31579dbb198e66be19c8}\label{classSegment__25_a6f4f1bd997eb31579dbb198e66be19c8} 
const Segment\+\_\+2 \& {\bfseries s2} () const
\item 
\Hypertarget{classSegment__25_a87cca649bdea7fcb7d858c4b78ff5d13}\label{classSegment__25_a87cca649bdea7fcb7d858c4b78ff5d13} 
int {\bfseries z} () const
\item 
\Hypertarget{classSegment__25_a6db3fdf01805fdc6009651444941af1e}\label{classSegment__25_a6db3fdf01805fdc6009651444941af1e} 
void {\bfseries set\+Layer} (int z)
\item 
\Hypertarget{classSegment__25_a57716e46db8d100ab995d90ceff54951}\label{classSegment__25_a57716e46db8d100ab995d90ceff54951} 
\mbox{\hyperlink{classPoint__25}{Point\+\_\+25}} {\bfseries source} () const
\item 
\Hypertarget{classSegment__25_ad1668d6defe1d9155580186ec3dc31aa}\label{classSegment__25_ad1668d6defe1d9155580186ec3dc31aa} 
\mbox{\hyperlink{classPoint__25}{Point\+\_\+25}} {\bfseries target} () const
\item 
\Hypertarget{classSegment__25_ae6c72855f1b44a53a1bc611cdcefd5b8}\label{classSegment__25_ae6c72855f1b44a53a1bc611cdcefd5b8} 
const Point\+\_\+2 \& {\bfseries source\+\_\+2} () const
\item 
\Hypertarget{classSegment__25_ae47a68c672df24e9efa8bf1ba9632142}\label{classSegment__25_ae47a68c672df24e9efa8bf1ba9632142} 
const Point\+\_\+2 \& {\bfseries target\+\_\+2} () const
\item 
\Hypertarget{classSegment__25_a400bd4433c6cc57542619de0f48c23f7}\label{classSegment__25_a400bd4433c6cc57542619de0f48c23f7} 
Real {\bfseries squared\+\_\+length} () const
\item 
\Hypertarget{classSegment__25_ad105cbf868717b9b4962d5f34f67d30f}\label{classSegment__25_ad105cbf868717b9b4962d5f34f67d30f} 
Real {\bfseries length} () const
\item 
\Hypertarget{classSegment__25_a33f5c970708216074af03046ee093d77}\label{classSegment__25_a33f5c970708216074af03046ee093d77} 
bool {\bfseries is\+\_\+horizontal} () const
\item 
\Hypertarget{classSegment__25_a792eb399f79639b816cb7089b2aa9751}\label{classSegment__25_a792eb399f79639b816cb7089b2aa9751} 
bool {\bfseries is\+\_\+vertical} () const
\item 
\+::\+Vector\+\_\+2 \mbox{\hyperlink{classSegment__25_a3d5d761f60090924f226decf6e1f6e96}{get\+Direction}} (Real s=1.\+0) const
\item 
\Hypertarget{classSegment__25_ae32e71f84e7d5583d5e25ca07c5fca26}\label{classSegment__25_ae32e71f84e7d5583d5e25ca07c5fca26} 
\+::\+Vector\+\_\+2 {\bfseries get\+Perpendicular\+CCW} (Real s=1.\+0) const
\item 
\Hypertarget{classSegment__25_a2487c0bd15819a0811e1021c71f59765}\label{classSegment__25_a2487c0bd15819a0811e1021c71f59765} 
int {\bfseries angle45} () const
\item 
\Hypertarget{classSegment__25_aae109bc736192a1640e2644a5e84fed7}\label{classSegment__25_aae109bc736192a1640e2644a5e84fed7} 
Real {\bfseries angle\+Pi2} () const
\item 
\Hypertarget{classSegment__25_a88d48fa10e903c151c82ff0c7298503d}\label{classSegment__25_a88d48fa10e903c151c82ff0c7298503d} 
\mbox{\hyperlink{classSegment__25}{Segment\+\_\+25}} \& {\bfseries rectify} (Real angle\+Tolerance)
\item 
\Hypertarget{classSegment__25_a0fec0adefdc665ceea36b402d7831529}\label{classSegment__25_a0fec0adefdc665ceea36b402d7831529} 
int {\bfseries major\+Axis} () const
\item 
\Hypertarget{classSegment__25_a0054e5f96c2bed5ce4966655c0845b1a}\label{classSegment__25_a0054e5f96c2bed5ce4966655c0845b1a} 
\mbox{\hyperlink{classSegment__25}{Segment\+\_\+25}} {\bfseries opposite} () const
\item 
\Hypertarget{classSegment__25_add2ea6df9b1a2dd0770993a150f2b505}\label{classSegment__25_add2ea6df9b1a2dd0770993a150f2b505} 
bool {\bfseries is\+XOrdered} () const
\item 
\Hypertarget{classSegment__25_a5c8419160fb89875442ef130d4aef483}\label{classSegment__25_a5c8419160fb89875442ef130d4aef483} 
bool {\bfseries is\+YOrdered} () const
\item 
\Hypertarget{classSegment__25_a81003d67763d4b128b9dcb2e25b164b2}\label{classSegment__25_a81003d67763d4b128b9dcb2e25b164b2} 
\mbox{\hyperlink{classSegment__25}{Segment\+\_\+25}} {\bfseries orderedX} () const
\item 
\Hypertarget{classSegment__25_a1acad26c54f405395f88c1bc28f073a5}\label{classSegment__25_a1acad26c54f405395f88c1bc28f073a5} 
\mbox{\hyperlink{classSegment__25}{Segment\+\_\+25}} {\bfseries orderedY} () const
\item 
\Hypertarget{classSegment__25_a3fdea84def5644ae502641d7a7132b09}\label{classSegment__25_a3fdea84def5644ae502641d7a7132b09} 
bool {\bfseries operator$<$} (const \mbox{\hyperlink{classSegment__25}{Segment\+\_\+25}} \&s) const
\item 
\Hypertarget{classSegment__25_a5606e3af2d0118f0536ed457f2cf6bbf}\label{classSegment__25_a5606e3af2d0118f0536ed457f2cf6bbf} 
bool {\bfseries operator==} (const \mbox{\hyperlink{classSegment__25}{Segment\+\_\+25}} \&s) const
\item 
int \mbox{\hyperlink{classSegment__25_a8da8576a8d1661ecf5b31dae10126607}{equals}} (const \mbox{\hyperlink{classSegment__25}{Segment\+\_\+25}} \&s) const
\item 
\Hypertarget{classSegment__25_ad704937cdc73398865ffa91eec462ba1}\label{classSegment__25_ad704937cdc73398865ffa91eec462ba1} 
Real {\bfseries max\+Norm} () const
\item 
\Hypertarget{classSegment__25_aeecf501be06138cb71d08f8fef82d2be}\label{classSegment__25_aeecf501be06138cb71d08f8fef82d2be} 
Real {\bfseries angle\+With} (const \mbox{\hyperlink{classSegment__25}{Segment\+\_\+25}} \&) const
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Segment\+\_\+2 with integer layer coordinate. 

\label{doc-func-members}
\Hypertarget{classSegment__25_doc-func-members}
\doxysubsection{Member Function Documentation}
\Hypertarget{classSegment__25_a8da8576a8d1661ecf5b31dae10126607}\index{Segment\_25@{Segment\_25}!equals@{equals}}
\index{equals@{equals}!Segment\_25@{Segment\_25}}
\doxysubsubsection{\texorpdfstring{equals()}{equals()}}
{\footnotesize\ttfamily \label{classSegment__25_a8da8576a8d1661ecf5b31dae10126607} 
int Segment\+\_\+25\+::equals (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classSegment__25}{Segment\+\_\+25}} \&}]{s}{}\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}

\begin{DoxyReturn}{Returns}
1 if the segments are equal, -\/1 if they have swapped source/target, 0 otherwise. 
\end{DoxyReturn}
\Hypertarget{classSegment__25_a3d5d761f60090924f226decf6e1f6e96}\index{Segment\_25@{Segment\_25}!getDirection@{getDirection}}
\index{getDirection@{getDirection}!Segment\_25@{Segment\_25}}
\doxysubsubsection{\texorpdfstring{getDirection()}{getDirection()}}
{\footnotesize\ttfamily \label{classSegment__25_a3d5d761f60090924f226decf6e1f6e96} 
Vector\+\_\+2 Segment\+\_\+25\+::get\+Direction (\begin{DoxyParamCaption}\item[{Real}]{s}{ = {\ttfamily 1.0}}\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}

\begin{DoxyReturn}{Returns}
A Vector\+\_\+2 in the direction of this segment with length s. 
\end{DoxyReturn}


The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
/home/chr/devel/\+Ph\+D/\+Environment/pub/\+PCBEnv/pcbenv/cxx/Geometry.\+hpp\end{DoxyCompactItemize}
