Δημιουργήστε το Lithophane σας σε JPEG μέσω C#
Δημιουργήστε τις δικές σας εφαρμογές .NET για να δημιουργήσετε τα αρχεία λιθοφάνης σε JPEG χρησιμοποιώντας API από την πλευρά του διακομιστή.
Πώς να δημιουργήσετε το αρχείο Lithophane σε JPEG χρησιμοποιώντας το C#
Για να δημιουργήσουμε το αρχείο λιθοφάνης σε JPEG, θα χρησιμοποιήσουμε
API που είναι μια πλούσια σε χαρακτηριστικά, ισχυρή και εύχρηστη πλατφόρμα API για C# που θα χρησιμοποιηθεί με τη δημιουργία λιθοφανών σας. Ανοιξε
διαχειριστής πακέτων, αναζητήστε Aspose.3D και εγκαταστήστε. Μπορείτε επίσης να χρησιμοποιήσετε την ακόλουθη εντολή από την Κονσόλα Package Manager.
Εντολή κονσόλας διαχείρισης πακέτων
PM> Install-Package Aspose.3D
Βήματα για τη δημιουργία του Lithophane σε JPEG μέσω C#
Το Aspose.3D διευκολύνει τους προγραμματιστές να δημιουργήσουν το lithophane σας στο αρχείο JPEG με λίγες μόνο γραμμές κώδικα.
- Δημιουργήστε μερικές νέες παραμέτρους και δημιουργήστε ένα αντικείμενο Mesh- Εκτελέστε υπολογιστικές πράξεις σε αντικείμενα Mesh- Το αρχείο JPEG φορτώνει τρισδιάστατη σκηνή μέσω της κλάσης Mesh- Καλέστε τη μέθοδο Scene.Save με αντικείμενο
Απαιτήσεις συστήματος
Το Aspose.3D for .NET υποστηρίζεται σε όλα τα κύρια λειτουργικά συστήματα. Απλώς βεβαιωθείτε ότι έχετε τις ακόλουθες προϋποθέσεις.
- Microsoft Windows ή συμβατό λειτουργικό σύστημα με .NET Framework, .NET Core, Mono- Περιβάλλον ανάπτυξης όπως το Microsoft Visual Studio- Το Aspose.3D for .NET αναφέρεται στο έργο σας
Κωδικός C# για να δημιουργήσετε το Lithophane σας σε JPEG
//Η αρχική εικόνα που πρέπει να μεταφορτωθεί και η έξοδος του τρισδιάστατου αρχείου μετά την αποθήκευση
string file = "template.jpeg";
string output =System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".fbx";
//Δημιουργήστε μερικές νέες παραμέτρους
var td= TextureData.FromFile(file);
const float nozzleSize = 0.9f;//0,2 mm
const float layerHeight = 0.2f;
var grayscale = ToGrayscale(td);
const float width = 120.0f;//Το πλάτος του καμβά είναι 200,0 mm
float height = width / td.Width * td.Height;
float thickness = 10.0f;//Πάχος 10mm
float layers = thickness / layerHeight;
int widthSegs = (int)Math.Floor(width / nozzleSize);
int heightSegs = (int)Math.Floor(height / nozzleSize);
//Εκτελέστε υπολογιστικές πράξεις σε αντικείμενα 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++;
}
}
//Δημιουργήστε τρισδιάστατη σκηνή και αποθηκεύστε αντικείμενα
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 σας σε JPEG
Ελέγξτε τις ζωντανές επιδείξεις μας σε Lithophane JPEG με τα ακόλουθα οφέλη.
Άλλη υποστηριζόμενη εφαρμογή για τη δημιουργία Lithophane σε Μορφές
Χρησιμοποιώντας το C#, το One μπορεί επίσης να δημιουργήσει το lithophane σας σε πολλές άλλες μορφές αρχείων, συμπεριλαμβανομένων.