magic-maze


Namemagic-maze JSON
Version 2.0.5 PyPI version JSON
download
home_pagehttps://github.com/HeLiangHIT/magic_maze
Summarymaze game developed by python
upload_time2023-02-06 13:47:52
maintainer
docs_urlNone
authorHe Liang
requires_python
licenseMulan PSL v2
keywords maze pyqt
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # magic_maze

#### 介绍

迷宫游戏

#### 项目目的

娃最近迷恋迷宫游戏,买的迷宫书走完就没了,他表示还没玩够。

所以就做了这个迷宫游戏,可以实现随机生成迷宫、走迷宫、显示答案等效果,让他可以无限玩。

二维版本的玩腻了,小孩子还是比较喜欢有故事情节的迷宫,又追加做了三维视图模式(姑且叫: 好饿的熊猫找竹叶球吃)。


#### 安装使用

+ [源码](https://github.com/HeLiangHIT/magic_maze)安装: `git clone https://github.com/HeLiangHIT/magic_maze.git && cd magic_maze && python setup.py install`
+ pip源安装: `pip install magic_maze` 源地址 https://pypi.org/project/magic-maze/
+ ~~下载可执行文件: 到 https://github.com/HeLiangHIT/magic_maze/releases 下载可执行文件~~
+ 查看帮助使用: 源码 `python main.py --help`/ 二进制 `maze --help`
    * 支持自动生成迷宫、寻找最佳路径,且动态显示迷宫生成和搜索过程
    * 支持手动绘制迷宫(鼠标左键绘制通道、右键绘制墙体)、走迷宫(鼠标左键走、右键取消)
    * `maze -d 2d` 运行二维视图的迷宫
    * `maze -d 3d` 运行三维视图的迷宫

![./doc/demo-2d.png](./doc/demo-2d.png) ![./doc/demo-3d.png](./doc/demo-3d.png)



#### 软件架构

+ 核心目录结构解释:
    * algorithm 里面核心算法已抽象为通用接口,以支持扩展多种界面展现方式,详情查看[帮助文档](./doc/algorithm.txt)
```py
magic_maze
├── README.md # 项目介绍
├── algorithm # 核心算法和数据结构实现
├── demo # 使用示例模型等
├── doc # 帮助文档,主要基于 script/generate_doc.sh 脚本在提交时自动生成
├── main.py # 主程序
├── requirement.txt # 依赖
├── script # 单元测试、帮助文档生成等自动化脚本
└── ui # pyqt/panda3d 的 UI 主程序
```



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/HeLiangHIT/magic_maze",
    "name": "magic-maze",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "maze pyqt",
    "author": "He Liang",
    "author_email": "heianghit@foxmail.com",
    "download_url": "https://files.pythonhosted.org/packages/f6/cd/65bb2e060e630d23b2e8560d03890da711a603954f7f8238bd80eb587e82/magic_maze-2.0.5.tar.gz",
    "platform": null,
    "description": "# magic_maze\n\n#### \u4ecb\u7ecd\n\n\u8ff7\u5bab\u6e38\u620f\n\n#### \u9879\u76ee\u76ee\u7684\n\n\u5a03\u6700\u8fd1\u8ff7\u604b\u8ff7\u5bab\u6e38\u620f\uff0c\u4e70\u7684\u8ff7\u5bab\u4e66\u8d70\u5b8c\u5c31\u6ca1\u4e86\uff0c\u4ed6\u8868\u793a\u8fd8\u6ca1\u73a9\u591f\u3002\n\n\u6240\u4ee5\u5c31\u505a\u4e86\u8fd9\u4e2a\u8ff7\u5bab\u6e38\u620f\uff0c\u53ef\u4ee5\u5b9e\u73b0\u968f\u673a\u751f\u6210\u8ff7\u5bab\u3001\u8d70\u8ff7\u5bab\u3001\u663e\u793a\u7b54\u6848\u7b49\u6548\u679c\uff0c\u8ba9\u4ed6\u53ef\u4ee5\u65e0\u9650\u73a9\u3002\n\n\u4e8c\u7ef4\u7248\u672c\u7684\u73a9\u817b\u4e86\uff0c\u5c0f\u5b69\u5b50\u8fd8\u662f\u6bd4\u8f83\u559c\u6b22\u6709\u6545\u4e8b\u60c5\u8282\u7684\u8ff7\u5bab\uff0c\u53c8\u8ffd\u52a0\u505a\u4e86\u4e09\u7ef4\u89c6\u56fe\u6a21\u5f0f(\u59d1\u4e14\u53eb: \u597d\u997f\u7684\u718a\u732b\u627e\u7af9\u53f6\u7403\u5403)\u3002\n\n\n#### \u5b89\u88c5\u4f7f\u7528\n\n+ [\u6e90\u7801](https://github.com/HeLiangHIT/magic_maze)\u5b89\u88c5: `git clone https://github.com/HeLiangHIT/magic_maze.git && cd magic_maze && python setup.py install`\n+ pip\u6e90\u5b89\u88c5: `pip install magic_maze` \u6e90\u5730\u5740 https://pypi.org/project/magic-maze/\n+ ~~\u4e0b\u8f7d\u53ef\u6267\u884c\u6587\u4ef6: \u5230 https://github.com/HeLiangHIT/magic_maze/releases \u4e0b\u8f7d\u53ef\u6267\u884c\u6587\u4ef6~~\n+ \u67e5\u770b\u5e2e\u52a9\u4f7f\u7528: \u6e90\u7801 `python main.py --help`/ \u4e8c\u8fdb\u5236 `maze --help`\n    * \u652f\u6301\u81ea\u52a8\u751f\u6210\u8ff7\u5bab\u3001\u5bfb\u627e\u6700\u4f73\u8def\u5f84\uff0c\u4e14\u52a8\u6001\u663e\u793a\u8ff7\u5bab\u751f\u6210\u548c\u641c\u7d22\u8fc7\u7a0b\n    * \u652f\u6301\u624b\u52a8\u7ed8\u5236\u8ff7\u5bab(\u9f20\u6807\u5de6\u952e\u7ed8\u5236\u901a\u9053\u3001\u53f3\u952e\u7ed8\u5236\u5899\u4f53)\u3001\u8d70\u8ff7\u5bab(\u9f20\u6807\u5de6\u952e\u8d70\u3001\u53f3\u952e\u53d6\u6d88)\n    * `maze -d 2d` \u8fd0\u884c\u4e8c\u7ef4\u89c6\u56fe\u7684\u8ff7\u5bab\n    * `maze -d 3d` \u8fd0\u884c\u4e09\u7ef4\u89c6\u56fe\u7684\u8ff7\u5bab\n\n![./doc/demo-2d.png](./doc/demo-2d.png) ![./doc/demo-3d.png](./doc/demo-3d.png)\n\n\n\n#### \u8f6f\u4ef6\u67b6\u6784\n\n+ \u6838\u5fc3\u76ee\u5f55\u7ed3\u6784\u89e3\u91ca:\n    * algorithm \u91cc\u9762\u6838\u5fc3\u7b97\u6cd5\u5df2\u62bd\u8c61\u4e3a\u901a\u7528\u63a5\u53e3\uff0c\u4ee5\u652f\u6301\u6269\u5c55\u591a\u79cd\u754c\u9762\u5c55\u73b0\u65b9\u5f0f\uff0c\u8be6\u60c5\u67e5\u770b[\u5e2e\u52a9\u6587\u6863](./doc/algorithm.txt)\n```py\nmagic_maze\n\u251c\u2500\u2500 README.md # \u9879\u76ee\u4ecb\u7ecd\n\u251c\u2500\u2500 algorithm # \u6838\u5fc3\u7b97\u6cd5\u548c\u6570\u636e\u7ed3\u6784\u5b9e\u73b0\n\u251c\u2500\u2500 demo # \u4f7f\u7528\u793a\u4f8b\u6a21\u578b\u7b49\n\u251c\u2500\u2500 doc # \u5e2e\u52a9\u6587\u6863\uff0c\u4e3b\u8981\u57fa\u4e8e script/generate_doc.sh \u811a\u672c\u5728\u63d0\u4ea4\u65f6\u81ea\u52a8\u751f\u6210\n\u251c\u2500\u2500 main.py # \u4e3b\u7a0b\u5e8f\n\u251c\u2500\u2500 requirement.txt # \u4f9d\u8d56\n\u251c\u2500\u2500 script # \u5355\u5143\u6d4b\u8bd5\u3001\u5e2e\u52a9\u6587\u6863\u751f\u6210\u7b49\u81ea\u52a8\u5316\u811a\u672c\n\u2514\u2500\u2500 ui # pyqt/panda3d \u7684 UI \u4e3b\u7a0b\u5e8f\n```\n\n\n",
    "bugtrack_url": null,
    "license": "Mulan PSL v2",
    "summary": "maze game developed by python",
    "version": "2.0.5",
    "split_keywords": [
        "maze",
        "pyqt"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1e46bfe3bea60b145fa126a9d404fd2efdd78dd8eb60636189e5eae37115b029",
                "md5": "f1eacb77dc9d1101b3c2147c8ef31dd4",
                "sha256": "e447b82c6431691a4db324071f757f078c51119ac37eaa6b60fb3a48a184c8c7"
            },
            "downloads": -1,
            "filename": "magic_maze-2.0.5-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f1eacb77dc9d1101b3c2147c8ef31dd4",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": null,
            "size": 1430390,
            "upload_time": "2023-02-06T13:47:47",
            "upload_time_iso_8601": "2023-02-06T13:47:47.880499Z",
            "url": "https://files.pythonhosted.org/packages/1e/46/bfe3bea60b145fa126a9d404fd2efdd78dd8eb60636189e5eae37115b029/magic_maze-2.0.5-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f6cd65bb2e060e630d23b2e8560d03890da711a603954f7f8238bd80eb587e82",
                "md5": "ac7dd7faed99d4b79fa867844a09199f",
                "sha256": "ad1145fba2005f02f036f61460f2fd382a13f0204adc476a02c0b247001ce660"
            },
            "downloads": -1,
            "filename": "magic_maze-2.0.5.tar.gz",
            "has_sig": false,
            "md5_digest": "ac7dd7faed99d4b79fa867844a09199f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 1174961,
            "upload_time": "2023-02-06T13:47:52",
            "upload_time_iso_8601": "2023-02-06T13:47:52.412666Z",
            "url": "https://files.pythonhosted.org/packages/f6/cd/65bb2e060e630d23b2e8560d03890da711a603954f7f8238bd80eb587e82/magic_maze-2.0.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-02-06 13:47:52",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "HeLiangHIT",
    "github_project": "magic_maze",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "magic-maze"
}
        
Elapsed time: 0.61713s