Delphi GLScene экспорт сцены как stl
у меня есть . В SceneViewer
я импортирую некоторые файлы stl как freeform.
Пользователь может взаимодействовать с этими объектами (перемещать и вращать их с помощью мыши).
теперь я должен экспортировать все это Scene
один stl файл, поэтому положение и вращение свободностоящие формы должно быть как в Scene
после этого экспорт ("слияние").
Я нашел эту тему о той же проблеме:экспорт "сцена" в STL файл но это создает сломанный STL-файл (пробовал открыть с помощью meshlab).
Я надеюсь, что есть идея для создания решения. Если кто-то знает решение для другого формата 3d-файла, это тоже будет здорово.
1 ответов
Я нашел решение :-)
ссылка в ответе почти правильная, но я должен вычислить информацию заголовка (количество faceletts) по-другому. теперь я использую цикл и вычисляю заголовок, прежде чем писать все. Иногда решение так близко.
var j :integer ;
var i:integer;
var header: TSTLHeader;
var dataFace: TSTLFace;
var list: TaffineVectorlist;
//objects = list of steFreeform objects
//astream = created stream
for j := 0 to objects.count - 1 do
begin
list := TGLFREEForm(objects[j].MeshObjects.ExtractTriangles;
header.nbfaces :0 header.nbFaces + list.count div 3 ;
end;
aStream.write(header.SizeOf(header));
//rest see above link in the question