HTML
TGA
PDF
XML
TGA
TGA
สร้าง Lithophane ของคุณเป็น TGA ผ่าน C#
สร้างแอป .NET ของคุณเองเพื่อสร้าง lithophane เป็นไฟล์ TGA โดยใช้ API ฝั่งเซิร์ฟเวอร์
วิธีสร้างไฟล์ Lithophane เป็น TGA โดยใช้ C#
ในการสร้าง lithophane เป็นไฟล์ TGA เราจะใช้
API ซึ่งมีคุณลักษณะหลากหลาย มีประสิทธิภาพ และใช้งานง่าย API สำหรับแพลตฟอร์ม C# ที่จะใช้กับการสร้าง lithophane ของคุณ เปิด
package manager ค้นหา Aspose.3D และติดตั้ง คุณยังสามารถใช้คำสั่งต่อไปนี้จาก Package Manager Console
คำสั่งคอนโซลตัวจัดการแพ็คเกจ
PM> Install-Package Aspose.3D
ขั้นตอนในการสร้าง Lithophane ของคุณเป็น TGA ผ่าน C#
Aspose.3D ช่วยให้นักพัฒนาสร้าง lithophane ของคุณไปยังไฟล์ TGA ได้อย่างง่ายดายด้วยโค้ดเพียงไม่กี่บรรทัด
- สร้างพารามิเตอร์ใหม่และสร้างวัตถุตาข่าย- ดำเนินการคำนวณบนวัตถุตาข่าย- ไฟล์ TGA โหลดฉาก 3 มิติผ่านคลาส Mesh- เรียกเมธอด Scene.Save ด้วย object
ความต้องการของระบบ
Aspose.3D for .NET ได้รับการสนับสนุนในระบบปฏิบัติการหลักทั้งหมด เพียงตรวจสอบให้แน่ใจว่าคุณมีข้อกำหนดเบื้องต้นดังต่อไปนี้
- Microsoft Windows หรือระบบปฏิบัติการที่เข้ากันได้กับ .NET Framework, .NET Core, Mono- สภาพแวดล้อมการพัฒนาเช่น Microsoft Visual Studio- Aspose.3D for .NET อ้างอิงในโครงการของคุณ
รหัส C# เพื่อสร้าง Lithophane ของคุณเป็น TGA
//รูปภาพต้นฉบับที่ต้องอัปโหลดและไฟล์ 3d จะส่งออกหลังจากบันทึก
string file = "template.tga";
string output =System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".fbx";
//สร้างพารามิเตอร์ใหม่
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;//ความกว้างของผ้าใบคือ 200.0mm
float height = width / td.Width * td.Height;
float thickness = 10.0f;//ความหนา 10 มม.
float layers = thickness / layerHeight;
int widthSegs = (int)Math.Floor(width / nozzleSize);
int heightSegs = (int)Math.Floor(height / nozzleSize);
//ดำเนินการคำนวณบนวัตถุตาข่าย
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++;
}
}
//สร้างฉาก 3 มิติและบันทึกวัตถุ
var scene = new Scene(mesh);
scene.Save(output, FileFormat.FBX7400ASCII);
//ตัวอย่างวิธีการโทร
static float Sample(float[,] data, int w, int h, float x, float y)
{
return data[(int)(x * w), (int)(y * h)];
}
//วิธีการ ToGrayscale ที่จะโทร
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;
}
เกี่ยวกับ Aspose.3D for .NET API
Aspose.3D เป็น CAD และ Gameware API ในการโหลด แก้ไข และแปลงไฟล์ 3D API เป็นแบบสแตนด์อโลนและไม่จำเป็นต้องมี 3D ซอฟต์แวร์สร้างแบบจำลองหรือเรนเดอร์ใดๆ สามารถใช้ API สำหรับ Discreet3DS, WavefrontOBJ, STL (ASCII, Binary), Universal3D, FBX (ASCII, Binary), Collada, glTF, PLY, GLB, DirectX และรูปแบบอื่นๆแอพฟรีเพื่อสร้าง Lithophane ของคุณเป็น TGA
ตรวจสอบการสาธิตสดของเราที่ ลิโธเฟน ทีจีเอ พร้อมสิทธิประโยชน์ดังต่อไปนี้
ไม่จำเป็นต้องดาวน์โหลดหรือตั้งค่าอะไรเลย
ไม่ต้องเขียนหรือคอมไพล์โค้ด
เพียงอัปโหลดไฟล์ TGA แล้วกดปุ่ม "lithophane"
ดาวน์โหลดไฟล์ TGA จากลิงค์ ถ้าจำเป็น
แอพที่รองรับอื่น ๆ เพื่อสร้าง Lithophane ของคุณเป็นรูปแบบ
เมื่อใช้ C# เราสามารถสร้าง lithophane ของคุณให้เป็นรูปแบบไฟล์อื่นๆ ได้มากมาย รวมถึง