Subversion Repositories gelsvn

Rev

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

Rev 220 Rev 222
Line 157... Line 157...
157
						q += Q2;
157
						q += Q2;
158
 
158
 
159
						float err;
159
						float err;
160
						Vec3d opt_pos(0);
160
						Vec3d opt_pos(0);
161
 
161
 
162
						if (q.determinant()>= 1e-15)
162
// 						if (q.determinant()>= 1e-30)
163
						{
163
						{
164
								opt_pos = q.opt_pos(0.001);
164
								opt_pos = q.opt_pos(0.001);
165
								err = q.error(opt_pos);
165
								err = q.error(opt_pos);
166
						}
166
						}
167
						else
167
// 						else
168
						{
168
// 						{
169
								// To see the effectivenes of the scheme, we can create 
169
// 								// To see the effectivenes of the scheme, we can create 
170
								// Random errors for comparison. Uncomment to use:
170
// 								// Random errors for comparison. Uncomment to use:
171
								// 			float e0 = time_stamp + rand()/float(RAND_MAX);//q.error(v0);
171
// 								// 			float e0 = time_stamp + rand()/float(RAND_MAX);//q.error(v0);
172
								// 			float e1 = time_stamp + rand()/float(RAND_MAX);//q.error(v1);
172
// 								// 			float e1 = time_stamp + rand()/float(RAND_MAX);//q.error(v1);
173
 
173
 
174
								Vec3d v0(he->vert->pos);
174
// 								Vec3d v0(he->vert->pos);
175
								Vec3d v1(he->opp->vert->pos);
175
// 								Vec3d v1(he->opp->vert->pos);
176
								float e0 = q.error(v0);
176
// 								float e0 = q.error(v0);
177
								float e1 = q.error(v1);
177
// 								float e1 = q.error(v1);
178
		
178
		
179
								if(e0 < e1)
179
// 								if(e0 < e1)
180
								{
180
// 								{
181
										err = e0;
181
// 										err = e0;
182
										opt_pos = v0;
182
// 										opt_pos = v0;
183
								}
183
// 								}
184
								else
184
// 								else
185
								{
185
// 								{
186
										err = e1;
186
// 										err = e1;
187
										opt_pos = v1;
187
// 										opt_pos = v1;
188
								}
188
// 								}
189
						}			
189
// 						}			
190
 
190
 
191
						// Create SimplifyRec
191
						// Create SimplifyRec
192
						int he_index = he->touched;
192
						int he_index = he->touched;
193
						SimplifyRec simplify_rec;
193
						SimplifyRec simplify_rec;
194
						simplify_rec.opt_pos = opt_pos;
194
						simplify_rec.opt_pos = opt_pos;