Как определить, что это действительный двоичный файл STL (стереолитография)? - PullRequest
1 голос
/ 11 сентября 2011

У меня есть html-форма, в которой пользователи загружают либо двоичные, либо ascii stl файлы .Однако я хочу убедиться, что загружены только допустимые двоичные файлы и файлы ascii. Если пользователь изменяет расширение, скажем, файла PDF на .stl (расширение для двоичных 3D-файлов и файлов ascii stl), код должен обнаружить, что егоневерный файл stl.

1 Ответ

4 голосов
/ 13 сентября 2011

Цитирование Википедия :

An ASCII STL file begins with the line:

`solid name`

where name is an optional string (though if name is omitted there must still be a space after solid). 

Итак, чтобы подтвердить ASCII STL, проверьте '^ solid (name)? $' В первой строке.

Чтобы определить, является ли файл двоичным STL, используйте поле длины со смещением 80. Оно указывает количество треугольников в файле.

Итак, чтобы подтвердить двоичный файл STL, проверьте следующее выражение:

filesize == UINT32@80 * 50 + 84

Здесь число 84 - это общий размер двоичного заголовка STL (80 байтов) и 4-байтовое число (количество треугольников) после заголовка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...