You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fair enough, I'm not working with a particular protocol but rather with parsing and repacking some uncommon 3D graphic model files (as you can imagine a lot of vector fields containing floats). Originally I used the struct library which had float support but suitcase is vastly more eloquent... I can't go back :P
I'm not sure what you mean by a text-based implementation, can you please elaborate? If its possible to cover 16/32/64 bit floats I'd be really grateful.
Sorry to reopen this again but @posborne its seems that the way this package unpacks data can't be done for floats. I'm getting the following error:
File "/Library/Python/2.7/site-packages/suitcase/fields.py", line 1005, in unpack
value |= (byte << (i * 8))
suitcase.exceptions.SuitcaseParseError: Unexpected exception while unpacking field 'Rotation_X': unsupported operand type(s) for <<: 'float' and 'int'
Activity
rtzoeller commentedon Dec 15, 2016
Likely because no one had needed them in a use case up until now -- AFAIK, the addition of new field types has largely been on an as-needed basis.
Is there a particular protocol you have in mind that requires floats to be encoded as bytes, as opposed to a text-based implementation?
idubz33 commentedon Dec 16, 2016
Fair enough, I'm not working with a particular protocol but rather with parsing and repacking some uncommon 3D graphic model files (as you can imagine a lot of vector fields containing floats). Originally I used the struct library which had float support but suitcase is vastly more eloquent... I can't go back :P
I'm not sure what you mean by a text-based implementation, can you please elaborate? If its possible to cover 16/32/64 bit floats I'd be really grateful.
posborne commentedon Dec 16, 2016
I would accept a PR adding floating point support. You should be able to add basic support easily by using the struct format strings similar to the existing ones like https://github.com/digidotcom/python-suitcase/blob/master/suitcase/fields.py#L1055
idubz33 commentedon Dec 22, 2016
Sorry to reopen this again but @posborne its seems that the way this package unpacks data can't be done for floats. I'm getting the following error:
The unpack definition would require change to allow floats https://github.com/digidotcom/python-suitcase/blob/master/suitcase/fields.py#L998. Any suggestions?