{ "info": { "author": "Saifeddine ALOUI", "author_email": "aloui.saifeddine@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# QPanda3D\nA working Panda3D wrapper for PyQt5\nThe objective is to be able to put on the same screen, panda3D and pyQT widgets.\n\nThis package is still a work in progress.\nWhat works :\n- Creating a panda3D world inside a seemlessly QWidget object that can be placed alog with other QT stuff\n- Full access to panda3D objects, lights ...\n\nWhat doesn't work yet:\n- Mouse and keyboard interactions\n- QWidget resizing. For now, the widget size is fixed, which means that you can not use it alongside with other Qt widgets without cropping the 3D scene.\n\n## Installation\n```bash\npip install QPanda3D\n```\n## Usage\n1 - create your world by inheriting from Panda3DWorld\n```python\nfrom QPanda3D.Panda3DWorld import Panda3DWorld\nclass MyWorld(Panda3DWorld):\n Panda3DWorld.__init__(self)\n # from this point, act as if you are defining a classic panda3D environment\n self.cam.setPos(0, -28, 6)\n self.testModel = loader.loadModel('panda')\n self.testModel.reparentTo(render)\n```\n2 - In your main, just create an instance of your world, create a Q\n```python\nfrom QPanda3D.QPanda3DWidget import QPanda3DWidget\nif __name__ == \"__main__\": \n world = MyWorld() \n\n app = QApplication(sys.argv)\n appw=QMainWindow()\n appw.setGeometry(50, 50, 800, 600)\n\n pandaWidget = QPanda3DWidget(world)\n appw.setCentralWidget(pandaWidget)\n appw.show()\n\n sys.exit(app.exec_()) \n\n```\n\n## Widget resizing policy\nStarting from V 0.4, the widget is automatically resized without making any stretching artefacts. Resizing policy parameters (introduced in V 0.2) have been removed since they are no more needed.\n\n```python\n\nfrom QPanda3D.QPanda3DWidget import QPanda3DWidget\nif __name__ == \"__main__\": \n world = MyWorld() \n\n app = QApplication(sys.argv)\n appw=QMainWindow()\n appw.setGeometry(50, 50, 800, 600)\n\n pandaWidget = QPanda3DWidget(world)\n appw.setCentralWidget(pandaWidget)\n appw.show()\n\n sys.exit(app.exec_()) \n\n```\n\nyou can also tell the Panda3DWorld object what is the default view size that you prefer when creating it.\n\n```python\nfrom QPanda3D.Panda3DWorld import Panda3DWorld\nclass MyWorld(Panda3DWorld):\n Panda3DWorld.__init__(self, width=1024, height=768)\n # from this point, act as if you are defining a classic panda3D environment\n self.cam.setPos(0, -28, 6)\n self.testModel = loader.loadModel('panda')\n self.testModel.reparentTo(render)\n```\nJust make sure that your ratio is adequate with your real widget size.\n\n## TODO\n- Add mouse and keyboard interactions\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://github.com/ParisNeo/QPanda3D", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "QPanda3D", "package_url": "https://pypi.org/project/QPanda3D/", "platform": "", "project_url": "https://pypi.org/project/QPanda3D/", "project_urls": { "Homepage": "https://github.com/ParisNeo/QPanda3D" }, "release_url": "https://pypi.org/project/QPanda3D/0.2.5/", "requires_dist": null, "requires_python": "", "summary": "A binding to use Panda3D as a PyQt5 widget", "version": "0.2.5" }, "last_serial": 5437940, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "53b10dc9fa67e51498d12a1e92d9a30e", "sha256": "0647f57ddacdfd8c94bee65d9d706cf8999eb00c22d980d9a534f2899d102cb5" }, "downloads": -1, "filename": "QPanda3D-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "53b10dc9fa67e51498d12a1e92d9a30e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16612, "upload_time": "2019-04-12T23:28:51", "url": "https://files.pythonhosted.org/packages/1c/40/55bb08ce8d95e88570da547a6d6f48125e39415416e0a8be4985a376f356/QPanda3D-0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "67a5db33637202c465ef427728fd9059", "sha256": "9d35ac9ad7d97a27b802c40b1bfd336931179fd5a74498f56ce3e6c46cef2215" }, "downloads": -1, "filename": "QPanda3D-0.1.tar.gz", "has_sig": false, "md5_digest": "67a5db33637202c465ef427728fd9059", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3102, "upload_time": "2019-04-12T23:28:54", "url": "https://files.pythonhosted.org/packages/48/7f/818306e1dbff9401f12ba8432e88aae9ff664fa0e61b9d672ae3393b5b45/QPanda3D-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "a5448d22e882b49800f29f9b363b5359", "sha256": "94eb574d2e196f1585ab308bda80b139386e1d5e6b199aa9ba3223b5d3a82693" }, "downloads": -1, "filename": "QPanda3D-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "a5448d22e882b49800f29f9b363b5359", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16892, "upload_time": "2019-04-13T00:01:12", "url": "https://files.pythonhosted.org/packages/b4/95/cc4399057e12149413f013f530d19cfc3834845c5a97e9d24d35ee4c8132/QPanda3D-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7755e2a1bbc3c269515f2a7b5c03a54d", "sha256": "faa72a87a50c7e3a749c7e37cdc2e742f6430769b2a919af34792515eee9faf8" }, "downloads": -1, "filename": "QPanda3D-0.1.1.tar.gz", "has_sig": false, "md5_digest": "7755e2a1bbc3c269515f2a7b5c03a54d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3380, "upload_time": "2019-04-13T00:01:14", "url": "https://files.pythonhosted.org/packages/b8/94/63c368e71ef05bd9dc0a2907d8dd91f37a1c0c665113711aba4e955d612a/QPanda3D-0.1.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "97d2042b5353dbfb36260693c2195c7d", "sha256": "faa6bce2459c85205dc3c50b1395f9aeebb0d66d31c33598530b027c5b36e8b9" }, "downloads": -1, "filename": "QPanda3D-0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "97d2042b5353dbfb36260693c2195c7d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17164, "upload_time": "2019-04-14T17:59:15", "url": "https://files.pythonhosted.org/packages/09/b0/28dde8448e7a6b4097c9a1274bc3b293a81ad28ac431903196f26c8485dc/QPanda3D-0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "73ff4d4f5ca81f7aa09cea3b06fe035d", "sha256": "8fd6b0332d6d76142926956682868e5561d85bdab56757d0724cc121fa8911f9" }, "downloads": -1, "filename": "QPanda3D-0.2.tar.gz", "has_sig": false, "md5_digest": "73ff4d4f5ca81f7aa09cea3b06fe035d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3948, "upload_time": "2019-04-14T17:59:16", "url": "https://files.pythonhosted.org/packages/5c/0e/7e72207df4a920b5d12e88a3b3b1f27f60bb5ac744dd138a5daafd8d9a5e/QPanda3D-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "a2833a28b898c6c5f44ed1e2e43ffdd1", "sha256": "9dbb0cd3ed420127e01283c5bd3ddb031e91e96440d0d74f621e6e51eb69896f" }, "downloads": -1, "filename": "QPanda3D-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "a2833a28b898c6c5f44ed1e2e43ffdd1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17557, "upload_time": "2019-04-15T17:52:51", "url": "https://files.pythonhosted.org/packages/f4/1d/e3b5334f2ea0bc34d5a786fca9e0fa9e2ca5947b3337b71329419211f757/QPanda3D-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b8f27f4e1efdeaecdbf51236426d16ea", "sha256": "c920f3f2e67ae2891d2bd10d7a7db86d41245b8c51b0f628637fb2054971d6d4" }, "downloads": -1, "filename": "QPanda3D-0.2.1.tar.gz", "has_sig": false, "md5_digest": "b8f27f4e1efdeaecdbf51236426d16ea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4348, "upload_time": "2019-04-15T17:52:53", "url": "https://files.pythonhosted.org/packages/39/89/4320e5dc033f33b0c18991b5add9501df8722c9102ef03cf572dd088b460/QPanda3D-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "dbc14b7a7ca8d12453553177d343d174", "sha256": "8e9805040e797a6f736a9569f4063b46f825ef44385eaa3237dda8183bb97f2d" }, "downloads": -1, "filename": "QPanda3D-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "dbc14b7a7ca8d12453553177d343d174", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19825, "upload_time": "2019-04-29T23:25:19", "url": "https://files.pythonhosted.org/packages/f5/59/dca0a8a042a974a370c940de93b516d8754ece9408cddf93c5bade953143/QPanda3D-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2f8fec0f9e4429390c70f7d5075a0f45", "sha256": "36b97f9ac606476f9a020ca2d1502c297b400c735b3fc75321ca3dbce4fe9adc" }, "downloads": -1, "filename": "QPanda3D-0.2.2.tar.gz", "has_sig": false, "md5_digest": "2f8fec0f9e4429390c70f7d5075a0f45", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6137, "upload_time": "2019-04-29T23:25:23", "url": "https://files.pythonhosted.org/packages/63/37/74409546d84603921220504f58aaa56a8de9b4657e9fb037a5a2b6d3f977/QPanda3D-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "94a45cd2d4b389b02b9ee2018c2d01a3", "sha256": "d33bdecc95d4e35b6ea131bb87bbeafe1bf9179bcdffafe15a504c1e424e817c" }, "downloads": -1, "filename": "QPanda3D-0.2.3-py3-none-any.whl", "has_sig": false, "md5_digest": "94a45cd2d4b389b02b9ee2018c2d01a3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19848, "upload_time": "2019-05-04T07:35:15", "url": "https://files.pythonhosted.org/packages/09/9c/0013bbb2554561e62a1a333b230dd64e740b06afcd3f6d0a40c5d54e6596/QPanda3D-0.2.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1b6e50c488d0113fb7962ea2df595f86", "sha256": "109638a48b07e8f6c665d18f8e30bd032279bbb3f87bc52a75842129cac8a82a" }, "downloads": -1, "filename": "QPanda3D-0.2.3.tar.gz", "has_sig": false, "md5_digest": "1b6e50c488d0113fb7962ea2df595f86", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6180, "upload_time": "2019-05-04T07:35:16", "url": "https://files.pythonhosted.org/packages/fa/25/1873e5cd8e0d0435a8018d9c89a62b37bd3f513d464a448ff1ab5cc89e86/QPanda3D-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "ff13140a5d75105d4ad0f86b13df4af1", "sha256": "fb34d306e1e91be1a1ab336a5a3068423157c18d530b6a4bd5becadac84565ce" }, "downloads": -1, "filename": "QPanda3D-0.2.4-py3-none-any.whl", "has_sig": false, "md5_digest": "ff13140a5d75105d4ad0f86b13df4af1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19920, "upload_time": "2019-06-20T20:22:15", "url": "https://files.pythonhosted.org/packages/6e/87/9527bcad0265f9ee9447889db78f918e0fb2095193a6b22c368bab15f08f/QPanda3D-0.2.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8f7ad51d0006eee7153a4b4bb22d8103", "sha256": "4925f468fe4aac038f9fbef6a33c83bd5089f6b9ca98a1b94357399aae1db97b" }, "downloads": -1, "filename": "QPanda3D-0.2.4.tar.gz", "has_sig": false, "md5_digest": "8f7ad51d0006eee7153a4b4bb22d8103", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6260, "upload_time": "2019-06-20T20:22:17", "url": "https://files.pythonhosted.org/packages/62/9d/2184594f8cc498814404a182698d3dd93b843bf12ed452e2ab01e33562e3/QPanda3D-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "c03cea718bac7509be73501436cb4321", "sha256": "6503ebc6855941a955c6c56eb5ac9c02e7a465dfcfc80016e49dee9b1ed94954" }, "downloads": -1, "filename": "QPanda3D-0.2.5-py3-none-any.whl", "has_sig": false, "md5_digest": "c03cea718bac7509be73501436cb4321", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23410, "upload_time": "2019-06-23T18:07:03", "url": "https://files.pythonhosted.org/packages/f2/22/ed552a22b1282089a843f54567c088c20a5aa292a5f07681cc206259bab3/QPanda3D-0.2.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f07e5e9ed429ca23ee741f3e38a3a70b", "sha256": "b39b2c72e6eb7a2169865345e647633d4193b3cb747c164e28f44feb42885197" }, "downloads": -1, "filename": "QPanda3D-0.2.5.tar.gz", "has_sig": false, "md5_digest": "f07e5e9ed429ca23ee741f3e38a3a70b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10092, "upload_time": "2019-06-23T18:07:05", "url": "https://files.pythonhosted.org/packages/0d/0b/d9410015115c9cc92c954e1dba0fd6d57cfaba7098a205cf840a8a54a371/QPanda3D-0.2.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c03cea718bac7509be73501436cb4321", "sha256": "6503ebc6855941a955c6c56eb5ac9c02e7a465dfcfc80016e49dee9b1ed94954" }, "downloads": -1, "filename": "QPanda3D-0.2.5-py3-none-any.whl", "has_sig": false, "md5_digest": "c03cea718bac7509be73501436cb4321", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23410, "upload_time": "2019-06-23T18:07:03", "url": "https://files.pythonhosted.org/packages/f2/22/ed552a22b1282089a843f54567c088c20a5aa292a5f07681cc206259bab3/QPanda3D-0.2.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f07e5e9ed429ca23ee741f3e38a3a70b", "sha256": "b39b2c72e6eb7a2169865345e647633d4193b3cb747c164e28f44feb42885197" }, "downloads": -1, "filename": "QPanda3D-0.2.5.tar.gz", "has_sig": false, "md5_digest": "f07e5e9ed429ca23ee741f3e38a3a70b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10092, "upload_time": "2019-06-23T18:07:05", "url": "https://files.pythonhosted.org/packages/0d/0b/d9410015115c9cc92c954e1dba0fd6d57cfaba7098a205cf840a8a54a371/QPanda3D-0.2.5.tar.gz" } ] }