\HeaderA{glpolygon-methods}{Drawing filter regions}{glpolygon.Rdash.methods}
\aliasA{glpolygon}{glpolygon-methods}{glpolygon}
\aliasA{glpolygon,complementFilter,ANY-method}{glpolygon-methods}{glpolygon,complementFilter,ANY.Rdash.method}
\aliasA{glpolygon,curv1Filter,ANY-method}{glpolygon-methods}{glpolygon,curv1Filter,ANY.Rdash.method}
\aliasA{glpolygon,curv1Filter,flowFrame-method}{glpolygon-methods}{glpolygon,curv1Filter,flowFrame.Rdash.method}
\aliasA{glpolygon,curv1Filter,missing-method}{glpolygon-methods}{glpolygon,curv1Filter,missing.Rdash.method}
\aliasA{glpolygon,curv1Filter,multipleFilterResult-method}{glpolygon-methods}{glpolygon,curv1Filter,multipleFilterResult.Rdash.method}
\aliasA{glpolygon,curv2Filter,ANY-method}{glpolygon-methods}{glpolygon,curv2Filter,ANY.Rdash.method}
\aliasA{glpolygon,curv2Filter,flowFrame-method}{glpolygon-methods}{glpolygon,curv2Filter,flowFrame.Rdash.method}
\aliasA{glpolygon,curv2Filter,multipleFilterResult-method}{glpolygon-methods}{glpolygon,curv2Filter,multipleFilterResult.Rdash.method}
\aliasA{glpolygon,ellipsoidGate,character-method}{glpolygon-methods}{glpolygon,ellipsoidGate,character.Rdash.method}
\aliasA{glpolygon,ellipsoidGate,filterResult-method}{glpolygon-methods}{glpolygon,ellipsoidGate,filterResult.Rdash.method}
\aliasA{glpolygon,ellipsoidGate,flowFrame-method}{glpolygon-methods}{glpolygon,ellipsoidGate,flowFrame.Rdash.method}
\aliasA{glpolygon,filter,missing-method}{glpolygon-methods}{glpolygon,filter,missing.Rdash.method}
\aliasA{glpolygon,filterResult,ANY-method}{glpolygon-methods}{glpolygon,filterResult,ANY.Rdash.method}
\aliasA{glpolygon,filterResult,flowFrame-method}{glpolygon-methods}{glpolygon,filterResult,flowFrame.Rdash.method}
\aliasA{glpolygon,filterResult,missing-method}{glpolygon-methods}{glpolygon,filterResult,missing.Rdash.method}
\aliasA{glpolygon,kmeansFilter,ANY-method}{glpolygon-methods}{glpolygon,kmeansFilter,ANY.Rdash.method}
\aliasA{glpolygon,norm2Filter,ANY-method}{glpolygon-methods}{glpolygon,norm2Filter,ANY.Rdash.method}
\aliasA{glpolygon,norm2Filter,flowFrame-method}{glpolygon-methods}{glpolygon,norm2Filter,flowFrame.Rdash.method}
\aliasA{glpolygon,norm2Filter,logicalFilterResult-method}{glpolygon-methods}{glpolygon,norm2Filter,logicalFilterResult.Rdash.method}
\aliasA{glpolygon,polygonGate,character-method}{glpolygon-methods}{glpolygon,polygonGate,character.Rdash.method}
\aliasA{glpolygon,polygonGate,filterResult-method}{glpolygon-methods}{glpolygon,polygonGate,filterResult.Rdash.method}
\aliasA{glpolygon,polygonGate,flowFrame-method}{glpolygon-methods}{glpolygon,polygonGate,flowFrame.Rdash.method}
\aliasA{glpolygon,quadGate,character-method}{glpolygon-methods}{glpolygon,quadGate,character.Rdash.method}
\aliasA{glpolygon,quadGate,filterResult-method}{glpolygon-methods}{glpolygon,quadGate,filterResult.Rdash.method}
\aliasA{glpolygon,quadGate,flowFrame-method}{glpolygon-methods}{glpolygon,quadGate,flowFrame.Rdash.method}
\aliasA{glpolygon,rectangleGate,character-method}{glpolygon-methods}{glpolygon,rectangleGate,character.Rdash.method}
\aliasA{glpolygon,rectangleGate,filterResult-method}{glpolygon-methods}{glpolygon,rectangleGate,filterResult.Rdash.method}
\aliasA{glpolygon,rectangleGate,flowFrame-method}{glpolygon-methods}{glpolygon,rectangleGate,flowFrame.Rdash.method}
\aliasA{glpolygon,subsetFilter,ANY-method}{glpolygon-methods}{glpolygon,subsetFilter,ANY.Rdash.method}
\keyword{methods}{glpolygon-methods}
\begin{Description}\relax
These methods extend the lattice \code{\LinkA{lpolygon}{lpolygon}}
methods for drawing of \code{\LinkA{filter}{filter}}
regions. They allow for multiple dispatch, since not all
\code{\LinkA{filter}{filter}} types need to be evaluated for
plotting, but this decision should be made internally.
\end{Description}
\begin{Details}\relax
When plotting \code{\LinkA{flowFrame}{flowFrame}}s
using the any of 
the lattice-type \code{plot} method provided by \code{flowViz}, the
plotted parameters are recorded, which makes it possible to correctly
overlay the outlines of \code{\LinkA{filter}{filter}}s
assuming that 
they are defined for the repective parameters. Warnings and error will
be cast for the cases where the parameters are non-distinct or
ambigious. These methods are meant to be used within lattice panel
functions and are probably not of much use outside of those.
\end{Details}
\begin{Value}
The methods will return the outlines of the gate region as
polygon vertices.
\end{Value}
\begin{Section}{Methods}
\describe{

\item[x = "filter", data = "missing"] General method for all
objects inheriting from \code{\LinkA{filter}{filter}}. This
is used as the default when no more explicit method is found. It
tries to find the plotted parameters from the internal
\code{flowViz.state} environment. This only works if the flow data
has been plotted using the \code{plot} methods provided by this
\code{flowViz} package. 

\item[x = "filterResult", data = "missing"] General method for all
\code{\LinkA{filterResult}{filterResult}} object. This basically
extracts the \code{\LinkA{filter}{filter}} from the
\code{\LinkA{filterResult}{filterResult}} and dispatches on
that. 

\item[x = "filterResult", data = "flowFrame"] For some
\code{\LinkA{filter}{filter}} types we need the raw data
to re-evaluate the filter. 

\item[x = "curv1Filter", data = "ANY"] We either need a
\code{\LinkA{filterResult}{filterResult}} or the raw data as a
\code{\LinkA{flowFrame}{flowFrame}} for
\code{\LinkA{curv1Filter}{curv1Filter}}s. 

\item[x = "curv1Filter", data = "flowFrame"] see above 

\item[x = "curv1Filter", data = "missing"] see above 

\item[x = "curv1Filter", data = "multipleFilterResult"] see above 

\item[x = "curv2Filter", data = "ANY"] We either need a
\code{\LinkA{filterResult}{filterResult}} or the raw data as a
\code{\LinkA{flowFrame}{flowFrame}} for
\code{\LinkA{curv2Filter}{curv2Filter}}s.

\item[x = "curv2Filter", data = "flowFrame"] see above 

\item[x = "curv2Filter", data = "multipleFilterResult"] see above 

\item[x = "kmeansFilter", data = "ANY"] We don't know how to plot
regions of a \code{\LinkA{kmeansFilter}{kmeansFilter}}, hence we
warn. 

\item[x = "norm2Filter", data = "ANY"] We either need a
\code{\LinkA{filterResult}{filterResult}} or the raw data as a
\code{\LinkA{flowFrame}{flowFrame}} for
\code{\LinkA{norm2Filter}{norm2Filter}}s.

\item[x = "norm2Filter", data = "flowFrame"] see above 

\item[x = "norm2Filter", data = "logicalFilterResult"] see above 

\item[x = "polygonGate", data = "character"] We can plot a
\code{\LinkA{polygonGate}{polygonGate}} directly from the gate
definition. 

\item[x = "polygonGate", data = "filterResult"] see above 

\item[x = "polygonGate", data = "flowFrame"] see above 

\item[x = "quadGate", data = "character"] We can plot a
\code{\LinkA{quadGate}{quadGate}} directly from the gate
definition. 

\item[x = "quadGate", data = "filterResult"] see above 

\item[x = "quadGate", data = "flowFrame"] see above 

\item[x = "rectangleGate", data = "character"] We can plot a
\code{\LinkA{rectangleGate}{rectangleGate}} directly from the gate
definition. 

\item[x = "rectangleGate", data = "filterResult"] see above 

\item[x = "rectangleGate", data = "flowFrame"] see above 

\item[x = "ellipsoidGate", data = "character"] We can plot a
\code{\LinkA{rectangleGate}{rectangleGate}} directly from the gate
definition. 

\item[x = "ellipsoidGate", data = "filterResult"] see above 

\item[x = "ellipsoidGate", data = "flowFrame"] see above 

}
\end{Section}
\begin{Author}\relax
F. Hahne
\end{Author}
\begin{SeeAlso}\relax
\code{\LinkA{filter}{filter}},
\code{\LinkA{flowFrame}{flowFrame}}, \code{\LinkA{glpoints}{glpoints}}
\end{SeeAlso}

