patinae 0.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- patinae-0.4.0/Cargo.toml +126 -0
- patinae-0.4.0/LICENSE +29 -0
- patinae-0.4.0/PKG-INFO +76 -0
- patinae-0.4.0/README.md +39 -0
- patinae-0.4.0/crates/patinae-algos/Cargo.toml +25 -0
- patinae-0.4.0/crates/patinae-algos/src/align/ce.rs +643 -0
- patinae-0.4.0/crates/patinae-algos/src/align/kabsch.rs +303 -0
- patinae-0.4.0/crates/patinae-algos/src/align/mod.rs +17 -0
- patinae-0.4.0/crates/patinae-algos/src/align/sequence_align.rs +399 -0
- patinae-0.4.0/crates/patinae-algos/src/align/substitution_matrix.rs +270 -0
- patinae-0.4.0/crates/patinae-algos/src/align/superpose.rs +254 -0
- patinae-0.4.0/crates/patinae-algos/src/dss/dssp.rs +1034 -0
- patinae-0.4.0/crates/patinae-algos/src/dss/mod.rs +77 -0
- patinae-0.4.0/crates/patinae-algos/src/dss/noop.rs +24 -0
- patinae-0.4.0/crates/patinae-algos/src/dss/pymol.rs +1177 -0
- patinae-0.4.0/crates/patinae-algos/src/lib.rs +56 -0
- patinae-0.4.0/crates/patinae-algos/src/linalg/mod.rs +9 -0
- patinae-0.4.0/crates/patinae-algos/src/linalg/svd3.rs +432 -0
- patinae-0.4.0/crates/patinae-algos/src/surface/contour/mc_tables.rs +511 -0
- patinae-0.4.0/crates/patinae-algos/src/surface/contour/mod.rs +407 -0
- patinae-0.4.0/crates/patinae-algos/src/surface/grid.rs +363 -0
- patinae-0.4.0/crates/patinae-algos/src/surface/mod.rs +60 -0
- patinae-0.4.0/crates/patinae-algos/src/symmetry/crystal.rs +163 -0
- patinae-0.4.0/crates/patinae-algos/src/symmetry/mod.rs +8 -0
- patinae-0.4.0/crates/patinae-algos/src/symmetry/space_groups.rs +260 -0
- patinae-0.4.0/crates/patinae-algos/src/symmetry/space_groups_data.rs +1368 -0
- patinae-0.4.0/crates/patinae-cmd/Cargo.toml +40 -0
- patinae-0.4.0/crates/patinae-cmd/src/args.rs +469 -0
- patinae-0.4.0/crates/patinae-cmd/src/command.rs +1104 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/align.rs +669 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/control.rs +534 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/crystal.rs +474 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/display.rs +1235 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/io.rs +1229 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/map.rs +369 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/measuring.rs +267 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/mod.rs +65 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/movie.rs +1419 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/objects.rs +1737 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/scene.rs +181 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/selecting.rs +564 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/settings.rs +1446 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/transform.rs +524 -0
- patinae-0.4.0/crates/patinae-cmd/src/commands/viewing.rs +1420 -0
- patinae-0.4.0/crates/patinae-cmd/src/dynamic.rs +107 -0
- patinae-0.4.0/crates/patinae-cmd/src/error.rs +516 -0
- patinae-0.4.0/crates/patinae-cmd/src/executor.rs +337 -0
- patinae-0.4.0/crates/patinae-cmd/src/helpers.rs +326 -0
- patinae-0.4.0/crates/patinae-cmd/src/history.rs +186 -0
- patinae-0.4.0/crates/patinae-cmd/src/lib.rs +77 -0
- patinae-0.4.0/crates/patinae-cmd/src/parser.rs +992 -0
- patinae-0.4.0/crates/patinae-cmd/src/script.rs +161 -0
- patinae-0.4.0/crates/patinae-color/Cargo.toml +19 -0
- patinae-0.4.0/crates/patinae-color/src/color.rs +208 -0
- patinae-0.4.0/crates/patinae-color/src/constants.rs +163 -0
- patinae-0.4.0/crates/patinae-color/src/error.rs +19 -0
- patinae-0.4.0/crates/patinae-color/src/gradient.rs +213 -0
- patinae-0.4.0/crates/patinae-color/src/lib.rs +25 -0
- patinae-0.4.0/crates/patinae-color/src/named.rs +263 -0
- patinae-0.4.0/crates/patinae-color/src/resolver.rs +313 -0
- patinae-0.4.0/crates/patinae-color/src/scheme.rs +326 -0
- patinae-0.4.0/crates/patinae-color/src/theme.rs +143 -0
- patinae-0.4.0/crates/patinae-io/Cargo.toml +40 -0
- patinae-0.4.0/crates/patinae-io/src/bcif/decode.rs +624 -0
- patinae-0.4.0/crates/patinae-io/src/bcif/mod.rs +59 -0
- patinae-0.4.0/crates/patinae-io/src/bcif/parser.rs +485 -0
- patinae-0.4.0/crates/patinae-io/src/bcif/types.rs +290 -0
- patinae-0.4.0/crates/patinae-io/src/ccp4.rs +551 -0
- patinae-0.4.0/crates/patinae-io/src/cif/common.rs +124 -0
- patinae-0.4.0/crates/patinae-io/src/cif/lexer.rs +289 -0
- patinae-0.4.0/crates/patinae-io/src/cif/mod.rs +60 -0
- patinae-0.4.0/crates/patinae-io/src/cif/parser.rs +898 -0
- patinae-0.4.0/crates/patinae-io/src/cif/writer.rs +236 -0
- patinae-0.4.0/crates/patinae-io/src/compress.rs +140 -0
- patinae-0.4.0/crates/patinae-io/src/detect.rs +271 -0
- patinae-0.4.0/crates/patinae-io/src/error.rs +299 -0
- patinae-0.4.0/crates/patinae-io/src/fetch.rs +1129 -0
- patinae-0.4.0/crates/patinae-io/src/gro/mod.rs +58 -0
- patinae-0.4.0/crates/patinae-io/src/gro/parser.rs +480 -0
- patinae-0.4.0/crates/patinae-io/src/gro/writer.rs +261 -0
- patinae-0.4.0/crates/patinae-io/src/lib.rs +389 -0
- patinae-0.4.0/crates/patinae-io/src/mol2/mod.rs +36 -0
- patinae-0.4.0/crates/patinae-io/src/mol2/parser.rs +347 -0
- patinae-0.4.0/crates/patinae-io/src/mol2/writer.rs +222 -0
- patinae-0.4.0/crates/patinae-io/src/pdb/hybrid36.rs +238 -0
- patinae-0.4.0/crates/patinae-io/src/pdb/mod.rs +81 -0
- patinae-0.4.0/crates/patinae-io/src/pdb/parser.rs +669 -0
- patinae-0.4.0/crates/patinae-io/src/pdb/records.rs +301 -0
- patinae-0.4.0/crates/patinae-io/src/pdb/writer.rs +761 -0
- patinae-0.4.0/crates/patinae-io/src/sdf/mod.rs +36 -0
- patinae-0.4.0/crates/patinae-io/src/sdf/parser.rs +499 -0
- patinae-0.4.0/crates/patinae-io/src/sdf/writer.rs +208 -0
- patinae-0.4.0/crates/patinae-io/src/traits.rs +346 -0
- patinae-0.4.0/crates/patinae-io/src/traj/mod.rs +11 -0
- patinae-0.4.0/crates/patinae-io/src/traj/trr.rs +368 -0
- patinae-0.4.0/crates/patinae-io/src/traj/xtc.rs +61 -0
- patinae-0.4.0/crates/patinae-io/src/units.rs +9 -0
- patinae-0.4.0/crates/patinae-io/src/xyz/mod.rs +36 -0
- patinae-0.4.0/crates/patinae-io/src/xyz/parser.rs +230 -0
- patinae-0.4.0/crates/patinae-io/src/xyz/writer.rs +167 -0
- patinae-0.4.0/crates/patinae-mol/Cargo.toml +29 -0
- patinae-0.4.0/crates/patinae-mol/src/atom.rs +956 -0
- patinae-0.4.0/crates/patinae-mol/src/bond.rs +388 -0
- patinae-0.4.0/crates/patinae-mol/src/bond_utils.rs +135 -0
- patinae-0.4.0/crates/patinae-mol/src/bonding.rs +436 -0
- patinae-0.4.0/crates/patinae-mol/src/ccd.rs +252 -0
- patinae-0.4.0/crates/patinae-mol/src/chains.rs +249 -0
- patinae-0.4.0/crates/patinae-mol/src/coordset.rs +918 -0
- patinae-0.4.0/crates/patinae-mol/src/dirty.rs +72 -0
- patinae-0.4.0/crates/patinae-mol/src/dss.rs +211 -0
- patinae-0.4.0/crates/patinae-mol/src/element.rs +1396 -0
- patinae-0.4.0/crates/patinae-mol/src/error.rs +81 -0
- patinae-0.4.0/crates/patinae-mol/src/flags.rs +225 -0
- patinae-0.4.0/crates/patinae-mol/src/index.rs +195 -0
- patinae-0.4.0/crates/patinae-mol/src/iterator.rs +446 -0
- patinae-0.4.0/crates/patinae-mol/src/lib.rs +167 -0
- patinae-0.4.0/crates/patinae-mol/src/molecule.rs +1456 -0
- patinae-0.4.0/crates/patinae-mol/src/residue.rs +860 -0
- patinae-0.4.0/crates/patinae-mol/src/secondary.rs +227 -0
- patinae-0.4.0/crates/patinae-mol/src/spatial.rs +112 -0
- patinae-0.4.0/crates/patinae-mol/src/spectrum.rs +142 -0
- patinae-0.4.0/crates/patinae-mol/src/subchain.rs +1566 -0
- patinae-0.4.0/crates/patinae-render/Cargo.toml +42 -0
- patinae-0.4.0/crates/patinae-render/src/capture.rs +153 -0
- patinae-0.4.0/crates/patinae-render/src/compute/cartoon_extrude.rs +191 -0
- patinae-0.4.0/crates/patinae-render/src/compute/cull.rs +278 -0
- patinae-0.4.0/crates/patinae-render/src/compute/dot_build.rs +109 -0
- patinae-0.4.0/crates/patinae-render/src/compute/ellipsoid_build.rs +225 -0
- patinae-0.4.0/crates/patinae-render/src/compute/line_build.rs +108 -0
- patinae-0.4.0/crates/patinae-render/src/compute/mod.rs +156 -0
- patinae-0.4.0/crates/patinae-render/src/compute/sphere_build.rs +127 -0
- patinae-0.4.0/crates/patinae-render/src/compute/sphere_lod_count.rs +118 -0
- patinae-0.4.0/crates/patinae-render/src/compute/ssao.rs +405 -0
- patinae-0.4.0/crates/patinae-render/src/compute/stick_build.rs +115 -0
- patinae-0.4.0/crates/patinae-render/src/compute/stick_lod_count.rs +117 -0
- patinae-0.4.0/crates/patinae-render/src/compute/surface_density.rs +283 -0
- patinae-0.4.0/crates/patinae-render/src/compute/surface_mc.rs +299 -0
- patinae-0.4.0/crates/patinae-render/src/compute/surface_ses_morph.rs +201 -0
- patinae-0.4.0/crates/patinae-render/src/compute/surface_vdw_sdf.rs +243 -0
- patinae-0.4.0/crates/patinae-render/src/context.rs +108 -0
- patinae-0.4.0/crates/patinae-render/src/frame.rs +468 -0
- patinae-0.4.0/crates/patinae-render/src/geometry_export/analytic.rs +628 -0
- patinae-0.4.0/crates/patinae-render/src/geometry_export.rs +159 -0
- patinae-0.4.0/crates/patinae-render/src/lib.rs +55 -0
- patinae-0.4.0/crates/patinae-render/src/lut_buffer.rs +228 -0
- patinae-0.4.0/crates/patinae-render/src/map_contour.rs +177 -0
- patinae-0.4.0/crates/patinae-render/src/passes/atlas_ao.rs +132 -0
- patinae-0.4.0/crates/patinae-render/src/passes/lighting.rs +265 -0
- patinae-0.4.0/crates/patinae-render/src/passes/mod.rs +5 -0
- patinae-0.4.0/crates/patinae-render/src/passes/shadow.rs +55 -0
- patinae-0.4.0/crates/patinae-render/src/picking/mod.rs +209 -0
- patinae-0.4.0/crates/patinae-render/src/picking/pass.rs +418 -0
- patinae-0.4.0/crates/patinae-render/src/picking/readback.rs +288 -0
- patinae-0.4.0/crates/patinae-render/src/picking/reproject.rs +286 -0
- patinae-0.4.0/crates/patinae-render/src/pipelines/cartoon.rs +100 -0
- patinae-0.4.0/crates/patinae-render/src/pipelines/depth_prepass.rs +296 -0
- patinae-0.4.0/crates/patinae-render/src/pipelines/dot.rs +169 -0
- patinae-0.4.0/crates/patinae-render/src/pipelines/ellipsoid.rs +97 -0
- patinae-0.4.0/crates/patinae-render/src/pipelines/line.rs +41 -0
- patinae-0.4.0/crates/patinae-render/src/pipelines/map.rs +92 -0
- patinae-0.4.0/crates/patinae-render/src/pipelines/mesh.rs +114 -0
- patinae-0.4.0/crates/patinae-render/src/pipelines/mod.rs +258 -0
- patinae-0.4.0/crates/patinae-render/src/pipelines/sphere.rs +104 -0
- patinae-0.4.0/crates/patinae-render/src/pipelines/stick.rs +99 -0
- patinae-0.4.0/crates/patinae-render/src/pipelines/surface.rs +101 -0
- patinae-0.4.0/crates/patinae-render/src/pipelines/wboit_composite.rs +139 -0
- patinae-0.4.0/crates/patinae-render/src/postprocess/fxaa.rs +200 -0
- patinae-0.4.0/crates/patinae-render/src/postprocess/marking.rs +351 -0
- patinae-0.4.0/crates/patinae-render/src/postprocess/mod.rs +10 -0
- patinae-0.4.0/crates/patinae-render/src/postprocess/silhouette.rs +174 -0
- patinae-0.4.0/crates/patinae-render/src/postprocess/ssao_compose.rs +176 -0
- patinae-0.4.0/crates/patinae-render/src/render_input.rs +250 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/compute_build_flow.rs +53 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/construction.rs +383 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/culling_flow.rs +193 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/frame_flow.rs +187 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/geometry_export_flow.rs +424 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/math.rs +164 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/mod.rs +21 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/picking_flow.rs +536 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/resize.rs +109 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/screen_flow.rs +194 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/settings.rs +249 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/shadow_flow.rs +236 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/state.rs +303 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/sync_flow.rs +661 -0
- patinae-0.4.0/crates/patinae-render/src/render_state/visible_flow.rs +345 -0
- patinae-0.4.0/crates/patinae-render/src/representations/cartoon/backbone.rs +1361 -0
- patinae-0.4.0/crates/patinae-render/src/representations/cartoon/frame.rs +108 -0
- patinae-0.4.0/crates/patinae-render/src/representations/cartoon/mod.rs +814 -0
- patinae-0.4.0/crates/patinae-render/src/representations/cartoon/params.rs +292 -0
- patinae-0.4.0/crates/patinae-render/src/representations/cartoon/tessellation.rs +1209 -0
- patinae-0.4.0/crates/patinae-render/src/representations/cartoon/utils.rs +83 -0
- patinae-0.4.0/crates/patinae-render/src/representations/catalog.rs +270 -0
- patinae-0.4.0/crates/patinae-render/src/representations/cullable.rs +224 -0
- patinae-0.4.0/crates/patinae-render/src/representations/dot.rs +378 -0
- patinae-0.4.0/crates/patinae-render/src/representations/ellipsoid.rs +605 -0
- patinae-0.4.0/crates/patinae-render/src/representations/line.rs +256 -0
- patinae-0.4.0/crates/patinae-render/src/representations/mesh.rs +136 -0
- patinae-0.4.0/crates/patinae-render/src/representations/mod.rs +181 -0
- patinae-0.4.0/crates/patinae-render/src/representations/sphere.rs +751 -0
- patinae-0.4.0/crates/patinae-render/src/representations/stick.rs +658 -0
- patinae-0.4.0/crates/patinae-render/src/representations/surface/constants.rs +6 -0
- patinae-0.4.0/crates/patinae-render/src/representations/surface/mc_tables.rs +629 -0
- patinae-0.4.0/crates/patinae-render/src/representations/surface/mod.rs +1734 -0
- patinae-0.4.0/crates/patinae-render/src/representations/surface/oracle.rs +633 -0
- patinae-0.4.0/crates/patinae-render/src/representations/viewport_lod.rs +103 -0
- patinae-0.4.0/crates/patinae-render/src/scene_store/layout.rs +131 -0
- patinae-0.4.0/crates/patinae-render/src/scene_store/marker.rs +44 -0
- patinae-0.4.0/crates/patinae-render/src/scene_store/mod.rs +674 -0
- patinae-0.4.0/crates/patinae-render/src/scene_store/sync.rs +746 -0
- patinae-0.4.0/crates/patinae-render/src/shader_source.rs +208 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/common/frame.wgsl +39 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/common/lighting.wgsl +206 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/common/octahedral.wgsl +49 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/common/scene.wgsl +191 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/common/wboit.wgsl +33 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/build_dot.wgsl +92 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/build_ellipsoid.wgsl +89 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/build_line.wgsl +167 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/build_sphere.wgsl +108 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/build_stick.wgsl +190 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/cartoon_extrude.wgsl +679 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/cull_common.wgsl +37 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/cull_dot.wgsl +37 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/cull_ellipsoid.wgsl +40 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/cull_instances.wgsl +35 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/cull_line.wgsl +42 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/cull_stick.wgsl +40 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/picking_reproject.wgsl +137 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/sphere_lod_count.wgsl +83 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/ssao.wgsl +158 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/ssao_blur.wgsl +66 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/stick_lod_count.wgsl +109 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/surface_density.wgsl +139 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/surface_mc.wgsl +296 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/surface_ses_morph.wgsl +104 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/compute/surface_vdw_sdf.wgsl +126 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/picking/common.wgsl +20 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/picking/dot.wgsl +64 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/picking/ellipsoid.wgsl +97 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/picking/line.wgsl +51 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/picking/sphere.wgsl +105 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/picking/std_vertex.wgsl +35 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/picking/stick.wgsl +164 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/postprocess/fxaa.wgsl +96 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/postprocess/marking.wgsl +52 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/postprocess/marking_composite.wgsl +97 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/postprocess/silhouette.wgsl +78 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/postprocess/ssao_compose.wgsl +47 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/postprocess/wboit_composite.wgsl +46 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/representations/cartoon.wgsl +140 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/representations/dot.wgsl +103 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/representations/ellipsoid.wgsl +176 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/representations/line.wgsl +90 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/representations/map.wgsl +60 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/representations/mesh.wgsl +111 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/representations/sphere.wgsl +178 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/representations/stick.wgsl +296 -0
- patinae-0.4.0/crates/patinae-render/src/shaders/representations/surface.wgsl +142 -0
- patinae-0.4.0/crates/patinae-render/src/stats.rs +620 -0
- patinae-0.4.0/crates/patinae-render/src/stats_history.rs +173 -0
- patinae-0.4.0/crates/patinae-render/src/uniforms.rs +111 -0
- patinae-0.4.0/crates/patinae-scene/Cargo.toml +41 -0
- patinae-0.4.0/crates/patinae-scene/src/bridge/cache.rs +112 -0
- patinae-0.4.0/crates/patinae-scene/src/bridge/colors.rs +325 -0
- patinae-0.4.0/crates/patinae-scene/src/bridge/frame.rs +223 -0
- patinae-0.4.0/crates/patinae-scene/src/bridge/markers.rs +380 -0
- patinae-0.4.0/crates/patinae-scene/src/bridge/mod.rs +39 -0
- patinae-0.4.0/crates/patinae-scene/src/bridge/objects.rs +177 -0
- patinae-0.4.0/crates/patinae-scene/src/bridge/picking.rs +53 -0
- patinae-0.4.0/crates/patinae-scene/src/camera.rs +929 -0
- patinae-0.4.0/crates/patinae-scene/src/error.rs +524 -0
- patinae-0.4.0/crates/patinae-scene/src/highlight_state.rs +265 -0
- patinae-0.4.0/crates/patinae-scene/src/input.rs +501 -0
- patinae-0.4.0/crates/patinae-scene/src/keybindings.rs +762 -0
- patinae-0.4.0/crates/patinae-scene/src/lib.rs +76 -0
- patinae-0.4.0/crates/patinae-scene/src/movie.rs +1399 -0
- patinae-0.4.0/crates/patinae-scene/src/object/group.rs +219 -0
- patinae-0.4.0/crates/patinae-scene/src/object/label.rs +378 -0
- patinae-0.4.0/crates/patinae-scene/src/object/map.rs +505 -0
- patinae-0.4.0/crates/patinae-scene/src/object/measurement.rs +693 -0
- patinae-0.4.0/crates/patinae-scene/src/object/mod.rs +1631 -0
- patinae-0.4.0/crates/patinae-scene/src/object/molecule.rs +614 -0
- patinae-0.4.0/crates/patinae-scene/src/pick.rs +424 -0
- patinae-0.4.0/crates/patinae-scene/src/quat.rs +358 -0
- patinae-0.4.0/crates/patinae-scene/src/render_target.rs +82 -0
- patinae-0.4.0/crates/patinae-scene/src/scene.rs +566 -0
- patinae-0.4.0/crates/patinae-scene/src/selection.rs +568 -0
- patinae-0.4.0/crates/patinae-scene/src/serde_helpers.rs +87 -0
- patinae-0.4.0/crates/patinae-scene/src/session.rs +447 -0
- patinae-0.4.0/crates/patinae-scene/src/session_adapter.rs +385 -0
- patinae-0.4.0/crates/patinae-scene/src/view.rs +332 -0
- patinae-0.4.0/crates/patinae-scene/src/viewer_trait.rs +669 -0
- patinae-0.4.0/crates/patinae-scene/tests/bridge_colors.rs +77 -0
- patinae-0.4.0/crates/patinae-scene/tests/bridge_markers.rs +454 -0
- patinae-0.4.0/crates/patinae-select/Cargo.toml +24 -0
- patinae-0.4.0/crates/patinae-select/src/ast.rs +541 -0
- patinae-0.4.0/crates/patinae-select/src/context.rs +394 -0
- patinae-0.4.0/crates/patinae-select/src/error.rs +139 -0
- patinae-0.4.0/crates/patinae-select/src/eval.rs +1261 -0
- patinae-0.4.0/crates/patinae-select/src/keywords.rs +593 -0
- patinae-0.4.0/crates/patinae-select/src/lexer.rs +597 -0
- patinae-0.4.0/crates/patinae-select/src/lib.rs +172 -0
- patinae-0.4.0/crates/patinae-select/src/parser.rs +1439 -0
- patinae-0.4.0/crates/patinae-select/src/pattern.rs +396 -0
- patinae-0.4.0/crates/patinae-select/src/result.rs +438 -0
- patinae-0.4.0/crates/patinae-session/Cargo.toml +26 -0
- patinae-0.4.0/crates/patinae-session/src/convert/mod.rs +10 -0
- patinae-0.4.0/crates/patinae-session/src/convert/pymol_colors.rs +99 -0
- patinae-0.4.0/crates/patinae-session/src/convert/to_session.rs +870 -0
- patinae-0.4.0/crates/patinae-session/src/lib.rs +59 -0
- patinae-0.4.0/crates/patinae-session/src/pickle/mod.rs +93 -0
- patinae-0.4.0/crates/patinae-session/src/pickle/reader.rs +740 -0
- patinae-0.4.0/crates/patinae-session/src/prs.rs +66 -0
- patinae-0.4.0/crates/patinae-session/src/pse/mod.rs +150 -0
- patinae-0.4.0/crates/patinae-session/src/pse/reader.rs +604 -0
- patinae-0.4.0/crates/patinae-settings/Cargo.toml +22 -0
- patinae-0.4.0/crates/patinae-settings/src/definitions.rs +1987 -0
- patinae-0.4.0/crates/patinae-settings/src/dynamic.rs +249 -0
- patinae-0.4.0/crates/patinae-settings/src/enums.rs +292 -0
- patinae-0.4.0/crates/patinae-settings/src/error.rs +58 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/behavior.rs +21 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/cartoon.rs +62 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/dot.rs +21 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/ellipsoid.rs +31 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/fxaa.rs +17 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/line.rs +13 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/mesh.rs +29 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/mod.rs +118 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/movie.rs +16 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/ribbon.rs +32 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/shading.rs +232 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/sphere.rs +21 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/ssao.rs +34 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/stick.rs +28 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/surface.rs +44 -0
- patinae-0.4.0/crates/patinae-settings/src/groups/ui.rs +40 -0
- patinae-0.4.0/crates/patinae-settings/src/legacy.rs +320 -0
- patinae-0.4.0/crates/patinae-settings/src/lib.rs +121 -0
- patinae-0.4.0/crates/patinae-settings/src/macros.rs +806 -0
- patinae-0.4.0/crates/patinae-settings/src/overrides.rs +58 -0
- patinae-0.4.0/crates/patinae-settings/src/paths.rs +385 -0
- patinae-0.4.0/crates/patinae-settings/src/recent_files.rs +218 -0
- patinae-0.4.0/crates/patinae-settings/src/registry.rs +221 -0
- patinae-0.4.0/crates/patinae-settings/src/setting.rs +555 -0
- patinae-0.4.0/crates/patinae-settings/src/shading_mode.rs +35 -0
- patinae-0.4.0/crates/patinae-settings/src/side_effects.rs +35 -0
- patinae-0.4.0/crates/patinae-settings/src/store.rs +637 -0
- patinae-0.4.0/patinae/__init__.py +89 -0
- patinae-0.4.0/patinae/_cli.py +41 -0
- patinae-0.4.0/patinae/_cmd.py +417 -0
- patinae-0.4.0/patinae/widget/__init__.py +5 -0
- patinae-0.4.0/patinae/widget/_backend.py +180 -0
- patinae-0.4.0/patinae/widget/_frontend.js +263 -0
- patinae-0.4.0/patinae/widget/_viewer.py +80 -0
- patinae-0.4.0/pyproject.toml +55 -0
- patinae-0.4.0/python/Cargo.lock +3359 -0
- patinae-0.4.0/python/Cargo.toml +50 -0
- patinae-0.4.0/python/LICENSE +29 -0
- patinae-0.4.0/python/README.md +39 -0
- patinae-0.4.0/python/src/backend.rs +352 -0
- patinae-0.4.0/python/src/color/mod.rs +298 -0
- patinae-0.4.0/python/src/convert.rs +146 -0
- patinae-0.4.0/python/src/error.rs +70 -0
- patinae-0.4.0/python/src/io/mod.rs +227 -0
- patinae-0.4.0/python/src/iterate.rs +220 -0
- patinae-0.4.0/python/src/lib.rs +79 -0
- patinae-0.4.0/python/src/mol/atom.rs +290 -0
- patinae-0.4.0/python/src/mol/bond.rs +181 -0
- patinae-0.4.0/python/src/mol/coordset.rs +178 -0
- patinae-0.4.0/python/src/mol/element.rs +138 -0
- patinae-0.4.0/python/src/mol/mod.rs +32 -0
- patinae-0.4.0/python/src/mol/molecule.rs +330 -0
- patinae-0.4.0/python/src/selecting/mod.rs +263 -0
- patinae-0.4.0/python/src/settings/mod.rs +112 -0
patinae-0.4.0/Cargo.toml
ADDED
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
[workspace]
|
|
2
|
+
resolver = "2"
|
|
3
|
+
members = [
|
|
4
|
+
"crates/patinae-settings",
|
|
5
|
+
"crates/patinae-color",
|
|
6
|
+
"crates/patinae-mol",
|
|
7
|
+
"crates/patinae-select",
|
|
8
|
+
"crates/patinae-io",
|
|
9
|
+
"crates/patinae-render",
|
|
10
|
+
"crates/patinae-scene",
|
|
11
|
+
"crates/patinae-cmd",
|
|
12
|
+
"crates/patinae-framework",
|
|
13
|
+
"crates/patinae-plugin",
|
|
14
|
+
"crates/patinae-plugin-host",
|
|
15
|
+
"crates/patinae-algos",
|
|
16
|
+
"crates/patinae-session",
|
|
17
|
+
"plugins/hello",
|
|
18
|
+
"plugins/ipc",
|
|
19
|
+
"plugins/python",
|
|
20
|
+
"plugins/raytracer",
|
|
21
|
+
"bench",
|
|
22
|
+
"patinae",
|
|
23
|
+
]
|
|
24
|
+
default-members = [
|
|
25
|
+
"crates/patinae-settings",
|
|
26
|
+
"crates/patinae-color",
|
|
27
|
+
"crates/patinae-mol",
|
|
28
|
+
"crates/patinae-select",
|
|
29
|
+
"crates/patinae-io",
|
|
30
|
+
"crates/patinae-render",
|
|
31
|
+
"crates/patinae-scene",
|
|
32
|
+
"crates/patinae-cmd",
|
|
33
|
+
"crates/patinae-framework",
|
|
34
|
+
"crates/patinae-plugin",
|
|
35
|
+
"crates/patinae-plugin-host",
|
|
36
|
+
"crates/patinae-algos",
|
|
37
|
+
"crates/patinae-session",
|
|
38
|
+
"patinae",
|
|
39
|
+
]
|
|
40
|
+
# python API requires maturin to build (use: cd python && maturin build)
|
|
41
|
+
# web viewer is built separately with wasm-pack (use: cd web && npm run build)
|
|
42
|
+
exclude = ["python", "web"]
|
|
43
|
+
|
|
44
|
+
[workspace.package]
|
|
45
|
+
version = "0.4.0"
|
|
46
|
+
edition = "2021"
|
|
47
|
+
authors = ["Pavel Yakovlev"]
|
|
48
|
+
license = "BSD-3-Clause"
|
|
49
|
+
repository = "https://github.com/zmactep/patinae"
|
|
50
|
+
homepage = "https://github.com/zmactep/patinae"
|
|
51
|
+
documentation = "https://github.com/zmactep/patinae"
|
|
52
|
+
|
|
53
|
+
[workspace.lints.rust]
|
|
54
|
+
unsafe_op_in_unsafe_fn = "warn"
|
|
55
|
+
|
|
56
|
+
[workspace.lints.clippy]
|
|
57
|
+
correctness = { level = "warn", priority = -1 }
|
|
58
|
+
suspicious = { level = "warn", priority = -1 }
|
|
59
|
+
style = { level = "warn", priority = -1 }
|
|
60
|
+
complexity = { level = "warn", priority = -1 }
|
|
61
|
+
perf = { level = "warn", priority = -1 }
|
|
62
|
+
undocumented_unsafe_blocks = "warn"
|
|
63
|
+
|
|
64
|
+
[workspace.dependencies]
|
|
65
|
+
# Internal crates
|
|
66
|
+
patinae-settings = { version = "0.4.0", path = "crates/patinae-settings" }
|
|
67
|
+
patinae-color = { version = "0.4.0", path = "crates/patinae-color" }
|
|
68
|
+
patinae-mol = { version = "0.4.0", path = "crates/patinae-mol" }
|
|
69
|
+
patinae-select = { version = "0.4.0", path = "crates/patinae-select" }
|
|
70
|
+
patinae-io = { version = "0.4.0", path = "crates/patinae-io" }
|
|
71
|
+
patinae-render = { version = "0.4.0", path = "crates/patinae-render", default-features = false }
|
|
72
|
+
patinae-scene = { version = "0.4.0", path = "crates/patinae-scene", default-features = false }
|
|
73
|
+
patinae-cmd = { version = "0.4.0", path = "crates/patinae-cmd", default-features = false }
|
|
74
|
+
patinae-algos = { version = "0.4.0", path = "crates/patinae-algos" }
|
|
75
|
+
patinae-session = { version = "0.4.0", path = "crates/patinae-session" }
|
|
76
|
+
patinae-framework = { version = "0.4.0", path = "crates/patinae-framework" }
|
|
77
|
+
patinae-plugin = { version = "0.4.0", path = "crates/patinae-plugin" }
|
|
78
|
+
patinae-plugin-host = { version = "0.4.0", path = "crates/patinae-plugin-host" }
|
|
79
|
+
|
|
80
|
+
# External dependencies
|
|
81
|
+
bitflags = { version = "2", features = ["serde"] }
|
|
82
|
+
lin_alg = { version = "1.1", features = ["computer_graphics"] }
|
|
83
|
+
wgpu = "28"
|
|
84
|
+
nom = "7"
|
|
85
|
+
thiserror = "2"
|
|
86
|
+
log = "0.4"
|
|
87
|
+
libloading = "0.8"
|
|
88
|
+
env_logger = "0.11"
|
|
89
|
+
bytemuck = { version = "1", features = ["derive"] }
|
|
90
|
+
ahash = { version = "0.8", features = ["serde"] }
|
|
91
|
+
smallvec = { version = "1", features = ["serde"] }
|
|
92
|
+
memmap2 = "0.9"
|
|
93
|
+
flate2 = "1"
|
|
94
|
+
rayon = "1"
|
|
95
|
+
bitvec = "1"
|
|
96
|
+
phf = { version = "0.11", features = ["macros"] }
|
|
97
|
+
image = { version = "0.25", default-features = false, features = ["png"] }
|
|
98
|
+
ab_glyph = "0.2"
|
|
99
|
+
shellexpand = "3"
|
|
100
|
+
dirs = "5"
|
|
101
|
+
serde = { version = "1", features = ["derive", "rc"] }
|
|
102
|
+
serde_json = "1"
|
|
103
|
+
rmp-serde = "1"
|
|
104
|
+
rustls = { version = "0.23", default-features = false, features = ["ring", "logging", "std", "tls12"] }
|
|
105
|
+
tokio = { version = "1", features = ["rt-multi-thread", "sync", "time"] }
|
|
106
|
+
webbrowser = "1.2"
|
|
107
|
+
|
|
108
|
+
# Slint integration (Patinae GUI)
|
|
109
|
+
slint = { version = "1.16", default-features = false, features = ["compat-1-2", "backend-winit", "renderer-femtovg-wgpu", "unstable-wgpu-28", "unstable-winit-030"] }
|
|
110
|
+
|
|
111
|
+
[profile.release]
|
|
112
|
+
lto = "fat"
|
|
113
|
+
codegen-units = 1
|
|
114
|
+
strip = true
|
|
115
|
+
opt-level = "s"
|
|
116
|
+
|
|
117
|
+
[profile.bench]
|
|
118
|
+
debug = 1
|
|
119
|
+
|
|
120
|
+
[profile.dev-fast]
|
|
121
|
+
inherits = "release"
|
|
122
|
+
opt-level = 1
|
|
123
|
+
lto = false
|
|
124
|
+
codegen-units = 256
|
|
125
|
+
incremental = true
|
|
126
|
+
strip = false
|
patinae-0.4.0/LICENSE
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
BSD 3-Clause License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024-2026, Pavel Yakovlev
|
|
4
|
+
All rights reserved.
|
|
5
|
+
|
|
6
|
+
Redistribution and use in source and binary forms, with or without
|
|
7
|
+
modification, are permitted provided that the following conditions are met:
|
|
8
|
+
|
|
9
|
+
1. Redistributions of source code must retain the above copyright notice, this
|
|
10
|
+
list of conditions and the following disclaimer.
|
|
11
|
+
|
|
12
|
+
2. Redistributions in binary form must reproduce the above copyright notice,
|
|
13
|
+
this list of conditions and the following disclaimer in the documentation
|
|
14
|
+
and/or other materials provided with the distribution.
|
|
15
|
+
|
|
16
|
+
3. Neither the name of the copyright holder nor the names of its
|
|
17
|
+
contributors may be used to endorse or promote products derived from
|
|
18
|
+
this software without specific prior written permission.
|
|
19
|
+
|
|
20
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
21
|
+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
22
|
+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
23
|
+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
|
24
|
+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
25
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
26
|
+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
27
|
+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
28
|
+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
29
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
patinae-0.4.0/PKG-INFO
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: patinae
|
|
3
|
+
Version: 0.4.0
|
|
4
|
+
Classifier: Development Status :: 3 - Alpha
|
|
5
|
+
Classifier: Intended Audience :: Science/Research
|
|
6
|
+
Classifier: License :: OSI Approved :: BSD License
|
|
7
|
+
Classifier: Operating System :: OS Independent
|
|
8
|
+
Classifier: Programming Language :: Python :: 3
|
|
9
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
10
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
14
|
+
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
15
|
+
Classifier: Programming Language :: Rust
|
|
16
|
+
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
|
|
17
|
+
Classifier: Topic :: Scientific/Engineering :: Chemistry
|
|
18
|
+
Classifier: Topic :: Scientific/Engineering :: Visualization
|
|
19
|
+
Requires-Dist: pytest>=7.0 ; extra == 'dev'
|
|
20
|
+
Requires-Dist: numpy>=1.20 ; extra == 'dev'
|
|
21
|
+
Requires-Dist: numpy>=1.20 ; extra == 'numpy'
|
|
22
|
+
Requires-Dist: anywidget>=0.9 ; extra == 'widget'
|
|
23
|
+
Requires-Dist: traitlets>=5.0 ; extra == 'widget'
|
|
24
|
+
Provides-Extra: dev
|
|
25
|
+
Provides-Extra: numpy
|
|
26
|
+
Provides-Extra: widget
|
|
27
|
+
License-File: LICENSE
|
|
28
|
+
Summary: Patinae: Modern molecular visualization in Rust with WebGPU rendering
|
|
29
|
+
Keywords: patinae,molecular,visualization,chemistry,biology
|
|
30
|
+
Author: Pavel Yakovlev
|
|
31
|
+
License: BSD-3-Clause
|
|
32
|
+
Requires-Python: >=3.8
|
|
33
|
+
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
34
|
+
Project-URL: Homepage, https://github.com/zmactep/patinae
|
|
35
|
+
Project-URL: Repository, https://github.com/zmactep/patinae
|
|
36
|
+
|
|
37
|
+
# Patinae Python Bindings
|
|
38
|
+
|
|
39
|
+
Python bindings for the Rust/WebGPU molecular visualization workspace.
|
|
40
|
+
|
|
41
|
+
## Installation
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
pip install patinae
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Jupyter Widget
|
|
48
|
+
|
|
49
|
+
The package includes an [anywidget](https://anywidget.dev/)-based widget for interactive visualization in notebooks. Works in JupyterLab, Jupyter Notebook, VS Code, and Google Colab.
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
pip install patinae[widget]
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
```python
|
|
56
|
+
from patinae.widget import Viewer
|
|
57
|
+
|
|
58
|
+
view = Viewer()
|
|
59
|
+
view.show()
|
|
60
|
+
cmd = view.get_cmd()
|
|
61
|
+
cmd.fetch("1CRN")
|
|
62
|
+
cmd.show("cartoon")
|
|
63
|
+
cmd.color("green", "chain A")
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Features:
|
|
67
|
+
- **Fire-and-forget commands** — `cmd.fetch()`, `cmd.show()`, `cmd.color()`, etc.
|
|
68
|
+
- **Synchronous queries** — request/response channel for commands that return data
|
|
69
|
+
- **Local file loading** — load structures from the local filesystem into the browser viewer
|
|
70
|
+
- **Picking support** — optional click-to-select atoms (`Viewer(picking=True)`)
|
|
71
|
+
- **Configurable layout** — `width` and `height` parameters with sensible defaults
|
|
72
|
+
|
|
73
|
+
## License
|
|
74
|
+
|
|
75
|
+
BSD-3-Clause
|
|
76
|
+
|
patinae-0.4.0/README.md
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Patinae Python Bindings
|
|
2
|
+
|
|
3
|
+
Python bindings for the Rust/WebGPU molecular visualization workspace.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
pip install patinae
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Jupyter Widget
|
|
12
|
+
|
|
13
|
+
The package includes an [anywidget](https://anywidget.dev/)-based widget for interactive visualization in notebooks. Works in JupyterLab, Jupyter Notebook, VS Code, and Google Colab.
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
pip install patinae[widget]
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
```python
|
|
20
|
+
from patinae.widget import Viewer
|
|
21
|
+
|
|
22
|
+
view = Viewer()
|
|
23
|
+
view.show()
|
|
24
|
+
cmd = view.get_cmd()
|
|
25
|
+
cmd.fetch("1CRN")
|
|
26
|
+
cmd.show("cartoon")
|
|
27
|
+
cmd.color("green", "chain A")
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Features:
|
|
31
|
+
- **Fire-and-forget commands** — `cmd.fetch()`, `cmd.show()`, `cmd.color()`, etc.
|
|
32
|
+
- **Synchronous queries** — request/response channel for commands that return data
|
|
33
|
+
- **Local file loading** — load structures from the local filesystem into the browser viewer
|
|
34
|
+
- **Picking support** — optional click-to-select atoms (`Viewer(picking=True)`)
|
|
35
|
+
- **Configurable layout** — `width` and `height` parameters with sensible defaults
|
|
36
|
+
|
|
37
|
+
## License
|
|
38
|
+
|
|
39
|
+
BSD-3-Clause
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
[package]
|
|
2
|
+
name = "patinae-algos"
|
|
3
|
+
version.workspace = true
|
|
4
|
+
edition.workspace = true
|
|
5
|
+
authors.workspace = true
|
|
6
|
+
license.workspace = true
|
|
7
|
+
repository.workspace = true
|
|
8
|
+
homepage.workspace = true
|
|
9
|
+
documentation.workspace = true
|
|
10
|
+
description = "Computational algorithms for Patinae (alignment, SVD, sequence alignment)"
|
|
11
|
+
|
|
12
|
+
[features]
|
|
13
|
+
default = []
|
|
14
|
+
parallel = ["dep:rayon"]
|
|
15
|
+
|
|
16
|
+
[dependencies]
|
|
17
|
+
lin_alg = { workspace = true }
|
|
18
|
+
thiserror = { workspace = true }
|
|
19
|
+
phf = { workspace = true }
|
|
20
|
+
bitflags = { workspace = true }
|
|
21
|
+
serde = { workspace = true }
|
|
22
|
+
rayon = { workspace = true, optional = true }
|
|
23
|
+
|
|
24
|
+
[lints]
|
|
25
|
+
workspace = true
|