コード例 #1
0
func Export(nameTag *data.NameTag, config *config.Config) error {
	if nameTag.Name == "" {
		return errors.New("Name tag has no name set")
	}
	stlArgs := fmt.Sprintf(" -o %s/%s.stl -D name=\"%s\" -D chars=%d %s/name.scad", config.StlDirectory,
		nameTag.Name, nameTag.Name, len(nameTag.Name), config.ScadDirectory)

	fmt.Println("Exporting STL...")
	wg := new(sync.WaitGroup)
	wg.Add(1)
	go exe_cmd("openscad"+stlArgs, wg)
	wg.Wait()
	stl := config.StlDirectory + "/" + nameTag.Name + ".stl"
	if _, err := os.Stat(stl); os.IsNotExist(err) {
		return errors.New("An Error occured while exporting STL")
	}
	nameTag.Stl = nameTag.Name + ".stl"
	fmt.Println("Done exporting STL")
	return nil
}