Skip to content

Commit

Permalink
readme
Browse files Browse the repository at this point in the history
  • Loading branch information
Dnyarri committed Jan 13, 2025
1 parent b3099ee commit afe53f2
Show file tree
Hide file tree
Showing 2 changed files with 60 additions and 32 deletions.
48 changes: 31 additions & 17 deletions README.RU.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

| [EN](README.md) | RU |
| [EN](README.md) | 『✅RU』 |
| ---- | ---- |

# Конвертер из растровых картинок в 3D-сетку треугольников
Expand All @@ -8,34 +8,48 @@

[![Example of img2mesh output rendering](https://dnyarri.github.io/imgmesh/640/img2mesh.png)](https://dnyarri.github.io/img2mesh.html)

Содержимое:
## Содержимое

- **img2mesh** - удобный GUI, импортирующий все функции из программ ниже.
- **img2mesh** - удобный GUI, объединяющий все функции из программ ниже.

- **img2pov** - конвертер PNG в POVRay scene. Полученная сцена содержит 3D-сетку, объект box (CSG intersection), создающий боковые стенки и дно, свет и камеру. Текстуры заявлены в declare отдельно для удобства редактирования.
- **img2pov** - конвертер изображений в сцену POVRay. Полученная сцена содержит 3D-сетку, объект box (CSG intersection), создающий боковые стенки и дно, свет и камеру. Текстуры заявлены в declare отдельно для удобства редактирования.

- **img2obj** - конвертер PNG в Wavefront OBJ. Экспортированный файл содержит только 3D-сетку.
- **img2obj** - конвертер изображений в Wavefront OBJ. Экспортированный файл содержит только 3D-сетку.

- **img2dxf** - конвертер PNG в Autodesk DXF. Экспортированный файл содержит только 3D-сетку.
- **img2dxf** - конвертер изображений в Autodesk DXF. Экспортированный файл содержит только 3D-сетку.

- **img2stl** - конвертер PNG в STL. Экспортированный файл содержит 3D-сетку и боковые и нижнюю поверхности в виде сетки, поскольку они необходимы 3D-принтеру.

Следует заметить, что img2pov, img2obj и img2stl могут как работать самостоятельно по отдельности, так и быть удобно импортированы во внешнюю программу (как это сделано в img2mesh).
- **img2stl** - конвертер изображений в STL. Экспортированный файл содержит 3D-сетку и боковые и нижнюю поверхности в виде сетки, поскольку они необходимы 3D-принтеру.

[![Preview of img2mesh output files in one folder](https://dnyarri.github.io/imgmesh/printscreen.png)](https://dnyarri.github.io/img2mesh.html)

В данной директории находится наиболее свежая версия программы; несколько более старых закопаны в *"old_versions"* для археологов будущего.
## Внешние зависимости

1. [PyPNG](https://gitlab.com/drj11/pypng). Копия включена в дистрибутив img2mesh.
2. [PyPNM](https://pypi.org/project/PyPNM/). Копия включена в дистрибутив img2mesh.
3. Tkinter. Входит в состав типового дистрибутива CPython.

## Installation and Usage

Комплект программ самодостаточен и должен работать сразу после распаковки при наличии на машине Python. Программы оборудованы минималистическим GUI, в результате всё, что вы должны сделать после запуска программы, это с помощью окна "Open..." выбрать и открыть файл PNG, или PPM, или PGM, затем с помощью окна "Save..." выбрать файл для сохранения, подождать, пока программа отработает и закроется, затем открыть полученный файл в подходящей 3D-программе.

### Для разработчиков

Модуль list2mesh, включающий функции 3D-экспорта, может быть свободно использован другими разработчиками.

## Литература

1. [POV-Ray](https://www.povray.org/) и POV SDL.

*Зависимости от внешних библиотек:* [PyPNG](https://gitlab.com/drj11/pypng), Tkinter. Первая лежит рядом с программой в репозитории, и, слава cоздателю, способна работать в таком виде без установки; вторая входит во все типовые дистрибутивы Python.
2. [Wavefront Object Files (.obj)](https://paulbourke.net/dataformats/obj/obj_spec.pdf) в [Paul Bourke collection](https://paulbourke.net/dataformats/).

*Инструкция по эксплуатации:* программы оборудованы минималистическим GUI, в результате всё, что вы должны сделать после запуска программы, это с помощью окна "Open..." выбрать и открыть файл PNG, с помощью окна "Save..." выбрать файл для сохранения, подождать, пока программа отработает и закроется, затем открыть полученный файл в подходящей программе.
3. [Stereo Lithography Files (.stl)](https://paulbourke.net/dataformats/stl/) [*ibid*](https://paulbourke.net/dataformats/).

Прочие программы:
4. [DXF Reference](https://images.autodesk.com/adsk/files/autocad_2012_pdf_dxf-reference_enu.pdf) от Autodesk, Inc.

[Вебсайт Жабы Огромной Умственной Силы](https://dnyarri.github.io/)
### Родственное

Во избежание перебоев проект зеркалится:
[Dnyarri website](https://dnyarri.github.io) - остальной товар от Жабы Огромной Умственной Силы.

[github Dnyarri](https://github.com/Dnyarri/img2mesh)
[github Dnyarri](https://github.com/Dnyarri/img2mesh).

[gitflic Dnyarri](https://gitflic.ru/project/dnyarri/img2mesh)
[gitflic Dnyarri](https://gitflic.ru/project/dnyarri/img2mesh).
44 changes: 29 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

| EN | [RU](README.RU.md) |
| 『✅EN』 | [RU](README.RU.md) |
| ---- | ---- |

# Bitmap to POVRay 3D triangle mesh converter
Expand All @@ -8,33 +8,47 @@ Python program for conversion of bitmap heightfield (in [PNG format](http://www.

[![Example of img2mesh output rendering](https://dnyarri.github.io/imgmesh/640/img2mesh.png)](https://dnyarri.github.io/img2mesh.html)

Project content:
## Project content

- **img2mesh** - suitable GUI frontend linked to all programs below.
- **img2mesh** - suitable GUI frontend comprising all programs and functions.

- **img2pov** - PNG to POVRay scene converter. Exported scene contains 3D mesh, bounding box (CSG intersection) to make it solid object with interior, camera and light. Textures are declared separately and easy to edit.
- **img2pov** - Image to POV-Ray scene converter. Exported scene contains 3D mesh, bounding box (CSG intersection) to make it solid object with interior, camera and light. Textures are declared separately and easy to edit.

- **img2obj** - PNG to Wavefront OBJ converter. Exported file contains 3D mesh only.
- **img2obj** - Image to Wavefront OBJ converter. Exported file contains 3D mesh only.

- **img2dxf** - PNG to Autodesk DXF converter. Exported file contains 3D mesh only.
- **img2dxf** - Image to Autodesk DXF converter. Exported file contains 3D mesh only.

- **img2stl** - PNG to STL converter. Exported file contain 3D mesh with side and bottom meshes necessary for 3D printer software.

Note that img2pov, img2obj and img2stl may be both run as standalone programs and be imported into some other software (currently in main img2mesh).
- **img2stl** - Image to STL converter. Exported file contain 3D mesh with side and bottom meshes necessary for 3D printer software.

[![Preview of img2mesh output files in one folder](https://dnyarri.github.io/imgmesh/printscreen.png)](https://dnyarri.github.io/img2mesh.html)

Current dir contain most recent version of img2mesh program. Some previous versions are saved in *"old_versions"* for future alien archeologist to dig.
## Dependencies

1. [PyPNG](https://gitlab.com/drj11/pypng). Copy included into current img2mesh distribution.
2. [PyPNM](https://pypi.org/project/PyPNM/). Copy included into current img2mesh distribution.
3. Tkinter. Included into standard CPython distribution.

## Installation and Usage

Programs distribution is rather self-contained and is supposed to run right out of the box. Programs are equipped with minimal GUI, so all you have to do after starting a program is use "Open..." dialog to open image file, then use "Save..." to name exported file to be created, then wait while program does the job, then open resulting file with suitable 3D software and render the scene.

### For developers

Module list2mesh, including 3D-export functions, may be copied and used by other developers.

## References

1. [POV-Ray](https://www.povray.org/) and POV SDL specifications.

*Dependencies:* [PyPNG](https://gitlab.com/drj11/pypng), Tkinter. The former is placed in this repo and, thank the Maker, will work right after downloading; the latter included in all typical Python installation.
2. [Wavefront Object Files (.obj)](https://paulbourke.net/dataformats/obj/obj_spec.pdf) specs from [Paul Bourke collection](https://paulbourke.net/dataformats/).

*Usage:* programs are equipped with minimal GUI, so all you have to do after starting the program is use standard "Open..." dialog to open image file, then use standard "Save..." to name exported file to be created, then wait while program does the job, then open resulting file with suitable software and render the scene.
3. [Stereo Lithography Files (.stl)](https://paulbourke.net/dataformats/stl/) brief description [*ibid*](https://paulbourke.net/dataformats/).

More software at:
4. [DXF Reference](https://images.autodesk.com/adsk/files/autocad_2012_pdf_dxf-reference_enu.pdf) by Autodesk, Inc.

[Dnyarri website](https://dnyarri.github.io/)
### Related

Project mirrors:
[Dnyarri website](https://dnyarri.github.io) - the rest of Dnyarri stuff with previews etc.

[github Dnyarri](https://github.com/Dnyarri/img2mesh)

Expand Down

0 comments on commit afe53f2

Please sign in to comment.