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

Crea tu Lithophane a JPEG a través de C#

Cree sus propias aplicaciones .NET para crear su litofanía en archivos JPEG mediante las API del lado del servidor.

Cómo crear su archivo Lithophane a JPEG usando C#

Para crear su litofano a archivo JPEG, usaremos

Aspose.3D for .NET

API, que es una plataforma rica en funciones, potente y fácil de usar API para C# que se utilizará para crear su litofanía. Abierto

NuGet

administrador de paquetes, busque Aspose.3D e instalar También puede usar el siguiente comando desde la Consola del administrador de paquetes.

Comando de la consola del Administrador de paquetes


PM> Install-Package Aspose.3D

Pasos para crear su Lithophane a JPEG a través de C#

Aspose.3D facilita a los desarrolladores la creación de su litofanía en el archivo JPEG con solo unas pocas líneas de código.

  • Cree algunos parámetros nuevos y cree un objeto de malla- Realizar operaciones computacionales en objetos de malla- El archivo JPEG carga la escena 3d a través de la clase Mesh- Llame al método Scene.Save con objeto

Requisitos del sistema

Aspose.3D for .NET es compatible con todos los principales sistemas operativos. Solo asegúrese de tener los siguientes requisitos previos.

  • Microsoft Windows o un sistema operativo compatible con .NET Framework, .NET Core, Mono- Entorno de desarrollo como Microsoft Visual Studio- Aspose.3D for .NET referenciado en su proyecto
 

C# código para crear su Lithophane a JPEG


//La imagen original que debe cargarse y la salida del archivo 3d después de guardar
    string file = "template.jpeg";
    string output =System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".fbx";

//Crear algunos parámetros nuevos
    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;//el ancho del lienzo es de 200,0 mm
    float height = width / td.Width * td.Height;
    float thickness = 10.0f;//10 mm de espesor
    float layers = thickness / layerHeight;
    int widthSegs = (int)Math.Floor(width / nozzleSize);
    int heightSegs = (int)Math.Floor(height / nozzleSize);

//Realizar operaciones computacionales en objetos de malla
    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 escena 3D y guarda objetos.
    var scene = new Scene(mesh);
    scene.Save(output, FileFormat.FBX7400ASCII);

//El método de muestra para llamar
    static float Sample(float[,] data, int w, int h, float x, float y)
    {
        return data[(int)(x * w), (int)(y * h)];
    }

//Método ToGrayscale para llamar
    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;
    }
 
  • Acerca de Aspose.3D for .NET API

    Aspose.3D es un CAD y Gameware API para cargar, modificar y convertir archivos 3D. API es independiente y no requiere ningún 3D software de modelado o renderizado. Uno puede usar fácilmente API para Discreet3DS, WavefrontOBJ, STL (ASCII, binario), Universal3D, FBX (ASCII, binario), Collada, glTF, PLY, GLB, DirectX y más formatos.

    Aplicación gratuita para crear tu Lithophane a JPEG

    Consulte nuestras demostraciones en vivo para JPEG de litofanía con los siguientes beneficios.

      No es necesario descargar ni configurar nada
      No es necesario escribir o compilar código
      Simplemente cargue el archivo JPEG y presione el botón "litofanía"
      Descargue el archivo JPEG desde el enlace, si es necesario

    Otra aplicación compatible para crear su litofanía en formatos

    Con C#, One también puede crear su litofanía en muchos otros formatos de archivo, incluidos.

    JPG (Joint Photographic Experts Group)
    PNG (Gráficos de red portátiles)
    TGA (Adaptador ráster avanzado Truevision)
    BMP (mapa de bits)
    GIF (Formato de intercambio gráfico)
    PELEA (Formato de archivo de imagen etiquetado)