Menu

#424 Opening .dae files with Meshlab doesn't work.

v1.0_(example)
open
nobody
None
1
2015-03-05
2015-02-24
paulo
No

I made a cube with some texture with sketchup and I extrated it in .dae file. When I try to load the .dae file with meshLab meshlabe gives an ERROR. Opening Failure.

So I guess meshlab can't open .dae (collada) files?

Discussion

  • Colin Pitrat

    Colin Pitrat - 2015-03-02

    Hello,

    does your file contains polylist tag ?
    I did a few tests with some files found on internet and I managed to import some files not containing polylist. I had cores when opening files that do contain some ...

    When reporting this kind of issue, it would make sense to attach a sample of a file that cannot be opened.

    Here is an example of a file that generates a core.

    Regards,
    Colin

     
  • Colin Pitrat

    Colin Pitrat - 2015-03-05

    Hello,

    Looking at my example, it contains the following:

    <polylist count="12" material="Material1-material">
        <input offset="0" semantic="VERTEX" source="#prim0-vertices" set="0"/>
        <input offset="0" semantic="NORMAL" source="#prim0-normals" set="0"/>
        <input offset="0" semantic="TEXCOORD" source="#prim0-map0" set="0"/>
        <vcount>3 3 3 3 3 3 3 3 3 3 3 3</vcount>
        <p>8 16 15 8 9 16 9 17 16 9 10 17 10 18 17 10 11 18 11 19 18 11 12 19 12 20 19 12 13 20 13 21 20 13 14 21</p>
    </polylist>
    

    The 3 input are references to data sources (prim0-vertices, prim0-normals, prim0-map0) that are defined before in the file and that contains coordinates.
    Apparently, vcglib expects to have #inputvcount#vcount = 3312 = 108 values whereas there are only 3*12 = 36
    The offset 0 for the 3 input means that the info listed in the <p> part is shared by the 3 input. It seems this is what is not supported by vcglib.
    If the 3 input had respectively 0, 1 and 2 as offset and p had 108 values, vcglib would probably work well.

    The issue comes from this line in vcglib:
    int faceAttributeNum = polylist.at(tript).toElement().elementsByTagName("input").size();
    In fact, faceAttributeNum shouldn't be the number of input but the max value of offset.

    Anyway, it seems this issue is not the same you have as I get a core whereas you talk about an "Opening Failure" error message.
    Could you please provide more info on your error ? And attach the file that generates it ?

    Regards,
    Colin

     

Log in to post a comment.