%global _empty_manifest_terminate_build 0 Name: python-PyScaffolder Version: 1.5.2.post1 Release: 1 Summary: Generate 3D mesh from implicit surface and an input mesh License: MIT License URL: https://github.com/nodtem66/Scaffolder Source0: https://mirrors.aliyun.com/pypi/web/packages/9b/42/13febeb309d5476e02cfdd65b46e27463eb97b57f0a9acf82329caeafc1a/PyScaffolder-1.5.2.post1.tar.gz %description # Scaffolder ![Build Status](https://github.com/nodtem66/Scaffolder/actions/workflows/binary.yml/badge.svg) [![Build Status](https://dev.azure.com/n66/PublicCI/_apis/build/status%2Fnodtem66.Scaffolder%20(Anaconda%20release)?branchName=master)](https://dev.azure.com/n66/PublicCI/_build/latest?definitionId=8&branchName=master) [![Anaconda](https://anaconda.org/nodtem66/scaffolder/badges/version.svg)](https://anaconda.org/nodtem66/scaffolder) ![Last update](https://anaconda.org/nodtem66/scaffolder/badges/latest_release_date.svg) ![Platform](https://anaconda.org/nodtem66/scaffolder/badges/platforms.svg) ![Scaffolder Logo](https://github.com/nodtem66/Scaffolder/raw/master/docs/images/scaffolder_logo.jpg) Transform a 3D model from STL/PLY/OFF/OBJ to a porous model with implicit function (e.g., Schwarz P/ Gyroid). [Documentation](https://nodtem66.github.io/Scaffolder) ## Binary installation * Download from [Github Releases page](https://github.com/nodtem66/Scaffolder/releases) or * Install from Anaconda ```bash conda install -c nodtem66 scaffolder ``` ## Python supports ```bash pip install PyScaffolder ``` ## Blender addon - Install the `Scaffolder-blender.zip` downloaded from [Release](https://github.com/nodtem66/Scaffolder/releases/tag/v1.5.1) - The plugin will appear at `View > Sidebar` or `Press N` ## Screenshots - **Blender plugin with PyScaffolder** ![Blender plugin](https://github.com/nodtem66/Scaffolder/raw/master/docs/images/blender-plugin.gif) - **The figure of patterns implemented in this program** ![TPMS Patterns](https://github.com/nodtem66/Scaffolder/raw/master/docs/images/patterns.jpg) - **The examples of generated porous scaffold** ![Examples porous scaffold](https://github.com/nodtem66/Scaffolder/raw/master/docs/images/examples.jpg) ## Dependencies - [libigl](https://libigl.github.io/) - The computational geometry library - [vcglib](https://github.com/cnr-isti-vclab/vcglib) - The mesh utility library - [sol2](https://github.com/ThePhD/sol2) - Lua script integration - [tbb](https://github.com/oneapi-src/oneTBB) - Threading library ## How it works - Read STL file and finding the boundary box - Generate the grid and calculate the winding number with STL mesh - Use winding number to determine the condition for [implicit isosurface function](https://wewanttolearn.wordpress.com/2019/02/03/triply-periodic-minimal-surfaces/) - Generate the isosurface field in the same-size grid - Perform [Dual marching cube](https://github.com/dominikwodniok/dualmc) to construct the manifold - Clean up the duplicated vertices or faces, and abandon the group of connected faces having the diameter below the setting - Export to the target 3D format ## FAQ ### How can I find the dataset from a study of coffient and isolevel? The raw dataset is available at [Mendeley Data](https://data.mendeley.com/datasets/sbxr7xxvnd/2). The program that used to generate that data was released at [Github repository](https://github.com/nodtem66/Scaffolder). You can also find the interactive visualization at [Google Colab](https://colab.research.google.com/github/nodtem66/Scaffolder/blob/master/data/data_visualization.ipynb) ### Where is the implicit functions were defined in the C++ sourcecode? https://github.com/nodtem66/Scaffolder/blob/master/include/implicit_function.h ### Can you suggest alternative softwares like this program? - Rhino (Grasshopper) - nTopology - Hyperganic ## References - [Minimal surface Blog](https://minimalsurfaces.blog/) - Dual marching cube - [dualmc](https://github.com/dominikwodniok/dualmc) - Command line parser - [cxxopts](https://github.com/jarro2783/cxxopts) - Progress bar - [ProgressBar](https://github.com/prakhar1989/progress-cpp) ## Citation [Computational method and program for generating a porous scaffold based on implicit surfaces](https://doi.org/10.1016/j.cmpb.2021.106088) ```bibtex @article{IAMSAMANG2021106088, title = {Computational method and program for generating a porous scaffold based on implicit surfaces}, journal = {Computer Methods and Programs in Biomedicine}, volume = {205}, pages = {106088}, year = {2021}, issn = {0169-2607}, doi = {https://doi.org/10.1016/j.cmpb.2021.106088}, url = {https://www.sciencedirect.com/science/article/pii/S0169260721001632}, author = {Jirawat Iamsamang and Phornphop Naiyanetr}, keywords = {Triply periodic minimal surface (TPMS), Implicit surface, Porous scaffold, Pore size, Porosity} } ``` %package -n python3-PyScaffolder Summary: Generate 3D mesh from implicit surface and an input mesh Provides: python-PyScaffolder BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip BuildRequires: python3-cffi BuildRequires: gcc BuildRequires: gdb %description -n python3-PyScaffolder # Scaffolder ![Build Status](https://github.com/nodtem66/Scaffolder/actions/workflows/binary.yml/badge.svg) [![Build Status](https://dev.azure.com/n66/PublicCI/_apis/build/status%2Fnodtem66.Scaffolder%20(Anaconda%20release)?branchName=master)](https://dev.azure.com/n66/PublicCI/_build/latest?definitionId=8&branchName=master) [![Anaconda](https://anaconda.org/nodtem66/scaffolder/badges/version.svg)](https://anaconda.org/nodtem66/scaffolder) ![Last update](https://anaconda.org/nodtem66/scaffolder/badges/latest_release_date.svg) ![Platform](https://anaconda.org/nodtem66/scaffolder/badges/platforms.svg) ![Scaffolder Logo](https://github.com/nodtem66/Scaffolder/raw/master/docs/images/scaffolder_logo.jpg) Transform a 3D model from STL/PLY/OFF/OBJ to a porous model with implicit function (e.g., Schwarz P/ Gyroid). [Documentation](https://nodtem66.github.io/Scaffolder) ## Binary installation * Download from [Github Releases page](https://github.com/nodtem66/Scaffolder/releases) or * Install from Anaconda ```bash conda install -c nodtem66 scaffolder ``` ## Python supports ```bash pip install PyScaffolder ``` ## Blender addon - Install the `Scaffolder-blender.zip` downloaded from [Release](https://github.com/nodtem66/Scaffolder/releases/tag/v1.5.1) - The plugin will appear at `View > Sidebar` or `Press N` ## Screenshots - **Blender plugin with PyScaffolder** ![Blender plugin](https://github.com/nodtem66/Scaffolder/raw/master/docs/images/blender-plugin.gif) - **The figure of patterns implemented in this program** ![TPMS Patterns](https://github.com/nodtem66/Scaffolder/raw/master/docs/images/patterns.jpg) - **The examples of generated porous scaffold** ![Examples porous scaffold](https://github.com/nodtem66/Scaffolder/raw/master/docs/images/examples.jpg) ## Dependencies - [libigl](https://libigl.github.io/) - The computational geometry library - [vcglib](https://github.com/cnr-isti-vclab/vcglib) - The mesh utility library - [sol2](https://github.com/ThePhD/sol2) - Lua script integration - [tbb](https://github.com/oneapi-src/oneTBB) - Threading library ## How it works - Read STL file and finding the boundary box - Generate the grid and calculate the winding number with STL mesh - Use winding number to determine the condition for [implicit isosurface function](https://wewanttolearn.wordpress.com/2019/02/03/triply-periodic-minimal-surfaces/) - Generate the isosurface field in the same-size grid - Perform [Dual marching cube](https://github.com/dominikwodniok/dualmc) to construct the manifold - Clean up the duplicated vertices or faces, and abandon the group of connected faces having the diameter below the setting - Export to the target 3D format ## FAQ ### How can I find the dataset from a study of coffient and isolevel? The raw dataset is available at [Mendeley Data](https://data.mendeley.com/datasets/sbxr7xxvnd/2). The program that used to generate that data was released at [Github repository](https://github.com/nodtem66/Scaffolder). You can also find the interactive visualization at [Google Colab](https://colab.research.google.com/github/nodtem66/Scaffolder/blob/master/data/data_visualization.ipynb) ### Where is the implicit functions were defined in the C++ sourcecode? https://github.com/nodtem66/Scaffolder/blob/master/include/implicit_function.h ### Can you suggest alternative softwares like this program? - Rhino (Grasshopper) - nTopology - Hyperganic ## References - [Minimal surface Blog](https://minimalsurfaces.blog/) - Dual marching cube - [dualmc](https://github.com/dominikwodniok/dualmc) - Command line parser - [cxxopts](https://github.com/jarro2783/cxxopts) - Progress bar - [ProgressBar](https://github.com/prakhar1989/progress-cpp) ## Citation [Computational method and program for generating a porous scaffold based on implicit surfaces](https://doi.org/10.1016/j.cmpb.2021.106088) ```bibtex @article{IAMSAMANG2021106088, title = {Computational method and program for generating a porous scaffold based on implicit surfaces}, journal = {Computer Methods and Programs in Biomedicine}, volume = {205}, pages = {106088}, year = {2021}, issn = {0169-2607}, doi = {https://doi.org/10.1016/j.cmpb.2021.106088}, url = {https://www.sciencedirect.com/science/article/pii/S0169260721001632}, author = {Jirawat Iamsamang and Phornphop Naiyanetr}, keywords = {Triply periodic minimal surface (TPMS), Implicit surface, Porous scaffold, Pore size, Porosity} } ``` %package help Summary: Development documents and examples for PyScaffolder Provides: python3-PyScaffolder-doc %description help # Scaffolder ![Build Status](https://github.com/nodtem66/Scaffolder/actions/workflows/binary.yml/badge.svg) [![Build Status](https://dev.azure.com/n66/PublicCI/_apis/build/status%2Fnodtem66.Scaffolder%20(Anaconda%20release)?branchName=master)](https://dev.azure.com/n66/PublicCI/_build/latest?definitionId=8&branchName=master) [![Anaconda](https://anaconda.org/nodtem66/scaffolder/badges/version.svg)](https://anaconda.org/nodtem66/scaffolder) ![Last update](https://anaconda.org/nodtem66/scaffolder/badges/latest_release_date.svg) ![Platform](https://anaconda.org/nodtem66/scaffolder/badges/platforms.svg) ![Scaffolder Logo](https://github.com/nodtem66/Scaffolder/raw/master/docs/images/scaffolder_logo.jpg) Transform a 3D model from STL/PLY/OFF/OBJ to a porous model with implicit function (e.g., Schwarz P/ Gyroid). [Documentation](https://nodtem66.github.io/Scaffolder) ## Binary installation * Download from [Github Releases page](https://github.com/nodtem66/Scaffolder/releases) or * Install from Anaconda ```bash conda install -c nodtem66 scaffolder ``` ## Python supports ```bash pip install PyScaffolder ``` ## Blender addon - Install the `Scaffolder-blender.zip` downloaded from [Release](https://github.com/nodtem66/Scaffolder/releases/tag/v1.5.1) - The plugin will appear at `View > Sidebar` or `Press N` ## Screenshots - **Blender plugin with PyScaffolder** ![Blender plugin](https://github.com/nodtem66/Scaffolder/raw/master/docs/images/blender-plugin.gif) - **The figure of patterns implemented in this program** ![TPMS Patterns](https://github.com/nodtem66/Scaffolder/raw/master/docs/images/patterns.jpg) - **The examples of generated porous scaffold** ![Examples porous scaffold](https://github.com/nodtem66/Scaffolder/raw/master/docs/images/examples.jpg) ## Dependencies - [libigl](https://libigl.github.io/) - The computational geometry library - [vcglib](https://github.com/cnr-isti-vclab/vcglib) - The mesh utility library - [sol2](https://github.com/ThePhD/sol2) - Lua script integration - [tbb](https://github.com/oneapi-src/oneTBB) - Threading library ## How it works - Read STL file and finding the boundary box - Generate the grid and calculate the winding number with STL mesh - Use winding number to determine the condition for [implicit isosurface function](https://wewanttolearn.wordpress.com/2019/02/03/triply-periodic-minimal-surfaces/) - Generate the isosurface field in the same-size grid - Perform [Dual marching cube](https://github.com/dominikwodniok/dualmc) to construct the manifold - Clean up the duplicated vertices or faces, and abandon the group of connected faces having the diameter below the setting - Export to the target 3D format ## FAQ ### How can I find the dataset from a study of coffient and isolevel? The raw dataset is available at [Mendeley Data](https://data.mendeley.com/datasets/sbxr7xxvnd/2). The program that used to generate that data was released at [Github repository](https://github.com/nodtem66/Scaffolder). You can also find the interactive visualization at [Google Colab](https://colab.research.google.com/github/nodtem66/Scaffolder/blob/master/data/data_visualization.ipynb) ### Where is the implicit functions were defined in the C++ sourcecode? https://github.com/nodtem66/Scaffolder/blob/master/include/implicit_function.h ### Can you suggest alternative softwares like this program? - Rhino (Grasshopper) - nTopology - Hyperganic ## References - [Minimal surface Blog](https://minimalsurfaces.blog/) - Dual marching cube - [dualmc](https://github.com/dominikwodniok/dualmc) - Command line parser - [cxxopts](https://github.com/jarro2783/cxxopts) - Progress bar - [ProgressBar](https://github.com/prakhar1989/progress-cpp) ## Citation [Computational method and program for generating a porous scaffold based on implicit surfaces](https://doi.org/10.1016/j.cmpb.2021.106088) ```bibtex @article{IAMSAMANG2021106088, title = {Computational method and program for generating a porous scaffold based on implicit surfaces}, journal = {Computer Methods and Programs in Biomedicine}, volume = {205}, pages = {106088}, year = {2021}, issn = {0169-2607}, doi = {https://doi.org/10.1016/j.cmpb.2021.106088}, url = {https://www.sciencedirect.com/science/article/pii/S0169260721001632}, author = {Jirawat Iamsamang and Phornphop Naiyanetr}, keywords = {Triply periodic minimal surface (TPMS), Implicit surface, Porous scaffold, Pore size, Porosity} } ``` %prep %autosetup -n PyScaffolder-1.5.2.post1 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-PyScaffolder -f filelist.lst %dir %{python3_sitearch}/* %files help -f doclist.lst %{_docdir}/* %changelog * Fri Jun 09 2023 Python_Bot - 1.5.2.post1-1 - Package Spec generated