{ "info": { "author": "Gaetan Desrues", "author_email": "gaetan.desrues@inria.fr", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# SofaTools python package : ease the creation of a scene\n## Install\n\n```python\npip install sofatools\n# or python3 -m pip install --user sofatools\n```\n\n## Sofa scene launcher\n```python\nfrom sofatools import Launcher\nimport os\n\ncurDir = os.getcwd()\n\nfmm = Launcher({\n \"SOFA_PATH\" : \"path_to_sofa_build/bin/runSofa\",\n \"SCENE_PATH\" : os.path.join(curDir, \"scene.py\"),\n \"RESULT_DIR_PATH\" : os.path.join(curDir, \"Output\"),\n})\n\nfmm[\"N_IT\"] = 10\nfmm.run()\n```\n\nHere are the implemented parameters :\n\n | Key | Value |\n |:---:|:-----:|\n | `SOFA_PATH` | Path of runSofa : `path_to_sofa/bin/runSofa` |\n | `SCENE_PATH` | Path of the python scene |\n | `G_MODE` | `batch` or `qglviewer` (default `batch`) |\n | `RESULT_DIR_PATH` | Directory for output and log, will be created if doesn't exist |\n | `DT` | Time step of the simulation (default `0.01`) |\n | `GRAVITY` | Gravity (default `\"0 0 0\"`) |\n | `N_IT` | Number of time iterations (default `100`) |\n\nTo launch the scene, run\n```python\npython3 launch.py\n```\n\n\n\n## VTK unstructured grid reader\n\n```python\nfrom sofatools import MeshReader\n\nm = MeshReader(\"mesh.vtk\")\nprint(m)\n# ** Class vtk unstructured grid reader **\n# Filename : path_to_mesh.vtk\n# Points : 189\n# Cells : 1608\n# Tetras : 480\n# Triangles : 1128\n# Vertices : 0\n# Lines : 0\n# Hexas : 0\n\n\nm.positions[2] # Position of point 2\n# (3.2, 5.932, 0.0)\n\nm.tetras[3]\n# ** Class Cell **\n# Type : Tetrahedron (10)\n# Id : 3\n# Points : 50 12 150 51\n\nm.tetras[3][0] # Id of the first point in tetrahedron 3\n# 50\n\nm.cells[0] # return cell 0\nfor cell in m.cells # iterate over the cells\n\nm.positions[m.triangles[3][0]] # Position of the first point in triangle 3\nm.triangles[3].id # Id in cells of the third triangle\n# 483\nm.triangles[3].points # List of points of the triangle\n# [4, 12, 50]\n\ndata = m.getCellData(\"name\")\nfor d in data # iterate over the data\ndata.size\n# 150\ndata.range\n# (0.0, 15.0)\ndata[3] # Get the value on the third cell\n# 12\n```\n\n\n\n\n\n## Display the graph of a scene\n\n```python\nfrom sofatools import Graph\n\nprint(Graph(\"scene.py\"))\n```\n\nIf you add it to your `bashrc` :\n```\naffScene scene.py >> graph.txt\n```\n\nExample output :\n\n rootNode\n VisualStyle\n DefaultAnimationLoop\n DefaultVisualManagerLoop\n RequiredPlugin\n RequiredPlugin\n EulerImplicitSolver\n CGLinearSolver\n -> Ellipsoid\n ZonesVTKLoader\n Mesh\n ZoneFMM\n PlaceOrientDOFs\n MechanicalObject\n ZoneShapeFunction\n MechanicalObject\n BarycentricShapeFunction\n -> behavior\n ZoneGaussPointSampler\n TopologyGaussPointSampler\n MechanicalObject\n MLSMapping\n -> E\n MechanicalObject\n GreenStrainMapping\n HookeForceField\n -> visual\n MeshSTLLoader\n OglModel\n MLSMapping\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.inria.fr/gdesrues1/sofatools", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "sofatools", "package_url": "https://pypi.org/project/sofatools/", "platform": "", "project_url": "https://pypi.org/project/sofatools/", "project_urls": { "Homepage": "https://gitlab.inria.fr/gdesrues1/sofatools" }, "release_url": "https://pypi.org/project/sofatools/0.1.5/", "requires_dist": null, "requires_python": "", "summary": "Python package to ease the use of the Sofa-Framework and the creation of a scene.", "version": "0.1.5" }, "last_serial": 5760134, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "288ead800bea9d994c7feeb4b0c84fc5", "sha256": "f86c6b890b7946d147b24a1f10e43ca9126efa321ae745574cc47cb3007bf4a2" }, "downloads": -1, "filename": "sofatools-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "288ead800bea9d994c7feeb4b0c84fc5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5747, "upload_time": "2019-07-16T22:06:29", "url": "https://files.pythonhosted.org/packages/e6/1f/2d8ca1c06e6c16109256f0912c83eceb43874b3b31a132e3b33e294ff075/sofatools-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e23068221af0c52743e6bc8f9abcbd73", "sha256": "163ea2bff47d9a3dcc5852754dafed68c6d4d1b85efdb9b44ed91e00a3277c38" }, "downloads": -1, "filename": "sofatools-0.0.1.tar.gz", "has_sig": false, "md5_digest": "e23068221af0c52743e6bc8f9abcbd73", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4007, "upload_time": "2019-07-16T22:06:39", "url": "https://files.pythonhosted.org/packages/dc/a7/bad6768dad3f4c84237607472a376ecfc2a9283d16eddd8491dd29c3f162/sofatools-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "b4d7b354f807b32a7decb4fb99b86041", "sha256": "4415aef7cdddcaa3cdde18acc1a09326e4a7ca7cf81aa0b598a004d6ee7c7979" }, "downloads": -1, "filename": "sofatools-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "b4d7b354f807b32a7decb4fb99b86041", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6310, "upload_time": "2019-07-16T22:31:17", "url": "https://files.pythonhosted.org/packages/e4/3e/d3750fcaa7710184deaffaf7a5903443e94bdedfd2e88cfe1942bd6b09f3/sofatools-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9314b1782138ea600bb17f7ba00f3720", "sha256": "c17d25c2abbb679ea8e1d6d328072dc8d48e21b5b45bed9c3ad24a1413868626" }, "downloads": -1, "filename": "sofatools-0.0.2.tar.gz", "has_sig": false, "md5_digest": "9314b1782138ea600bb17f7ba00f3720", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4721, "upload_time": "2019-07-16T22:31:21", "url": "https://files.pythonhosted.org/packages/4e/37/0be8770699520302b87bb5d22e0ddfcfd7c5e3af675995290512b0e36565/sofatools-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "3d0793a6c29071e6861e01cdd6fbbd29", "sha256": "db22512c42924ae219c9933285eb45fa6eb61a638e1b7dd992feed3ae9e4f20c" }, "downloads": -1, "filename": "sofatools-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "3d0793a6c29071e6861e01cdd6fbbd29", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6596, "upload_time": "2019-07-17T08:48:44", "url": "https://files.pythonhosted.org/packages/de/5f/e73ec7ae68379f4e16859c77f42d8bb4bfd9c571e818b8d8aebd219cc52b/sofatools-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f79b7e014f4292a6d29b9f48538d0f06", "sha256": "ecb73f08c8778c81d95b30665d2588c9748daae3e697bc51f39c3248d4e1c0f9" }, "downloads": -1, "filename": "sofatools-0.0.3.tar.gz", "has_sig": false, "md5_digest": "f79b7e014f4292a6d29b9f48538d0f06", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5060, "upload_time": "2019-07-17T08:48:45", "url": "https://files.pythonhosted.org/packages/0d/7d/e90322b23cd94a5b4663fce78bbdea2fa068b96c5fb5d0f8dcd509a54f45/sofatools-0.0.3.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "c31e5961b2cae1b69791773629042788", "sha256": "76717542d80401d6c03acc8b312dd7132eefee252dc59862f99ff57220561f5b" }, "downloads": -1, "filename": "sofatools-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "c31e5961b2cae1b69791773629042788", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6635, "upload_time": "2019-07-17T08:55:20", "url": "https://files.pythonhosted.org/packages/93/b3/738955000814ed9f3148244db8882ed9b5a718b55b648cf3199dc1d1e84c/sofatools-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7fe884684c7814a818976830c2dfca62", "sha256": "bc817ca4b0196950c4e6be6c5213a1f73dfbc3ced80805078c74c985e8bd30a6" }, "downloads": -1, "filename": "sofatools-0.1.0.tar.gz", "has_sig": false, "md5_digest": "7fe884684c7814a818976830c2dfca62", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5100, "upload_time": "2019-07-17T08:55:21", "url": "https://files.pythonhosted.org/packages/de/a2/4af0d60bd71d7db03d66a90c2561563d6ec07de1df8301ce78755a4b5681/sofatools-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "8ebd94a70955524e3d0184554ceabee1", "sha256": "d7a7ac91c16c0d1b1833d384a72fd960e503fff059690a4a03caac43ca1badeb" }, "downloads": -1, "filename": "sofatools-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "8ebd94a70955524e3d0184554ceabee1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6888, "upload_time": "2019-07-17T20:58:46", "url": "https://files.pythonhosted.org/packages/04/b5/c8c1dd76bf0329459df475d50509c514bf63751ab4523c102934426d281c/sofatools-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "692b9e40f9735ffb17a77617e3c5c566", "sha256": "9475b42834da4f62da0109cd6b67550d48f34873512c31ece009f8ede1173e7b" }, "downloads": -1, "filename": "sofatools-0.1.1.tar.gz", "has_sig": false, "md5_digest": "692b9e40f9735ffb17a77617e3c5c566", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5345, "upload_time": "2019-07-17T20:58:47", "url": "https://files.pythonhosted.org/packages/32/93/0aafa8795b8dd93715bc54b042f8d1469e0d0f8852dc2a139bf0c718d550/sofatools-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "08e4c9b08447ecfe99917d71a1b1edfc", "sha256": "477090bffabfae3189c0f2b7f9335335ba59a8c27c2e8fab1273f100cf4ad009" }, "downloads": -1, "filename": "sofatools-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "08e4c9b08447ecfe99917d71a1b1edfc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6908, "upload_time": "2019-07-17T21:34:25", "url": "https://files.pythonhosted.org/packages/b4/93/8b0c1990cddb2f2702a3dc3ea93d9e1155a169b87b363694683f7410426c/sofatools-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "70352b17c696aafc9681019c1b65cf99", "sha256": "a14b7ceaed202a836ac3f6abe756c0b6c40785b7cca00b8e53882cf3b239abd3" }, "downloads": -1, "filename": "sofatools-0.1.2.tar.gz", "has_sig": false, "md5_digest": "70352b17c696aafc9681019c1b65cf99", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5378, "upload_time": "2019-07-17T21:34:27", "url": "https://files.pythonhosted.org/packages/fb/3b/861b5e75138f5f174a377cece241023dc0459a4d2a37f6d5080254c8755b/sofatools-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "fef8a153ad9f2ee831b9b9f5dba1a7f2", "sha256": "ac024bc27575207885cadb323f2211321479fb5e41c86e295e1b88555c4e9315" }, "downloads": -1, "filename": "sofatools-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "fef8a153ad9f2ee831b9b9f5dba1a7f2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7017, "upload_time": "2019-07-18T08:27:01", "url": "https://files.pythonhosted.org/packages/a7/fd/63051f31cf57a6932d11acc91c3a403a84fc36bbca890863c8ef662d2259/sofatools-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3f9b5a3d105d7bbfdf5e2f0b9129c2a3", "sha256": "bd589378e2b95ec2140f51f41063f130540201b331770444fc00a2d67bb58017" }, "downloads": -1, "filename": "sofatools-0.1.3.tar.gz", "has_sig": false, "md5_digest": "3f9b5a3d105d7bbfdf5e2f0b9129c2a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5498, "upload_time": "2019-07-18T08:27:02", "url": "https://files.pythonhosted.org/packages/12/17/20bb9d1c6920850b16a4bba47c3708693b4ffbf8087fddb83b2bc1f7636f/sofatools-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "231f67abe535421fe3e318712dfde1d4", "sha256": "d532937f465d716874b0e1675434ee84e3fc734fae377238b0fffbceb46137c0" }, "downloads": -1, "filename": "sofatools-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "231f67abe535421fe3e318712dfde1d4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7062, "upload_time": "2019-08-05T08:59:58", "url": "https://files.pythonhosted.org/packages/52/22/7a0644d0fabe140632681243c3c55efe275cf1b342627697458692919f51/sofatools-0.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "48c2b6cc6f18c85f78f2cb184e4b6ad5", "sha256": "30342fdbb4509c7a87d583bc7c51a81f24206b96ca21f9474575acf981d55b3f" }, "downloads": -1, "filename": "sofatools-0.1.4.tar.gz", "has_sig": false, "md5_digest": "48c2b6cc6f18c85f78f2cb184e4b6ad5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5546, "upload_time": "2019-08-05T08:59:59", "url": "https://files.pythonhosted.org/packages/b7/89/8b30f1908f2e266af4bc1e424c50e3469eb1264e284d8705d96be8a09506/sofatools-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "21686bb4184e44f4e214b0374c266f52", "sha256": "fd0a928e15a0d18aa5a327c0f4d8beb2d2f1cc4c3275b9effd870f0d1c038b14" }, "downloads": -1, "filename": "sofatools-0.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "21686bb4184e44f4e214b0374c266f52", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7071, "upload_time": "2019-08-30T12:43:10", "url": "https://files.pythonhosted.org/packages/1d/1e/33a053184f497d7abcc21c7f4da4c5d3d4fd8ef716af08885c6fdfdb573f/sofatools-0.1.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8d44cd3e4ab73dce56607ae40cf360d5", "sha256": "e4f5506ec5bd0324bacdb045f9dba6d6c338dd498c0294822beb03b0da1d0265" }, "downloads": -1, "filename": "sofatools-0.1.5.tar.gz", "has_sig": false, "md5_digest": "8d44cd3e4ab73dce56607ae40cf360d5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5539, "upload_time": "2019-08-30T12:43:12", "url": "https://files.pythonhosted.org/packages/c6/23/d6f1e2bb9b207d67853d6e127776c5f23b617c6bcefeda51c928b9048e2c/sofatools-0.1.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "21686bb4184e44f4e214b0374c266f52", "sha256": "fd0a928e15a0d18aa5a327c0f4d8beb2d2f1cc4c3275b9effd870f0d1c038b14" }, "downloads": -1, "filename": "sofatools-0.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "21686bb4184e44f4e214b0374c266f52", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7071, "upload_time": "2019-08-30T12:43:10", "url": "https://files.pythonhosted.org/packages/1d/1e/33a053184f497d7abcc21c7f4da4c5d3d4fd8ef716af08885c6fdfdb573f/sofatools-0.1.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8d44cd3e4ab73dce56607ae40cf360d5", "sha256": "e4f5506ec5bd0324bacdb045f9dba6d6c338dd498c0294822beb03b0da1d0265" }, "downloads": -1, "filename": "sofatools-0.1.5.tar.gz", "has_sig": false, "md5_digest": "8d44cd3e4ab73dce56607ae40cf360d5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5539, "upload_time": "2019-08-30T12:43:12", "url": "https://files.pythonhosted.org/packages/c6/23/d6f1e2bb9b207d67853d6e127776c5f23b617c6bcefeda51c928b9048e2c/sofatools-0.1.5.tar.gz" } ] }