Lines Matching refs:segment

43 bool SkOpPtT::contains(const SkOpSegment* segment, const SkPoint& pt) const {
44 SkASSERT(this->segment() != segment);
48 if (ptT->fPt == pt && ptT->segment() == segment) {
55 bool SkOpPtT::contains(const SkOpSegment* segment, double t) const {
59 if (ptT->fT == t && ptT->segment() == segment) {
67 SkASSERT(this->segment() != check);
71 if (ptT->segment() == check && !ptT->deleted()) {
79 return segment()->contour();
82 const SkOpPtT* SkOpPtT::find(const SkOpSegment* segment) const {
86 if (ptT->segment() == segment && !ptT->deleted()) {
115 const SkOpSegment* segment = this->segment();
116 return span == segment->head() || span == segment->tail();
139 const SkOpSegment* SkOpPtT::segment() const {
140 return span()->segment();
143 SkOpSegment* SkOpPtT::segment() {
144 return span()->segment();
168 const SkOpSegment* segment = this->segment();
170 if (walk->segment() != segment) {
195 const SkOpPtT* SkOpSpanBase::contains(const SkOpSegment* segment) const {
202 if (walk->segment() == segment && walk->span()->ptT() == walk) {
209 bool SkOpSpanBase::containsCoinEnd(const SkOpSegment* segment) const {
210 SkASSERT(this->segment() != segment);
213 if (next->segment() == segment) {
221 return segment()->contour();
228 void SkOpSpanBase::initBase(SkOpSegment* segment, SkOpSpan* prev, double t, const SkPoint& pt) {
229 fSegment = segment;
299 // Look to see if pt-t linked list contains same segment more than once
300 // if so, and if each pt-t is directly pointed to by spans in that segment,
302 // keep the points, but remove spans so that the segment doesn't have 2 or more
315 SkOpSegment* segment = test->segment();
316 if (segment->done()) {
322 if (inner->segment() != segment) {
339 segment->markAllDone(); // mark segment as collapsed
346 #ifdef SK_DEBUG // assert if another undeleted entry points to segment
349 if (debugInner->segment() != segment) {
374 bool SkOpSpan::containsCoincidence(const SkOpSegment* segment) const {
375 SkASSERT(this->segment() != segment);
378 if (next->segment() == segment) {
385 void SkOpSpan::init(SkOpSegment* segment, SkOpSpan* prev, double t, const SkPoint& pt) {
387 initBase(segment, prev, t, pt);
395 segment->bumpCount();
400 bool SkOpSpan::insertCoincidence(const SkOpSegment* segment, bool flipped, bool ordered) {
401 if (this->containsCoincidence(segment)) {
406 if (next->segment() == segment) {
410 const SkOpPtT* spanEndPtT = fNext->contains(segment);
428 SkASSERT(0); // FIXME? if we get here, the span is missing its opposite segment...
443 this->segment()->release(this);