Node.js'de GLB'den FBX'e

GLB dosyaları, bir kürede hangi dokuların, resimlerin ve diğer dosyaların kullanıldığını ve bu dosyaların nerede saklandığını kaydeden metin dosyalarıdır. GLB biçimleri, indirme hızı ve çalışma zamanında yükleme süresi için optimize edilmiştir; bu da bunların mobil ve web tabanlı 3B modelleme programlarında kullanılmasını kolaylaştırır. Bunun dışında, glTF, 3B içeriğin iletimi ve yüklenmesi için verimli, genişletilebilir, birlikte çalışabilir bir biçim olacak şekilde geliştirilmiştir. Biçimin hedefleri arasında kompakt dosya boyutları, hızlı yükleme, eksiksiz 3B sahne gösterimi, çalışma zamanı bağımsızlığı ve daha fazla geliştirmeye eşlik edecek şekilde genişletilebilirlik yer alır.

Benzer şekilde, FBX biçimi, verimli olması ve modelleri ikili veri olarak depolaması nedeniyle yaratıcıların 3B modelleri birbirleriyle paylaşmasına olanak tanır. Bu yetenekler nedeniyle, bu biçimlerin her ikisi de çok popülerdir ve bir karşılıklı dönüştürme gereksinimimiz olabilir. Bu makalede, aşağıdaki konuları daha ayrıntılı olarak ele alacağız

3D dosya işleme API’si

3D dosyalarının işlenmesi Cloud REST API’lerimizin yardımıyla oldukça kullanışlı hale geldi. Bu sayede artık tüm 3D dosya işleme ve dönüştürme işlemlerini Aspose.3D Cloud kullanarak gerçekleştirebilirsiniz. Müşterilerimizin işini kolaylaştırmak için Aspose.3D bulutu etrafında bir Node.js sarmalayıcısı oluşturduk, böylece tüm yetenekler Node.js projenizde kullanılabilir hale geldi.

Kurulum ve Yapılandırma

Cloud SDK’yı kullanmak için ilk adım, NPM veya GitHub‘dan yüklemektir. Ancak, npm üzerinden yükleme en kolay olanıdır. Lütfen yüklemeyi gerçekleştirmek için aşağıdaki komutu çalıştırın

npm install aspose3dcloud --save

Lütfen Aspose.3D Cloud SDK for Node.js’nin Node.js 4.8.7 veya üzeri bir sürüm gerektirdiğini unutmayın.

Kurulum gerçekleştirildikten sonra, bir sonraki ana adım Aspose.Cloud panosunu ziyaret ederek bir hesap oluşturmaktır. Bir hesap oluşturmanızın nedeni, API’lerimize yalnızca yetkili kişilerin erişebilmesidir. Bu nedenle, GitHub veya Google hesabınız varsa, sadece Kaydolun. Aksi takdirde, Yeni Hesap Oluştur düğmesine tıklayın ve gerekli bilgileri sağlayın. Şimdi kimlik bilgilerini kullanarak panoya giriş yapın ve panodan Uygulamalar bölümünü genişletin ve İstemci Kimliği ve İstemci Gizli Bilgisi ayrıntılarını görmek için İstemci Kimlik Bilgileri bölümüne doğru aşağı kaydırın.

Müşteri Kimlik Bilgileri

Node.js’de GLB’den PLY’ye

GLB dosyasının PLY formatına dönüştürülmesi için lütfen aşağıda verilen talimatları izleyin:

  • İlk adım, İstemci Kimliği ve İstemci Gizli Anahtar ayrıntılarını argüman olarak sağlayarak ThreeDCloudApi’nin bir örneğini oluşturmaktır.
  • İkinci olarak postConvertByFormatRequest sınıfının bir nesnesini oluşturun.
  • Giriş GLB dosya adını postConvertByFormatRequest sınıfının name özelliğini kullanarak tanımlayın.
  • Sonuç biçimini belirtmek için newformat özelliğini kullanın.
  • Şimdi, sonuç dosya adını tanımlamak için postConvertByFormatRequest’in newfilename özelliğini kullanın.
  • Son olarak, dönüştürme işlemini başlatmak için postConvertByFormatRequest örneğini argüman olarak geçirirken ThreeDCloudApi’nin postConvertByFormat(…) metodunu çağırın.
