2017-01-16 9 views
0

Моего файл>https://drive.google.com/open?id=0BzmZiSDoM7l3U2poYWNTbUhBWVUЯ хочу знать, почему мой 3D данные становятся 2D-данных после того, как он будет загружен в другом программном обеспечении

Проблема заключается в том, что у меня есть эти данные из программного обеспечения, известное как Geomodeller и хочет, чтобы загрузить его в другое программное обеспечение, известное как REDBACK.

В gemododeller я сделал 3D куб и загрузил его данными (эти данные имеют слои, как торт), и как-то в REDBACK приведенные данные являются только пересечением слоев в 2D.

Я прочитал пост Python base64 data decode

и реализован код, https://stackoverflow.com/users/194586/nick-t и я получил:

dtgt=base64.b64decode(target) 
format=">ff" 
for i in range(100): 
print struct.unpack_from(format,dtgt,8*i) 

(2.350988701644575e-38, 1.1754943508222875e-38) (1.7826336565709476e + 29 , 6.64613997892458e + 35) Traceback (последний последний звонок): Файл «", строка 2, в Ошибка: unpack_from требует наличия буфера не менее 8 байт

Могу ли я получить помощь в решении этой проблемы?

Мой руководитель считает, что проблема заключается в прилагаемых данных, поэтому он сначала хочет получить все в прилагаемых данных, а затем проанализировать проблему.

ответ

1

Приложение AppendData в вашем файле не является действительным. Данные Base64 - не должно быть знаков равенства, кроме, возможно, самого конца. Если на самом деле предполагается, что он состоит из нескольких отдельных фрагментов закодированных данных, вам нужно будет продолжать вызов декодера на последовательных фрагментах до тех пор, пока весь раздел данных не будет обработан. (Вы только получаете две точки данных, поскольку ваш декодер сдалась на первый «==» в файле.)

На основании компрессора = «vtkZLibDataCompressor» в заголовке файла, данные могут быть сжатый формат (это может объяснить, почему две данные, которые вам удалось извлечь, имели такие абсурдно большие/малые значения). Надеемся, что модуль PPython совместим с этим сжатием.

+0

Благодарим вас за быстрый ответ! Я проверю модуль zlib, затем попытаюсь извлечь данные – Andi