Interfaces between napari and pymeshlab library to allow import, export and construction of surfaces.

Overview

napari-pymeshlab

License PyPI Python Version tests codecov napari hub

Interfaces between napari and the pymeshlab library to allow import, export and construction of surfaces.

This is a WIP and feature requests are welcome. Please check PyMeshLab for possible features

Feature list


Installation

You can install napari-pymeshlab via pip:

pip install napari-pymeshlab

Contributing

Contributions are very welcome. Tests can be run with tox, please ensure the coverage at least stays the same before you submit a pull request.

License

Distributed under the terms of the MIT license, "napari-pymeshlab" is free and open source software

Issues

If you encounter any problems, please file an issue along with a detailed description.

You might also like...
Blender addon, import and update mixamo animation

This is a blender addon for import and update mixamo animations.

 YBlade - Import QBlade blades into Fusion 360
YBlade - Import QBlade blades into Fusion 360

YBlade - Import QBlade blades into Fusion 360 Simple script for Fusion 360 that takes QBlade blade description and constructs the blade: Usage First,

Why write code when you can import it directly from GitHub Copilot?

Copilot Importer Why write code when you can import it directly from GitHub Copilot? What is Copilot Importer? The copilot python module will dynamica

Blender addon to import images as meshes
Blender addon to import images as meshes

ImagesAsMesh Blender addon to import images as meshes. Inspired by: ImagesAsPlanes Installation It's like just about every other Blender addon. Downlo

Import Apex legends mprt files exported from Legion
Import Apex legends mprt files exported from Legion

Apex-mprt-importer-for-Blender Import Apex legends mprt files exported from Legion. REQUIRES CAST IMPORTER Usage: Use a VPK extracter to extract the m

Voldemort's Python import helper

importmagician Voldemort's Python import helper pip install importmagician Import from uninstalled Python directories Say you have a directory (relat

It is convenient to quickly import Python packages from the network.

It is convenient to quickly import Python packages from the network.

Import some key/value data to Prometheus custom-built Node Exporter in Python
Import some key/value data to Prometheus custom-built Node Exporter in Python

About the app In one particilar project, i had to import some key/value data to Prometheus. So i have decided to create my custom-built Node Exporter

A python package for batch import of resume attachments to be parsed in HrFlow.

HrFlow Importer Description A python package for batch import of resume attachments to be parsed in HrFlow. hrflow-importer is an open-source project