const { ThreeDCloudApi, postConvertByFormatRequest } = require("aspose3dcloud");

// ClientId ve ClientSecret'ınızı http://dashboard.aspose.cloud adresinden alın (ücretsiz kayıt gereklidir).
const clientId = "718e4235-8866-4ebe-bff4-f5a14a4b6466";
const secret = "388e864b819d8b067a8b1cb625a2ea8e";

// ThreeD Cloud API örneği oluştur
const threeDCloudApi = new ThreeDCloudApi(clientId, secret);

    // ConvertByFormat istek nesnesini oluştur
    var req = new postConvertByFormatRequest()
    
    // giriş glb dosyasının adını belirtin
    req.name = "Wolf-Blender-2.82a.glb";
    
    // sonuç dosyası için dosya biçimi
    req.newformat = "ply";

    // sonuç dosyasının adı
    req.newfilename = "Wolf-Blender-2.82a.ply";

    req.folder = null;

    // bulut depolamada zaten mevcutsa dosyanın üzerine yaz
    req.isOverwrite = true;
    req.storage = null;

    try {
        // belge dönüştürme işlemlerini gerçekleştir
    return threeDCloudApi.postConvertByFormat(req)
      .then((result) => {
	    
            // konsolda başarı mesajını yazdır
            console.log("Successfully converted..");
	});
}
catch (e) {
    console.log("entering catch block");
    console.log(e);
    console.log("leaving catch block");
}

Yukarıdaki örnekte kullanılan örnek dosyalara aşağıdaki bağlantılardan test amaçlı ulaşabilirsiniz.

cURL komutunu kullanarak GLB’yi FBX’e dönüştürün

Aspose.3D Cloud o kadar şaşırtıcıdır ki GLB veya başka bir formatı tek bir cURL komutuyla FBX dahil olmak üzere desteklenen diğer formatlara dönüştürebilirsiniz. Yukarıdaki bölümde belirtildiği gibi, aynı kodu kullanabilir ve yalnızca çıktı dosyası format uzantısını değiştirerek dönüşümü gerçekleştirebilirsiniz ve API geri kalan işi yapacaktır. Ancak, API’lere komut satırı terminalinde erişmeden önce, API’lere yalnızca yetkili kişiler erişebildiğinden, önce İstemci Kimliği ve İstemci Gizli Ayrıntıları temelinde bir JWT erişim belirteci oluşturmamız gerektiğini lütfen unutmayın.

curl -v "http://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=718e4235-8866-4ebe-bff4-f5a14a4b6466&client_secret=388e864b819d8b067a8b1cb625a2ea8e" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

JWT belirteci oluşturulduktan sonra, GLB‘den FBX’e dönüştürmeyi gerçekleştirmek için PostConvertByFormat API’sine erişin.

curl -X POST "http://api.aspose.cloud/v3.0/3d/saveas/newformat?name=Wolf-Blender-2.82a.glb&newformat=fbx&newfilename=ConvertedFile.fbx&IsOverwrite=true" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

Çözüm

Bu makale, popüler 3D dosya biçimleriyle ilgili kavramları Aspose.3D Cloud API kullanarak diğer desteklenen biçimlere açıklamıştır. Bu makalede, Node.js kod parçacığı ve cURL komutunu kullanarak dosya dönüştürme adımlarını ele aldık. Yukarıda ele alınan biçimlerin dışında, API çıktıyı diğer 3D dosya biçimlerine yükleyip kaydedebilir ve ilgili ayrıntılar Supported Document Formats adresinde bulunabilir.

Lütfen ücretsiz bir hesap aboneliği kapsamında 150 belge işleme isteği gerçekleştirebileceğinizi ve API’den memnun kaldığınızda 0,005$/API Çağrısı kadar düşük bir fiyata lisans aboneliği satın almayı düşünebileceğinizi unutmayın. Daha fazla ayrıntı için lütfen Fiyatlandırma sayfasını ziyaret edin. API’yi kullanırken herhangi bir sorunla karşılaşırsanız veya ilgili sorularınız varsa lütfen Ücretsiz Ürün destek forumu aracılığıyla bizimle iletişime geçmekten çekinmeyin.

İlgili Makale

Ayrıca daha fazla özelliği keşfetmek için aşağıdaki bağlantıları ziyaret etmenizi öneririz: