Autodesk 3ds Max, eskiden 3D Studio ve 3D Studio Max, 3B animasyonlar, modeller, oyunlar ve resimler yapmak için profesyonel bir 3B bilgisayar grafik programıdır. Sahnelerin ve resimlerin 3B temsili için veri içerdiğinden 3DS dosyaları oluşturabilir. Ayrıca 3B veri içe ve dışa aktarımı için popüler dosya biçimlerinden biridir. Benzer şekilde, Katkı Üretimi dosya biçimi (AMF), 3B yazdırma gibi katkı üretim süreçleri için nesneleri tanımlamak için açık bir standarttır. Öncülü STL biçiminin aksine, AMF renk, malzemeler, kafesler ve takımyıldızlar için yerel desteğe sahiptir.

Bu yazımızda REST API kullanarak bu iki formatın birbirine dönüştürülmesini ele alacağız.

3D Modelleme ve İşleme API’si

Aspose.3D Cloud API bulutta 3B modeller, nesneler ve varlıklar (Kutu, Silindir, Küre, Torus, Düzlem) oluşturma ve işleme yetenekleri sağlar. Bununla birlikte, 3B dosya işleme için belirli yazılım çözümleri mevcuttur, ancak bunlar kurulum ve lisanslama maliyetleri gerektirir. Ayrıca, toplu işleme gerçekleştirmek için programatik çözümler uygulanabilir bir yaklaşımdır. Dahası, REST mimarisi herhangi bir dili kullanarak herhangi bir platformda API’ye erişmenizi sağlar.

cURL komutuyla 3DS’den AMF’ye dönüştürme

İstemci URL’sinin, desteklenenlerden birini (HTTP, HTTPS, FTP, vb.) kullanarak bir ağ sunucusuna veya bir ağ sunucusundan veri aktarımı için popüler olan ücretsiz bir komut satırı aracı olduğunu biliyoruz. Verileri sunuculara ve sunuculardan aktarmak için URL sözdizimini kullanır. cURL, esnek olma ve karmaşık görevleri tamamlama yeteneği nedeniyle oldukça popülerdir. Cloud API’lerimiz REST mimarisine göre geliştirildiğinden, Aspose.Words web servislerine kolayca erişmek için cURL komut satırı aracını da kullanabilirsiniz.

Bu nedenle daha ileri gitmek için ilk adım bir JWT erişim belirteci oluşturmaktır çünkü REST API’lerimize yalnızca yetkili kişiler erişebilir. Bu nedenle bir sonraki adım kişiselleştirilmiş ClientID ve ClientSecret bilgilerinizi edinmektir.

  • İstemci kimlik bilgilerini almak için Aspose.Cloud panosunu ziyaret ederek bir hesap oluşturun. 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. Ardından kimlik bilgilerini kullanarak panoya giriş yapın ve panodan Uygulamalar bölümünü genişletin ve İstemci Kimlik Bilgileri bölümüne doğru aşağı kaydırın. İstemci Kimliği ve İstemci Gizli Bilgilerini kopyalayın.
Müşteri Kimlik Bilgileri

Resim 1 :- Dashboard.aspose.cloud’daki istemci kimlik bilgileri

Artık ClientID ve ClientSecret bilgilerine sahip olduğumuza göre, JWT token’ını oluşturmak için terminalde aşağıdaki komutu çalıştırmamız gerekiyor.

curl -v "https://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"

Bir sonraki adım, aşağıdaki komutu çalıştırarak dosyayı bulut depolamaya yüklemektir.

curl -X PUT "https://api.aspose.cloud/v3.0/3d/storage/file/rochair_hansen.3ds" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d {"File":{/Users/nayyershahbaz/Documents/Esso.3ds}}

Yukarıdaki örnekte, yerel sistemdeki 3DS dosyasının yolu sağlanmıştır. Dosya artık bulut depolama alanına yüklendiğine göre, 3ds’den amf’ye dönüştürmeyi gerçekleştirmek için aşağıdaki komutu çalıştırabiliriz.

