void PixelsMovement::cutMask() { { ContextWriter writer(m_reader, 1000); if (writer.cel()) { m_transaction.execute(new cmd::ClearMask(writer.cel())); ASSERT(writer.cel()); if (writer.cel()) m_transaction.execute(new cmd::TrimCel(writer.cel())); } } copyMask(); }
void SingleSampler::DoSamples( ShadeOutput* pOut, SamplingCallback* cb, ShadeContext* sc, MASK pMask ) { n = 0; if ( pMask ) copyMask( mask, pMask ); else setMask( mask, ALL_ONES ); float sampleScale; Point2 sample; NextSample( &sample, &sampleScale ); // c.r = c.g = c.b = t.r = t.g = t.b = 0; pOut->Reset(); if ( sampleInMask( sample, mask, sc->globContext->fieldRender ) ) cb->SampleAtOffset( pOut, sample, sampleScale ); else cb->SampleAtOffset( pOut, sample, sampleScale ); }