Soubor OBJ je konečným produktem procesu 3D modelování, obvykle generovaný softwarem CAD. Jde o definiční soubor geometrie, který obsahuje vrcholy, normály vrcholů, vrcholy atd. V určitých případech může být nutné převést soubor OBJ do formátu STL. Soubor STL obsahuje informace o 3D vektorové grafice. V tomto článku se naučíme, jak převést soubor OBJ do formátu STL v Pythonu.
Tento článek se bude týkat následujících témat:
- Python OBJ to STL Converter – zdarma ke stažení
- Kroky pro převod OBJ na STL
- Převést soubor OBJ na STL
- Převést OBJ na STL s možnostmi v Pythonu
Python OBJ to STL Converter – zdarma ke stažení
Pro převod OBJ na STL budeme používat Aspose.3D for Python API. Umožňuje konverzi různých 3D formátů souborů. API také podporuje práci s geometrií a hierarchií scén a animaci objektů ve 3D scéně.
Třída Scene API je objekt nejvyšší úrovně, který obsahuje uzly, geometrie, materiály, textury, animace, pozice, dílčí scény atd. Metoda fromfile(string) tato třída otevře scénu z dané cesty k souboru. Poskytuje také metodu save(string, SaveOptions), která uloží scénu do zadané cesty. Třída StlSaveOptions rozhraní API umožňuje specifikovat možnosti uložení pro formát STL.
Prosím buď stáhněte si balíček nebo nainstalujte API z PyPI pomocí následujícího příkazu pip v konzole:
pip install aspose-3d
Jak převést OBJ na STL
Soubor OBJ můžeme snadno převést do formátu STL podle následujících kroků:
- Načtěte soubor OBJ.
- Zadejte možnosti uložení STL.
- Uložit OBJ jako STL.
Následující část popisuje, jak převést tyto kroky do kódu Pythonu a převést soubor OBJ do formátu STL.
Převeďte OBJ na STL pomocí Pythonu
Soubor OBJ můžeme převést do formátu STL podle následujících kroků:
- Nejprve načtěte vstupní soubor OBJ pomocí metody Scene.fromfile().
- Poté vytvořte instanci třídy StlSaveOptions.
- Nakonec zavolejte metodu save() a uložte ji jako STL. Jako argumenty bere cestu k výstupnímu souboru STL a StlSaveOptions.
Následující ukázka kódu ukazuje, jak převést OBJ na STL v Pythonu.
# Tento příklad kódu ukazuje, jak převést OBJ na STL.
# Načtěte vstupní soubor OBJ s třídou Scene.
scene = Scene.from_file("C:\\Files\\3D\\sample.obj");
# Inicializujte objekt třídy STLSaveOptions.
stlSaveOptions = StlSaveOptions();
# Převést OBJ na STL soubor.
scene.save("C:\\Files\\3D\\sample_out.stl", stlSaveOptions);
Převeďte OBJ na STL s možnostmi v Pythonu
Při převodu souboru OBJ do formátu STL můžeme určit možnosti uložení STL podle následujících kroků:
- Nejprve načtěte vstupní soubor OBJ pomocí metody Scene.fromfile().
- Dále vytvořte instanci třídy StlSaveOptions.
- Poté zadejte možnosti uložení STL, jako je flipcoordinatesystem, lookuppaths atd.
- Nakonec zavolejte metodu save() a uložte ji jako STL. Jako argumenty bere cestu k výstupnímu souboru STL a StlSaveOptions.
Následující ukázka kódu ukazuje, jak převést OBJ na STL s možnostmi uložení STL v Pythonu.
# Tento příklad kódu ukazuje, jak převést OBJ na STL pomocí možností uložení.
# Načtěte vstupní soubor OBJ s třídou Scene.
scene = Scene.from_file("C:\\Files\\3D\\sample.obj");
# Inicializujte objekt třídy STLSaveOptions.
stlSaveOptions = StlSaveOptions();
# Překlopte souřadnicový systém.
stlSaveOptions.flip_coordinate_system = True
# Nakonfigurujte vyhledávací cesty, aby importér mohl najít externí závislosti.
dataDir = "C:\\Files\\3D\\"
paths = [ dataDir]
stlSaveOptions.lookup_paths = repr(paths)
# Převést OBJ na STL soubor.
scene.save("C:\\Files\\3D\\sample_out.stl", stlSaveOptions);
Získejte bezplatnou dočasnou licenci
Můžete získat bezplatnou dočasnou licenci a vyzkoušet Aspose.3D pro Python bez omezení hodnocení.
Vyzkoušejte online
Vyzkoušejte prosím následující bezplatný online nástroj pro převod OBJ na STL, který je vyvinut pomocí výše uvedeného API.
https://products.aspose.app/3d/conversion/obj-to-stl
Závěr
V tomto článku jsme se naučili, jak převést OBJ na STL pomocí Pythonu. Také jsme viděli, jak programově specifikovat různé možnosti ukládání STL. Kromě toho se můžete dozvědět více o Aspose.3D pro Python API pomocí dokumentace. V případě jakýchkoli nejasností nás neváhejte kontaktovat na našem bezplatném fóru podpory.