package main import ( "fmt" "flag" "github.com/fogleman/ln/ln" ) func main() { // Parsing des arguments flag.Parse() args := flag.Args() if len(args) != 1 { fmt.Println("Usage: obj2svg input.obj -> créera 2 fichiers input.obj.png et input.obj.svg") return } pngfilename := args[0] + ".png" svgfilename := args[0] + ".svg" fmt.Printf("pngfilename %s\n", pngfilename) fmt.Printf("svgfilename %s\n", svgfilename) scene := ln.Scene{} fmt.Printf("Loading %s\n", args[0]) mesh, err := ln.LoadOBJ(args[0]) if err != nil { panic(err) } mesh.UnitCube() scene.Add(ln.NewTransformedShape(mesh, ln.Rotate(ln.Vector{0, 1, 0}, 0.5))) // scene.Add(mesh) eye := ln.Vector{-0.5, 0.5, 2} center := ln.Vector{} up := ln.Vector{0, 1, 0} width := 1024.0 height := 1024.0 paths := scene.Render(eye, center, up, width, height, 35, 0.1, 100, 0.01) paths.WriteToPNG(pngfilename, width, height) paths.WriteToSVG(svgfilename, width, height) }