curl -v -X GET "https://api.aspose.cloud/v3.0/3d/saveas/newformat?name=Esso.3ds&newformat=amf&newfilename=Esso.amf&IsOverwrite=true" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

Java’da 3DS’i AMF’ye Dönüştürme

Müşterilerimizin Java programlama dilini kullanmasını kolaylaştırmak için, Java programı içerisinde 3D dosya işlemeye ilişkin tüm özellikleri ve yetenekleri sağlayan Aspose.3D Cloud SDK for Java adlı bir sarmalayıcı oluşturduk.

Kurulum ve Yapılandırma

Programlama SDK’sını kullanmanın ilk adımı, kurulumudur ve Maven ve GitHub adreslerinden indirilebilir. Aşağıda, Maven derleme projesinde aspose-3d-cloud-20.5.jar’ın nasıl indirileceği ve kullanılacağına dair ayrıntılar verilmiştir.

Pom.xml dosyanıza aşağıdaki bağımlılıkları ekleyin.

<repositories>
 <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>
<dependencies> 
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-3d-cloud</artifactId>
    <version>20.5</version>
</dependency>
</dependencies>
Aspose.3D Cloud kavanozu

Resim 2:- Proje bağımlılıkları altındaki Aspose.3d.jar.

Aşağıdaki bölümde, Java Cloud SDK’yı kullanarak 3DS’ten AMF’ye dönüştürmenin nasıl gerçekleştirileceğine ilişkin ayrıntıları ele alacağız.

  • İlk adım, Client ID ve Client Secret’ı geçirerek ThreeDCloudApi nesnesini oluşturmaktır.
  • Giriş 3DS dosya adını tanımlamak için Dize değişkeni oluşturun.
  • Şimdi sonuç dosya formatını tanımlayan başka bir Dize değişkeni oluşturun (bizim durumumuzda amf).
  • Sonuç dosyasını belirtmek için başka bir String örneği oluşturun.
  • Son olarak, dönüştürme işlemini gerçekleştirmek için ThreeDCloudApi’nin postConvertByFormat(…) metodunu çağırın.
// clientId ve clientSecret'ı https://dashboard.aspose.cloud/ adresinden alın
String clientId = "718e4235-8866-4ebe-bff4-f5a14a4b6466";
String clientSecret = "388e864b819d8b067a8b1cb625a2ea8e";

// Aspose.3D bulutunun bir örneğini oluşturun
ThreeDCloudApi threeDCloudApi  = new ThreeDCloudApi("client_credentials", clientId, clientSecret);

// giriş 3DWS dosyasının adı
String name = "Esso.3ds";

// çıktı biçimi ayrıntıları
String newformat = "amf";

// sonuç dosyasının adı
String newFileName = "Esso.amf";
// depolama için herhangi bir bilgi belirtilmezse, varsayılan depolama kullanılır
String storage1 = null;
		    		
// dönüştürme işlemini başlat
File response = threeDCloudApi.postConvertByFormat(name, newformat, newFileName, null, true, storage1);

Yukarıdaki örnekte kullanılan örnek dosyalar aşağıdaki bağlantılardan indirilebilir.

Çözüm

Bu makalede, 3DS dosya biçimini AMF’ye dönüştürmenin nasıl gerçekleştirileceğiyle ilgili adımları ve ilgili ayrıntıları ele aldık. Cloud API o kadar harika ki, dönüştürmeyi daha az kod satırıyla (tam olarak 2 satır) gerçekleştirebilirsiniz. Lütfen API’mizi kullanmayı deneyin ve herhangi bir sorunla karşılaşırsanız veya ilgili bir sorunuz varsa lütfen Ücretsiz destek forumu aracılığıyla bizimle iletişime geçmekten çekinmeyin.

Bununla birlikte, Cloud SDK’larımız açık kaynak modeli altında geliştirilmektedir ve tam kaynak kodu GitHub adresinden indirilebilir.

İlgili makaleler

Ödüllü API’lerimizin muhteşem yetenekleri hakkında daha fazla bilgi edinmek için aşağıdaki bağlantıları ziyaret etmenizi şiddetle öneririz