namespace basegfx
{ namespace
{ /** Generic implementation of the difference set computation
@tplRangeType Typetooperateon.MustprovideValueTypeandTraitsType nestedtypes.
*/ template< class RangeType > void doComputeSetDifference(
std::vector< RangeType >& o_rRanges, const RangeType& a, const RangeType& b )
{
o_rRanges.clear();
// special-casing the empty rect case (this will fail most // of the times below, because of the DBL_MIN/MAX special // values denoting emptiness in the rectangle. if( a.isEmpty() )
{
o_rRanges.push_back( b ); return;
} if( b.isEmpty() )
{
o_rRanges.push_back( a ); return;
}
// TODO(E2): Use numeric_cast instead of static_cast here, // need range checks! if (h0 > 0)
o_rRanges.push_back(
RangeType(ax,ay, static_cast<typename RangeType::ValueType>(ax+aw), static_cast<typename RangeType::ValueType>(ay+h0)) );
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.