Solved

IFC to COLLAD. How can I specify the feature index as a constraint on the reader?

  • 19 October 2018
  • 1 reply
  • 24 views

Badge

I have made a workspace from IFC to COLLADA. However my writer doesn't write a working .dae file when I try opening it i get this message:

An error occurred while constructing the geometry with id 'g_1'
A <triangles> element with a 'count' of '129' contains an incorrect number of indices i it's <p> element
A fatal error has occurred. Check the logfile above for details
Failed to specify the feature index as constraints on the reader

How can I specify the feature index as a constraint on the reader? and what does it mean?

The <triangles> element with a 'count' of '129' contains 388 indices in it's <p> element, I think it should be 129*3  = 387 indices. If I understand the COLLADA specifications correctly Count specifies the number of indices and p are the indices. But reading COLLADAS specefications are unforunatly breaking my brain. 

The specified geometry looks like this:

<geometry id="g_1">
      <mesh>
        <source id="src_3" name="position">
          <float_array id="arr_1" count="198">12.379913955959008 -9.05464010253375 32829.9872193524 12.347230843252584 -9.218941046634487 32829.9872193524 12.182929277728674 -9.251621037322069 32829.9872193524 -12.380075342756067 -7.928370423883756 32829.9872193524 -12.183090663230168 -7.731389488257408 32829.9872193524 -12.380079647654854 -8.381387616970896 32829.9872193524 -9.67007346946219 -7.731413369428216 32829.9872193524 -12.347392229915142 -7.764069478129991 32829.9872193524 -12.380136665151742 -14.381387616196514 32829.9872193524 1.5742714997708924 14.892769142980583 32829.9872193524 1.252765659046104 15.021478324464992 32829.9872193524 1.443290419957171 15.031491548105983 32829.9872193524 -8.904705158716588 -7.579179708189259 32829.9872193524 -7.82230267198171 -6.496797794031872 32829.9872193524 -7.6700544634861965 -5.73143237459321 32829.9872193524 -0.03330950846101708 -9.837291386690186 32829.9872193524 -0.4668611756355056 -10.486133961471833 32829.9872193524 12.379967659366683 -3.4033967862067507 32829.9872193524 -7.66988270895535 12.34235694172125 32829.9872193524 -7.628776747005392 12.528849070145165 32829.9872193524 -7.459929283285457 12.61806537054556 32829.9872193524 1.380909621128553 -9.251518386576105 32829.9872193524 12.240275471835933 -2.8986945081292523 32829.9872193524 0.6155413104296038 -9.403752048905368 32829.9872193524 -0.61910938401485 -11.251499380968458 32829.9872193524 -8.255854340674972 -7.145640371365003 32829.9872193524 -0.6191434336805777 -14.834516572651017 32829.9872193524 -0.8161281121484668 -15.031497507963266 32829.9872193524 -1.2691453056621618 -15.031493204619949 32829.9872193524 -0.6518265469146229 -14.99881751769799 32829.9872193524 -12.183160034937504 -15.031389488260201 32829.9872193524 -12.380140970056402 -14.834404808799835 32829.9872193524 -12.347460980218075 -14.998706375336958 32829.9872193524 -12.347460980218075 -14.998706375336958 34105.29035331253 -12.380140970056402 -14.834404808799835 34105.29035331253 -12.183160034937504 -15.031389488260201 34105.29035331253 -1.2691453056621618 -15.031493204619949 34105.29035331253 -0.8161281121484668 -15.031497507963266 34105.29035331253 -0.6518265469146229 -14.99881751769799 34105.29035331253 -0.6191434336805777 -14.834516572651017 34105.29035331253 -0.61910938401485 -11.251499380968458 34105.29035331253 -0.4668611756355056 -10.486133961471833 34105.29035331253 -0.03330950846101708 -9.837291386690186 34105.29035331253 0.6155413104296038 -9.403752048905368 34105.29035331253 1.380909621128553 -9.251518386576105 34105.29035331253 12.182929277728674 -9.251621037322069 34105.29035331253 12.347230843252584 -9.218941046634487 34105.29035331253 12.379913955959008 -9.05464010253375 34105.29035331253 12.379967659366683 -3.4033967862067507 34105.29035331253 12.240275471835933 -2.8986945081292523 34105.29035331253 1.5742714997708924 14.892769142980583 34105.29035331253 1.443290419957171 15.031491548105983 34105.29035331253 1.252765659046104 15.021478324464992 34105.29035331253 -7.459929283285457 12.61806537054556 34105.29035331253 -7.628776747005392 12.528849070145165 34105.29035331253 -7.66988270895535 12.34235694172125 34105.29035331253 -7.6700544634861965 -5.73143237459321 34105.29035331253 -7.82230267198171 -6.496797794031872 34105.29035331253 -8.255854340674972 -7.145640371365003 34105.29035331253 -8.904705158716588 -7.579179708189259 34105.29035331253 -9.67007346946219 -7.731413369428216 34105.29035331253 -12.183090663230168 -7.731389488257408 34105.29035331253 -12.347392229915142 -7.764069478129991 34105.29035331253 -12.380075342756067 -7.928370423883756 34105.29035331253 -12.380079647654854 -8.381387616970896 34105.29035331253 -12.380136665151742 -14.381387616196514 34105.29035331253</float_array>
          <technique_common>
            <accessor source="#arr_1" stride="3" count="66">
              <param name="X" type="float"/>
              <param name="Y" type="float"/>
              <param name="Z" type="float"/>
            </accessor>
          </technique_common>
        </source>
        <vertices id="v_1">
          <input semantic="POSITION" source="#src_3"/>
        </vertices>
        <triangles count="129">
          <input offset="0" semantic="VERTEX" source="#v_1"/>
          <p>0 1 2 3 4 5 5 4 6 3 7 4 8 5 6 9 10 11 8 6 12 13 14 15 13 15 16 17 0 2 18 19 20 18 20 10 18 10 9 14 18 9 21 9 22 21 22 17 17 2 21 9 21 14 21 23 14 16 24 25 23 15 14 13 16 25 24 12 25 26 27 28 26 28 24 27 26 29 28 12 24 8 12 28 8 28 30 8 30 31 30 32 31 31 33 34 31 32 33 32 35 33 32 30 35 30 36 35 30 28 36 28 36 28 37 36 28 27 37 29 38 37 27 29 37 26 39 38 29 26 38 24 40 39 26 24 39 16 41 40 24 16 40 16 42 41 16 15 42 15 43 42 15 23 43 21 44 43 23 21 43 21 45 44 21 2 45 1 46 45 2 1 45 0 47 46 1 0 46 0 48 47 0 17 48 22 49 48 17 22 48 22 50 49 22 9 50 11 51 50 9 11 50 11 52 51 11 10 52 10 53 52 10 20 53 19 54 53 20 19 53 18 55 54 19 18 54 14 56 55 18 14 55 14 57 56 14 13 57 25 58 57 13 25 57 25 59 58 25 12 59 6 60 59 12 6 59 6 61 60 6 4 61 7 62 61 4 7 61 3 63 62 7 3 62 5 64 63 3 5 63 8 65 64 5 8 64 31 34 65 8 31 65 34 33 35 37 38 39 58 40 41 37 39 36 39 40 36 41 42 57 42 56 57 53 55 52 44 49 50 48 49 44 46 47 45 47 48 45 48 44 45 55 50 52 50 51 52 55 56 50 55 53 54 56 44 50 43 44 56 36 40 59 61 63 64 43 56 42 59 60 65 59 40 58 58 41 57 65 36 59 36 65 35 62 63 61 64 65 60 65 34 35 61 64 60</p>
        </triangles>
      </mesh>
    </geometry>
icon

Best answer by hadhafang 19 October 2018, 20:13

View original

1 reply

Badge

It was solvet when I as al last step used an aggregated TINSurface from a Triangulator as suggested in the COLLAD reader/writer:

Geometry structure is preserved in the written file. If the structure is not important, you can reduce file size by running features through the Triangulator transformer's TINSurface port, followed by an Aggregator transformer. This results in the smallest representation possible.

Reply