HTML
GIF
PDF
XML
GIF
GIF
Buat Lithophane Anda ke GIF melalui C#
Buat aplikasi .NET Anda sendiri untuk membuat file litofan ke GIF menggunakan API sisi server.
Cara Membuat File Lithophane ke GIF Menggunakan C#
Untuk membuat file lithophane ke GIF, kami akan menggunakan
API yang kaya fitur, kuat, dan mudah digunakan API untuk C# platform yang akan digunakan dengan membuat lithophane Anda. Membuka
manajer paket, cari {/0}Aspose.3D* dan menginstal. Anda juga dapat menggunakan perintah berikut dari Package Manager Console.
Perintah Konsol Manajer Paket
PM> Install-Package Aspose.3D
Langkah-langkah Membuat Lithophane ke GIF melalui C#
Aspose.3D memudahkan pengembang untuk membuat litofan Anda ke file GIF hanya dengan beberapa baris kode.
- Buat beberapa parameter baru dan buat objek Mesh- Lakukan operasi komputasi pada objek Mesh- File GIF memuat adegan 3d melalui kelas Mesh- Panggil metode Scene.Save dengan objek
Persyaratan sistem
Aspose.3D for .NET didukung di semua sistem operasi utama. Pastikan saja Anda memiliki prasyarat berikut.
- Microsoft Windows atau OS yang kompatibel dengan .NET Framework, .NET Core, Mono- Lingkungan pengembangan seperti Microsoft Visual Studio- Aspose.3D for .NET dirujuk dalam proyek Anda
C# kode untuk Membuat Lithophane Anda ke GIF
//Gambar asli yang perlu diunggah dan output file 3d setelah disimpan
string file = "template.gif";
string output =System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".fbx";
//Buat beberapa parameter baru
var td= TextureData.FromFile(file);
const float nozzleSize = 0.9f;//0.2mm
const float layerHeight = 0.2f;
var grayscale = ToGrayscale(td);
const float width = 120.0f;//lebar kanvas adalah 200.0mm
float height = width / td.Width * td.Height;
float thickness = 10.0f;//Ketebalan 10mm
float layers = thickness / layerHeight;
int widthSegs = (int)Math.Floor(width / nozzleSize);
int heightSegs = (int)Math.Floor(height / nozzleSize);
//Lakukan operasi komputasi pada objek Mesh
var mesh = new Mesh();
for (int y = 0; y < heightSegs; y++)
{
float dy = (float)y / heightSegs;
for (int x = 0; x < widthSegs; x++)
{
float dx = (float)x / widthSegs;
float gray = Sample(grayscale, td.Width, td.Height, dx, dy);
float v = (1 - gray) * thickness;
mesh.ControlPoints.Add(new Vector4(dx * width, dy * height, v));
}
}
for (int y = 0; y < heightSegs - 1; y++)
{
int row = (y * heightSegs);
int ptr = row;
for (int x = 0; x < widthSegs - 1; x++)
{
mesh.CreatePolygon(ptr, ptr + widthSegs, ptr + 1);
mesh.CreatePolygon(ptr + 1, ptr + widthSegs, ptr + widthSegs + 1);
ptr++;
}
}
//Hasilkan adegan 3d dan simpan objek
var scene = new Scene(mesh);
scene.Save(output, FileFormat.FBX7400ASCII);
//Metode sampel untuk memanggil
static float Sample(float[,] data, int w, int h, float x, float y)
{
return data[(int)(x * w), (int)(y * h)];
}
//Metode ToGrayscale untuk memanggil
static float[,] ToGrayscale(TextureData td)
{
var ret = new float[td.Width, td.Height];
var stride = td.Stride;
var data = td.Data;
var bytesPerPixel = td.BytesPerPixel;
for (int y = 0; y < td.Height; y++)
{
int ptr = y * stride;
for (int x = 0; x < td.Width; x++)
{
var v = (data[ptr] * 0.21f + data[ptr + 1] * 0.72f + data[ptr + 2] * 0.07f) / 255.0f;
ret[x, y] = v;
ptr += bytesPerPixel;
}
}
return ret;
}
Tentang Aspose.3D for .NET API
Aspose.3D adalah CAD dan Gameware API untuk memuat, memodifikasi, dan mengonversi file 3D. API berdiri sendiri dan tidak memerlukan perangkat lunak pemodelan atau rendering 3D apa pun. Seseorang dapat dengan mudah menggunakan API untuk Discreet3DS, WavefrontOBJ, STL (ASCII, Binary), Universal3D, FBX (ASCII, Binary), Collada, glTF, PLY, GLB, DirectX, dan format lainnya.Aplikasi Gratis untuk Membuat Lithophane Anda ke GIF
Periksa demo langsung kami untuk Lithophane GIF dengan manfaat sebagai berikut.
Tidak perlu mengunduh atau mengatur apa pun
Tidak perlu menulis atau mengkompilasi kode
Cukup unggah file GIF dan tekan tombol "lithophane"
Unduh file GIF dari tautan, jika diperlukan
Aplikasi Lain yang Didukung untuk Membuat Lithophane Anda ke Format
Menggunakan C#, One juga dapat membuat lithophane Anda ke banyak format file lainnya termasuk.