2016-11-09 60 views

回答

0

的開源庫FXyz有你在尋找什麼:給定一個2D SVGPath(或它的內容的字符串)一個SVG3DMesh類將返回3D TriangleMesh,擠出2D圖形到一定高度。

稍後,您可以將該網格導出到obj文件。

這是你如何使用它的代碼片段:

SVG3DMesh svg3DMesh = new SVG3DMesh("M40,60 C42,48 44,30 25,32", 10); 

SVG3DMesh

您可以顯示網格:

svg3DMesh.setDrawMode(DrawMode.LINE); 
svg3DMesh.setCullFace(CullFace.NONE); 

或顯示了堅實的3D物體的顏色你想要:

svg3DMesh.setTextureModeNone(Color.RED); 

對於網格導出到OBJ:

OBJWriter writer=new OBJWriter((TriangleMesh) ((TexturedMesh) svg3DMesh.getMeshFromLetter("")).getMesh(), "svg"); 
writer.setMaterialColor(Color.RED); 
writer.exportMesh(); 

它會產生svg.obj和svg.mtl。

+0

Pereda,非常感謝您的意見。這將幫助我理解轉換背後的過程。 – Sharan

+0

@José是否也可以創建一個扁平(非擠壓)網格? – mipa

+0

@mipa是的,的確,這是3D網格生成的第一部分:2D封閉路徑使用Poly2Tri生成2D網格。您需要添加一些API才能從SVG3DMesh中獲取網格... –

相關問題