Subversion Repositories gelsvn

Rev

Rev 150 | Rev 182 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 150 Rev 155
Line 156... Line 156...
156
					HalfEdgeIter he = halfedge_vec[he_index].he;
156
					HalfEdgeIter he = halfedge_vec[he_index].he;
157
					VertexIter v = he->opp->vert;
157
					VertexIter v = he->opp->vert;
158
					VertexIter n = he->vert;
158
					VertexIter n = he->vert;
159
 
159
 
160
					// If the edge is, in fact, collapsible
160
					// If the edge is, in fact, collapsible
161
					if(m.collapse_precond(v,he))
161
					if(m.collapse_precond(he))
162
						{
162
						{
163
							//cout << simplify_rec.err << " " << &(*he->vert) << endl;
163
							//cout << simplify_rec.err << " " << &(*he->vert) << endl;
164
							// Get QEM for both end points
164
							// Get QEM for both end points
165
							const QEM& Q1 = qem_vec[he->vert->touched];
165
							const QEM& Q1 = qem_vec[he->vert->touched];
166
							const QEM& Q2 = qem_vec[he->opp->vert->touched];
166
							const QEM& Q2 = qem_vec[he->opp->vert->touched];
Line 183... Line 183...
183
									halfedge_vec[he->opp->next->touched].halfedge_removed();
183
									halfedge_vec[he->opp->next->touched].halfedge_removed();
184
									halfedge_vec[he->opp->next->next->touched].halfedge_removed();
184
									halfedge_vec[he->opp->next->next->touched].halfedge_removed();
185
								}
185
								}
186
 
186
 
187
							// Do collapse
187
							// Do collapse
188
							m.collapse_halfedge(v,he,false);
188
							m.collapse_halfedge(he,false);
189
							n->pos = simplify_rec.opt_pos;
189
							n->pos = simplify_rec.opt_pos;
190
							qem_vec[n->touched] = q;
190
							qem_vec[n->touched] = q;
191
						
191
						
192
							put_onering_in_queue(n);
192
							put_onering_in_queue(n);
193
							return 1;
193
							return 1;