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
A tool for light-duty persistent memoization of API calls

JSON Memoize What is this? json_memoize is a straightforward tool for light-duty persistent memoization, created with API calls in mind. It stores the

1 Dec 11, 2021
Hspice-Wave-Generator is a tool used to quickly generate stimuli souces of hspice format

Hspice-Wave-Generator is a tool used to quickly generate stimuli souces of hspice format. All the stimuli sources are based on `pwl` function of HSPICE and the specific complex operations of writing

3 Aug 02, 2022
Certipy is a Python tool to enumerate and abuse misconfigurations in Active Directory Certificate Services (AD CS).

Certipy Certipy is a Python tool to enumerate and abuse misconfigurations in Active Directory Certificate Services (AD CS). Based on the C# variant Ce

ollypwn 1.3k Jan 01, 2023
List of resources for learning Category Theory

A curated list of resources for studying category theory. As resources aimed at mathematicians are abundant, this list is aimed at materials whose target audience is not people with a graduate-level

Bruno Gavranović 100 Jan 01, 2023
🌌 Economics Observatory Visualisation Repository

Economics Observatory Visualisation Repository Website | Visualisations | Data | Here you will find all the data visualisations and infographics attac

Economics Observatory 3 Dec 14, 2022
Schemdule is a tiny tool using script as schema to schedule one day and remind you to do something during a day.

Schemdule is a tiny tool using script as schema to schedule one day and remind you to do something during a day. Platform Python Install Use pip: pip

StardustDL 4 Sep 13, 2021
A Notifier Program that Notifies you to relax your eyes Every 15 Minutes👀

Every 15 Minutes is an application that is used to Notify you to Relax your eyes Every 15 Minutes, This is fully made with Python and also with the us

FSP Gang s' YT 2 Nov 11, 2021
Number calculator application.

Number calculator application.

Michael J Bailey 3 Oct 08, 2021
A free website that keeps the people informed about housing and evictions.

Eviction Tracker Currently helping verify detainer warrant data for middle Tennessee - via Middle TN DSA - Red Door Collective Features Presents data

Red Door Collective 7 Dec 14, 2022
Sodium is a general purpose programming language which is instruction-oriented

Sodium is a general purpose programming language which is instruction-oriented (a new programming concept that we are developing and devising)

Satin Wuker 22 Jan 11, 2022
[x]it! support for working with todo and check list files in Sublime Text

[x]it! for Sublime Text This Sublime Package provides syntax-highlighting, shortcuts, and auto-completions for [x]it! files. Features Syntax highlight

Jan Heuermann 18 Sep 19, 2022
Nimbus - Open Source Cloud Computing Software - 100% Apache2 licensed

⚠️ The Nimbus infrastructure project is no longer under development. ⚠️ For more information, please read the news announcement. If you are interested

Nimbus 194 Jun 30, 2022
Stocks Trading News Alert Using Python

Stocks-Trading-News-Alert-Using-Python Ever Thought of Buying Shares of your Dream Company, When their stock price got down? But It is not possible to

Ayush Verma 3 Jul 29, 2022
Collection of script & resources for Foundry's Nuke software.

Author: Liam Collod. Collections of scripting stuff I wrote for Foundry's Nuke software. Utilisation You can have a look at the README.md file in each

Liam Collod 1 May 14, 2022
This Curve Editor, written by Jehee Lee in 2015

Splines Abstract This Curve Editor, written by Jehee Lee in 2015, is a freeware. You can use, modify, redistribute the code without restriction. This

Movement Research Lab 8 Mar 11, 2022
XAC HID Gamepad implementation for CircuitPython 7 or above.

CircuitPython_XAC_Gamepad Setup process Install CircuitPython 7 or above in your board. Add the init.py file under \lib\adafruit_hid directory of CIRC

5 Dec 19, 2022
Subcert is an subdomain enumeration tool, that finds all the subdomains from certificate transparency logs.

Subcert Subcert is a subdomain enumeration tool, that finds all the valid subdomains from certificate transparency logs. Table of contents Setup Demo

A3h1nt 59 Dec 16, 2022
Python module for creating the circuit simulation definitions for Elmer FEM

elmer_circuitbuilder Python module for creating the circuit simulation definitions for Elmer FEM. The circuit definitions enable easy setup of coils (

5 Oct 03, 2022
This bot uploads telegram files to MixDrop.co,File.io.

What is about this bot ? This bot uploads telegram files to MixDrop.co, File.io. Usage: Send any file, and the bot will upload it to MixDrop.co, File.

Abhijith NT 3 Feb 26, 2022
HashDB Binary Ninja Plugin

HashDB Plugin (v0.1) Author: Vector 35 Inc Plugin for interacting with the OALABS HashDB service. Description: Plugin that can be used to lookup hashe

Jordan 3 Jul 30, 2022