![]() |
【转帖】breprenderer tesselation and edge visibility
breprenderer tesselation and edge visibility
breprenderer tesselation and edge visibility hello, we are using odbreprendererimpl::draw to tesselate 3dsolids and other brep geometry to shells (works really well ). i wanted to update our code to properly handle edge visibility and hoped that i would perhaps get a quad dominant mesh when hiding the invisible edges. but probably i interpret the data incorrectly because the visibility flags i read seem to be just random... for the following mesh code: 3*--------*2 | | 0*--------*1with a facelist of {4,0,1,2,3} i would expect the visibility flag of edge (1,2) at pedgedata->visibility()[2]. and i would expect that for a connected mesh, each edge visibility is written twice (once within each neighboring face of the edge). is this correct or not? thanks alot in advance and best regards daniel an edge is determined by walking around the face in the order listed in the face list. for example, if the face list contained 3, 0, 1, 2, this would define a face having 3 vertices: vertex 0, vertex 1, and vertex 2., and which has edges from vertex 0 to 1, vertex 1 to 2, and vertex 2 to 0. so i think that flag of edge (1,2) is at pedgedata->visibility()[1] in your sample. now it works as expected! thanks you for the instant help! |
所有的时间均为北京时间。 现在的时间是 04:40 AM. |