GeometryCollective / boundary-first-flattening

MIT License
768 stars 96 forks source link

Color correspondence problem? #68

Closed chenjianyi closed 3 years ago

chenjianyi commented 3 years ago

Thanks for your pleasant work! I have some trouble on color correspondence. The format of input mesh is as follow, mesh with color: v x1 y1 z1 r1 g1 b1 v x2 y2 z2 r2 g2 b2 ... f f1 f2 f3 ...

Then, the format of output mesh is as follow, mesh without color: v x1 y1 z1 v x2 y2 z2 ... vt vtx1 vty1 ... f f1/vtf1 f2/vtf1 f3/vtf3 ...

The plane mesh (parameterized mesh) can construct using coordinate in vt flag, but how could I get corresponding color? Could I just copy the color in v flag of input mesh for every line correspondence (as number_line_of_v == number_line_of_vt)? I found some mis-correspondence by this way.

Thank you! Hope for your answer.

chenjianyi commented 3 years ago

image image The first picture is input mesh, and second picture is parameterized mesh using vt coordinate. I could find unpleasant color discontinuous in parameterized mesh, and it's more serious when using your parameterization method with cones.

chenjianyi commented 3 years ago

I have solved the problem. vt and v are not for every line correspondence. In some way, number_line_of_v is not equal to number_line_of_vt. The right way is: f a1/b1 a2/b2 a3/b3 The b1 line of vt should corresponding to a1 line of v, so it should get color value from a1 line of v. So do b2, b3 and others. Thanks for your work!