Comments
  • Calling the reader

    Calling the reader

    First of all, thanks for the plugin.

    I have an obj surface that I want to import and visualize in napari, however, I tried:

    from napari_pymeshlab import get_mesh_reader
    surface = ("E:/3D-Edited.obj")
    viewer.add_surface(get_mesh_reader(surface), name='surface')
    

    But I got the following error:

    ---------------------------------------------------------------------------
    TypeError                                 Traceback (most recent call last)
    Input In [3], in <module>
    ----> 1 viewer.add_surface(get_mesh_reader(surface), name='surface')
    
    File ~\.conda\envs\bio11\lib\site-packages\napari\components\viewer_model.py:4, in add_surface(self, data, colormap, contrast_limits, gamma, name, metadata, scale, translate, rotate, shear, affine, opacity, blending, shading, visible, cache, experimental_clipping_planes, wireframe, normals)
          1 from __future__ import annotations
          3 import inspect
    ----> 4 import itertools
          5 import os
          6 import warnings
    
    File ~\.conda\envs\bio11\lib\site-packages\napari\layers\surface\surface.py:169, in Surface.__init__(self, data, colormap, contrast_limits, gamma, name, metadata, scale, translate, rotate, shear, affine, opacity, blending, shading, visible, cache, experimental_clipping_planes, wireframe, normals)
        145 def __init__(
        146     self,
        147     data,
       (...)
        166     normals=None,
        167 ):
    --> 169     ndim = data[0].shape[1]
        171     super().__init__(
        172         data,
        173         ndim,
       (...)
        185         experimental_clipping_planes=experimental_clipping_planes,
        186     )
        188     self.events.add(
        189         interpolation=Event,
        190         rendering=Event,
        191         shading=Event,
        192     )
    
    TypeError: 'function' object is not subscriptable
    C:\Users\Linux\.conda\envs\bio11\lib\site-packages\ipykernel\kernelbase.py:674: RuntimeWarning: coroutine 'InProcessKernel._abort_queues' was never awaited!`
    

    I know is a newbie question.

    Thanks in advance for your help.

    opened by EdwinHernandezG 5
  • Add functions for smoothing surfaces and measuring Gaussian curvature

    Add functions for smoothing surfaces and measuring Gaussian curvature

    Hi Zach @zacsimile ,

    I'm just sending a PR with some functionality. I had developed it in another plugin, but not published. I think these functions would fit well here.

    • convex_hull
    • laplacian_smooth
    • taubin_smooth
    • simplification_clustering_decimation
    • colorize_curvature_apss

    Furthermore, I'm suggesting to change the license of your plugin to GPL, because pymeshlab is licensed GPL. So we kind of have to use GPL as well. :-/ https://github.com/cnr-isti-vclab/PyMeshLab/blob/master/LICENSE

    Please let me know what you think!

    Best, Robert

    opened by haesleinhuepf 4
  • napari-hub website lacks documentation

    napari-hub website lacks documentation

    Hi @zacsimile ,

    the napari-hub page of the plugin lacks documentation. If you delete .napari/description.md and push an update to pypi, then the readme.md will be shown.

    If you're busy, I'm happy to send a PR :-)

    Best, Robert

    opened by haesleinhuepf 3
  • fix link to screenshot

    fix link to screenshot

    Hi @zacsimile ,

    this should fix the broken link to the image on the napari hub. It's always good if the screenshots are visible ;-)

    closes #3

    Also for fixing this, a deployment to pypi is necessary.

    Thanks! Robert

    opened by haesleinhuepf 0
Releases(v0.0.5)
Owner
Zach Marin
Zach Marin
Template for pre-commit hooks

Pre-commit hook template This repo is a template for a pre-commit hook. Try it out by running: pre-commit try-repo https://github.com/stefsmeets/pre-c

Stef Smeets 1 Dec 09, 2021
Tool for working with Direct System Calls in Cobalt Strike's Beacon Object Files (BOF) via Syswhispers2

Tool for working with Direct System Calls in Cobalt Strike's Beacon Object Files (BOF) via Syswhispers2

150 Dec 31, 2022
Hello World in different languages !

Hello World And some Examples in different Programming Languages This repository contains a big list of programming languages and some examples for th

AmirHossein Mohammadi 131 Dec 26, 2022
Final Fantasy XIV Auto House Clicker

Final Fantasy XIV Auto House Clicker

KanameS 0 Mar 31, 2022
This is the improvised version of Dobot Magician which can be implemented for Dobot M1

pydobotM1 This is the edited driver for Dobot M1 version of the original pydobot library intended for use with the Dobot Magician. Here's what you nee

Shaik Abdullah 2 Jul 11, 2022
Alerts for Western Australian Covid-19 exposure locations via email and Slack

WA Covid Mailer Sends alerts from Healthy WA's Covid19 Exposure Locations via email and slack. Setup Edit the configuration items in wacovidmailer.py

13 Mar 29, 2022
A test repository to build a python package and publish the package to Artifact Registry using GCB

A test repository to build a python package and publish the package to Artifact Registry using GCB. Then have the package be a dependency in a GCF function.

1 Feb 09, 2022
BlackMamba is a multi client C2/post exploitation framework

BlackMamba is a multi client C2/post exploitation framework with some spyware features. Powered by Python 3.8.6 and QT Framework.

Gustavo 873 Dec 29, 2022
Monochrome's API, implemented with Deta Base and Deta Drive.

Monochrome Monochrome's API, implemented with Deta Base and Deta Drive. Create a free account on Deta to test this out! Most users will prefer the Mon

Monochrome 5 Sep 22, 2022
Simple Kahoot Botter.

Kahoot A simple Botter made in Python 3 for Kahoot.com. Also sorry for the shitty code lol. How to Run You need Python 3 installed on your device. Aft

7 Jun 29, 2022
Just a simple python script to generate graphs of salt state requisites.

saltstatevis Just a simple python script to generate graphs of salt state requisites. Installation Requirements You will need to install graphviz to r

Dwayn Matthies 3 May 04, 2022
Statically typed BNF with semantic actions; A frontend of frontend frameworks; Use your grammar everywhere.

Statically typed BNF with semantic actions; A frontend of frontend frameworks; Use your grammar everywhere.

Taine Zhao 56 Dec 14, 2022
Types for the Rasterio package

types-rasterio Types for the rasterio package A work in progress Install Not yet published to PyPI pip install types-rasterio These type definitions

Kyle Barron 7 Sep 10, 2021
Remove Sheet Protection from .xlsx files. Easily.

🔓 Excel Sheet Unlocker Remove sheet protection from .xlsx files. How to use Run Run the script/packaged executable from the command line. Universal u

Daniel 3 Nov 16, 2022
Repositório contendo atividades no curso de desenvolvimento de sistemas no SENAI

SENAI-DES Este é um repositório contendo as atividades relacionadas ao curso de desenvolvimento de sistemas no SENAI. Se é a primeira vez em contato c

Abe Hidek 4 Dec 06, 2022
Scraper pour les offres de stage Tesla et les notes sur Oasis (Polytech Paris-Saclay) sous forme de bot Discord

Scraper pour les offres de stage Tesla et les notes sur Oasis (Polytech Paris-Saclay) sous forme de bot Discord

Alexandre Malfreyt 1 Jan 21, 2022
The ldapconsole script allows you to perform custom LDAP requests to a Windows domain

ldapconsole The ldapconsole script allows you to perform custom LDAP requests to a Windows domain. Features Authenticate with password Authenticate wi

Podalirius 38 Dec 09, 2022
Telop - Encode and decode messages using an interpretation of the telegraphic code devised by José María Mathé

telop Telop (TELégrafoÓPtico) - Utilidad para codificar y descodificar mensajes de texto empleando una interpretación del código telegráfico ideado po

Ricardo F. 4 Nov 01, 2022
A python script made for personal use to monitor for sports card restocks on target.com since they are sold out often

TargetProductMonitor A python script made for personal use to monitor for sports card resocks on target.com since they are sold out often. When a rest

Bryan Lorden 2 Jul 31, 2022
Cylc: a workflow engine for cycling systems

Cylc: a workflow engine for cycling systems. Repository master branch: core meta-scheduler component of cylc-8 (in development); Repository 7.8.x branch: full cylc-7 system.

The Cylc Workflow Engine 205 Dec 20, 2022