HTML PNG PDF XML PNG
Aspose.3D  for .NET
PNG

Hozd létre a Lithophane-t PNG-be a következőn keresztül: C#

Készítse el saját .NET-alkalmazásait a litofán-PNG-fájlok létrehozásához szerveroldali API-k segítségével.

Lithophane to PNG fájl létrehozása a következővel: C#

A lithophane to PNG fájl létrehozásához használjuk

Aspose.3D for .NET

API, amely funkciókban gazdag, hatékony és könnyen használható API for C# platform, amely a litofán létrehozásához használható. Nyisd ki

NuGet

csomagkezelő, keressen Aspose.3D és telepítse. A következő parancsot is használhatja a Package Manager konzolból.

Csomagkezelő konzolparancs


PM> Install-Package Aspose.3D

Lépések a Lithophane létrehozásához PNG formátumba a következőn keresztül: C#

A Aspose.3D megkönnyíti a fejlesztők számára a litofán létrehozását a PNG-fájlba, mindössze néhány sornyi kóddal.

  • Hozzon létre néhány új paramétert, és hozzon létre egy Mesh objektumot- Számítási műveletek végrehajtása Mesh objektumokon- A PNG fájl betölti a 3d jelenetet a Mesh osztályon keresztül- Hívja meg a Scene.Save metódust objektummal

rendszerkövetelmények

A(z) Aspose.3D for .NET minden nagyobb operációs rendszeren támogatott. Csak győződjön meg arról, hogy rendelkezik a következő előfeltételekkel.

  • Microsoft Windows vagy egy kompatibilis operációs rendszer .NET Framework, .NET Core, Mono- Fejlesztői környezet, például a Microsoft Visual Studio- A projektben hivatkozott Aspose.3D for .NET
 

C# kódot a Lithophane létrehozásához PNG formátumba


//A feltöltendő eredeti kép és a mentés után a 3d fájl kimenet
    string file = "template.png";
    string output =System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".fbx";

//Hozzon létre néhány új paramétert
    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;//vászon szélessége 200,0 mm
    float height = width / td.Width * td.Height;
    float thickness = 10.0f;//10mm vastagság
    float layers = thickness / layerHeight;
    int widthSegs = (int)Math.Floor(width / nozzleSize);
    int heightSegs = (int)Math.Floor(height / nozzleSize);

//Számítási műveletek végrehajtása Mesh objektumokon
    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++;
        }
    }

//3D-s jelenet létrehozása és objektumok mentése
    var scene = new Scene(mesh);
    scene.Save(output, FileFormat.FBX7400ASCII);

//A hívás mintamódszere
    static float Sample(float[,] data, int w, int h, float x, float y)
    {
        return data[(int)(x * w), (int)(y * h)];
    }

//ToGrayscale metódus hívásához
    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;
    }
 
  • Körülbelül Aspose.3D for .NET API

    A Aspose.3D egy CAD és egy Gameware API, amely 3D fájlok betöltésére, módosítására és konvertálására szolgál. A API önálló, és nem igényel semmilyen 3D modellező vagy megjelenítő szoftvert. A API egyszerűen használható a következőhöz: Discreet3DS, WavefrontOBJ, STL (ASCII, bináris), Universal3D, FBX (ASCII, bináris), Collada, glTF, PLY, GLB, DirectX és további formátumok.

    Ingyenes alkalmazás a Lithophane létrehozásához PNG-re

    Tekintse meg élő bemutatóinkat Litofán PNG a következő előnyökkel.

      Nem kell letölteni vagy beállítani semmit
      Nem kell kódot írni vagy fordítani
      Csak töltsön fel PNG fájlt, és nyomja meg a "litofán" gombot
      Ha szükséges, töltsön le PNG fájlt a linkről

    Egyéb támogatott alkalmazások a Lithophane formátumok létrehozásához

    A C# használatával a litofánt sok más fájlformátumhoz is létrehozhatja, beleértve.

    JPEG (Közös Fényképészeti Szakértői Csoport)
    JPG (Közös Fényképészeti Szakértői Csoport)
    TGA (Truevision Advanced Raster Adapter)
    BMP (Bitmap)
    GIF (Grafikus csereformátum)
    TIFF (Címkézett képfájl formátum)