Экспорт с 3D опциями

Экспорт с 3D опциями

Несколько опций были введены для экспорта 3D моделей в PDF/растровый формат из соответствующих FBX, OBJ, STL.

Вот примеры 3D сцены с разных точек зрения:

Figures

Figures from other points of view

Свойство ObserverPoint позволяет вращать 3D сцену в соответствии с указанными углами вокруг оси. Этот пример показывает код и результат экспорта с использованием некоторых произвольных углов вращения.

final Image cadImage = Image.load(in);
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setPageWidth(5000);
rasterizationOptions.setPageHeight(5000);
rasterizationOptions.setDrawType(CadDrawTypeMode.UseObjectColor);
rasterizationOptions.setObserverPoint(new ObserverPoint(15,5,5));
final PdfOptions pdfOptions = new PdfOptions();
pdfOptions.setVectorRasterizationOptions(rasterizationOptions);
cadImage.save(out, pdfOptions);

Export with rotation

Изменение ObserverAngle на ObserverPoint = new ObserverPoint(5, 60, 0) позволяет вращать сцену.

Export with changed rotation

Другой параметр RenderMode3D позволяет указать, как результат экспорта должен быть представлен. Существует 3 режима: Solid (по умолчанию), Wireframe и SolidWithEdges.

Пример ниже позволяет создать каркасную модель для сферического объекта.

final Image cadImage = Image.load(in);
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setPageWidth(5000);
rasterizationOptions.setPageHeight(5000);
rasterizationOptions.setDrawType(CadDrawTypeMode.UseObjectColor);
rasterizationOptions.setRenderMode3D(RenderMode3D.Wireframe);
final PdfOptions pdfOptions = new PdfOptions();
pdfOptions.setVectorRasterizationOptions(rasterizationOptions);
cadImage.save(out, pdfOptions);

Wireframe mode

Пример ниже показывает разницу между режимами Solid и SolidWithEdges.

Solid mode Solid with edge mode