mattngc / raysect_mayavi Goto Github PK
View Code? Open in Web Editor NEWExperiments with a Mayavi visualisation pipeline for Raysect
Experiments with a Mayavi visualisation pipeline for Raysect
Sorry, I know this repo is experimental, but I don't understand the default plot_kwargs
in the TriangularMeshSource
. With transparent:True
and opacity:0
, I get a blank screen. If I hardcode (I don't seem to see how to set otherwise) to transparent:False
and opacity:1
, I actually get a gray triangulated mesh object. Am I doing something wrong?
I would like to transform rest of the methods constructing geometric primitives and mesh primitive to classes as it was done for cylindrical primitives (lenses, cylinder). There are two reasons. Now there is different approach taken for primitives, which I think could be confusion and also ot will allow the plotting mechanism to be changed to better treat different "objects" as for example primitives and ray trajectories. Each class can hold metadata about its plot properties and can add itself to a figure using preferred plotting function.
The _parse_nodes method now can't handle correctly any class inherited from the Node class and can't handle primitives being parents to other primitives, see the if statement. I think a better solution could be:
if isinstance(child, Primitive):
_parse_nodes(child, mesh_list)
mesh_list.append((to_mesh(child), child.meta))
elif isinstance(child, Observer):
return
elif isinstance(child, Node):
_parse_nodes(child, mesh_list)
Also, I think it could be made a function returning a list of meshes instead of changing a list.
I've discovered Pyvista package, which is an alternative to Mayavi. The advantage could be it is nicely integrable with panel. Pyvista seems to be a nice way how to use the visualisation inside jupyter and more importantly also remotly. The integration with panel can offer the possibility to integrate the visualisation into panel dashboards.
@mattngc feel free to assign this to me, I have most of the work done.
This library might be better for mesh generation.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.