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

Crea la tua litofania in BMP tramite C#

Crea le tue .NET app per creare la litofania in file BMP utilizzando le API lato server.

Come creare il tuo file Litophane in BMP utilizzando C#

Per creare il tuo file litofane in BMP, useremo

Aspose.3D for .NET

API che è una piattaforma API per C# ricca di funzionalità, potente e facile da usare da utilizzare per creare la tua litofania. Aprire

NuGet

gestore pacchetti, cerca Aspose.3D e installa. È inoltre possibile utilizzare il seguente comando dalla Console di gestione pacchetti.

Comando della console di gestione dei pacchetti


PM> Install-Package Aspose.3D

Passaggi per creare la litofania in BMP tramite C#

Aspose.3D consente agli sviluppatori di creare facilmente la litofania nel file BMP con poche righe di codice.

  • Crea alcuni nuovi parametri e crea un oggetto Mesh- Eseguire operazioni di calcolo su oggetti Mesh- Il file BMP carica la scena 3d tramite la classe Mesh- Chiama il metodo Scene.Save con l’oggetto

Requisiti di sistema

Aspose.3D for .NET è supportato su tutti i principali sistemi operativi. Assicurati solo di avere i seguenti prerequisiti.

  • Microsoft Windows o un sistema operativo compatibile con .NET Framework, .NET Core, Mono- Ambiente di sviluppo come Microsoft Visual Studio- Aspose.3D for .NET referenziato nel tuo progetto
 

C# codice per creare la tua litofania su BMP


//L'immagine originale che deve essere caricata e l'output del file 3d dopo il salvataggio
    string file = "template.bmp";
    string output =System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".fbx";

//Crea nuovi parametri
    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;//la larghezza della tela è 200,0 mm
    float height = width / td.Width * td.Height;
    float thickness = 10.0f;//Spessore 10 mm
    float layers = thickness / layerHeight;
    int widthSegs = (int)Math.Floor(width / nozzleSize);
    int heightSegs = (int)Math.Floor(height / nozzleSize);

//Eseguire operazioni di calcolo su oggetti 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++;
        }
    }

//Genera scene 3d e salva oggetti
    var scene = new Scene(mesh);
    scene.Save(output, FileFormat.FBX7400ASCII);

//Il metodo di esempio da chiamare
    static float Sample(float[,] data, int w, int h, float x, float y)
    {
        return data[(int)(x * w), (int)(y * h)];
    }

//Metodo ToGrayscale da chiamare
    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;
    }
 
  • Circa Aspose.3D for .NET API

    Aspose.3D è un CAD e un Gameware API per caricare, modificare e convertire 3D file. API è autonomo e non richiede alcun 3D software di modellazione o rendering. Si può facilmente usare API per Discreet3DS, WavefrontOBJ, STL (ASCII, Binary), Universal3D, FBX (ASCII, Binary), Collada, glTF, PLY, GLB, DirectX e altri formati.

    App gratuita per creare la tua litofania su BMP

    Controlla le nostre demo dal vivo su Litofano BMP con i seguenti vantaggi.

      Non è necessario scaricare o configurare nulla
      Non c\'è bisogno di scrivere o compilare codice
      Basta caricare il file BMP e premere il pulsante "litofane".
      Scarica il file BMP dal link, se necessario

    Altre app supportate per creare la tua litofania in formati

    Utilizzando C#, si può anche creare la litofania in molti altri formati di file, tra cui.

    JPEG (Gruppo congiunto di esperti fotografici)
    PNG (Grafica di rete portatile)
    TGA (Adattatore Raster Avanzato Truevision)
    JPG (Gruppo congiunto di esperti fotografici)
    GIF (Formato di scambio grafico)
    TIFF (Formato file immagine contrassegnato)