Mandelbrot Explorer 是一款用于在MandelBort集/Julia集上进行无限漫游的软件,使用VS2013+CUDA6.5开发而成。它也是我学习CUDA开发的一个小小的成果,欢迎大家測试与指正。



本软件的特色:

1、无限纵深和放大Mandelbrot/Julia集的细节,感受隐藏在深处的秘密。

2、生成的图像能够实时进行着色调整,调整之后能够Ctrl+S另存。

3、本软件通过使用NVidia的CUDA加速运算功能,在硬件支持的前提下,对全部的运算均大幅加速。

而且也实现了总计算量的动态分配(依据计算能力分别分配到CPU和GPU同一时候计算)。在本人的GTX 970显卡上,加速比超过30倍!

4、在Mandelbrot/Julia集上的自己主动漫游和遍历,并可通过键盘的方向键与Home键,控制漫游的方向。

5、支持漫游时的操作回退(右键撤销上一步操作)。

6、支持超大分辨率的图片生成,而且,在不进入高精度计算模式时。生成速度全然能够接受。(本人3G内存下。最大生成成功的图片分辨率为14500x14500!)

7、对于保存在MandelbrotImage目录下的图片文件。能够配合AVS视频脚本引擎。直接输出为影片,十分方便!

(默认存储的都是原始的BMP文件,简单的艺术加工和处理,能够通过Photoshop的批量处理功能来操作)





本软件适用的操作系统(已測试)为 Windows XP SP3、Win7、Windows 2008 R2

GPU硬件加速功能因为本人电脑硬件与系统条件所限。眼下仅在Win7 32位系统+GTX970中測试通过,尚未在其它操作系统中測试。



另外,“直接显示渲染结果”功能会极大的提升图像质量,可是也会添加4至10倍的运算量,请酌情使用。



主窗体中有效的功能与快捷键:

Ctrl+M 开启新的Mandelbrot集的浏览进程(默认启动模式)

Ctrl+J 开启新的Julia集的浏览进程



Ctrl+S 保存当前所示图像

Ctrl+O 载入过去的參数存档(*.mdl文件)



鼠标左键拖动放大,右键撤销上一步操作。





重要说明:

使用之前。请将“预防在计算中显卡失去响应.reg”导入注冊表,其主要作用是防止操作系统在使用显卡计算时,错误的觉得显卡失去响应并且重新启动显卡。

导入注冊表之后。可能须要又一次启动电脑。

在程序所在目录下,有一个名为MandelBrotImage的子目录,里面是依据每一个浏览进程的启动时间而命名的目录。当中存放了每次浏览的图像文件与參数存档。



本程序属于高密度运算类软件。若您的电脑的散热系统无法正常工作,请考虑勿长时间执行本程序。

因此造成的不论什么软件、硬件损失,本人概不负责。

若您在阅读完本说明内容之后。继续使用本软件,则视为自己主动允许以上简要协议。



下载地址:

http://tieba.baidu.com/p/3455560192

其它很多其它信息,请訪问百度贴吧里的 Mandelbrot吧



欢迎大家多多试用并分享在漫游过程中,看到的漂亮的图形(能够将參数存档文件一并分享出来,让其它人在你的基础上继续更深层次的漫游)



下面是一些在漫游时的截图:













[原创+分享]Mandelbrot Explorer的更多相关文章

  1. 【原创分享·支付宝支付】HBuilder打包APP调用支付宝客户端支付

    前言 最近有点空余时间,所以,就研究了一下APP支付.前面很早就搞完APP的微信支付了,但是由于时间上和应用上的情况,支付宝一直没空去研究.然后等我空了的时候,发现支付宝居然升级了支付逻辑,虽然目前还 ...

  2. 【原创分享·微信支付】C# MVC 微信支付教程系列之现金红包

            微信支付教程系列之现金红包           最近最弄这个微信支付的功能,然后扫码.公众号支付,这些都做了,闲着无聊,就看了看微信支付的其他功能,发现还有一个叫“现金红包”的玩意,想 ...

  3. 【原创分享·微信支付】 C# MVC 微信支付教程系列之扫码支付

    微信支付教程系列之扫码支付                  今天,我们来一起探讨一下这个微信扫码支付.何为扫码支付呢?这里面,扫的码就是二维码了,就是我们经常扫一扫的那种二维码图片,例如,我们自己添 ...

  4. 【原创分享·微信支付】 C# MVC 微信支付教程系列之公众号支付

    微信支付教程系列之公众号支付         今天,我们接着讲微信支付的系列教程,前面,我们讲了这个微信红包和扫码支付.现在,我们讲讲这个公众号支付.公众号支付的应用环境常见的用户通过公众号,然后再通 ...

  5. 【原创分享·微信支付】C# MVC 微信支付之微信模板消息推送

    微信支付之微信模板消息推送                    今天我要跟大家分享的是“模板消息”的推送,这玩意呢,你说用途嘛,那还是真真的牛逼呐.原因在哪?就是因为它是依赖微信生存的呀,所以他能不 ...

  6. [置顶] 【原创分享】嵌入式linux应用之内核移植定制篇-前篇(linux-3.8.12 mini2440)--20130824

    移植的话其实很早就做过了,不过那时用的友善定制的老版本2.6.32 驱动什么的全部弄好了,仅仅用默认配置而已.基本不用改动什么,很简单. 内核更新其实非常的快,今天我就用个3.8.12来移植. 当然, ...

  7. 微信团队原创分享:iOS版微信的内存监控系统技术实践

    本文来自微信开发团队yangyang的技术分享. 一.前言 FOOM(Foreground Out Of Memory),是指App在前台因消耗内存过多引起系统强杀.对用户而言,表现跟crash一样. ...

  8. Android无线开发的几种常用技术(阿里巴巴资深工程师原创分享)

    完整的开发一个android移动App需要经过从分解需求.架构设计到开发调试.测试.上线发布等多个阶段,在发布后还会有产品功能上的迭代演进,此外还会面对性能.安全.无线网络质量等多方面的问题. 移动A ...

  9. 原创:分享asp.net伪静态成目录形式iis如何设置

    服务器租用详解asp.net伪静态成目录形式iis如何设置: 一.首先介绍一下asp.net伪静态成html后缀iis如何设置的 iis6 伪静态 iis配置方法 图解 1.右键点击 要设置网站的网站 ...

随机推荐

  1. delphi 动态调用API

    好处没有这个API 也可以启动程序只是调用会出错. function __IsNativeVhdBoot: Boolean; type TIsNativeVhdBoot = function( Nat ...

  2. MYSQL数据库攻防与加固

    这是“官方”原本的模样搬过来的..写的很粗略啊.还有篇详细的请查看:MySQL安全加固题目及答案参考解析 启动xserver-mysql,进入xserver-mysql,开始实验,实验步骤如下: 1. ...

  3. 360 Atlas中间件安装及使用

    1.下载Atlas wget https://github.com/Qihoo360/Atlas/releases/download/2.2.1/Atlas-2.2.1.el6.x86_64.rpm ...

  4. cobbler 无人值守-安装

    环境准备 准备两台主机,如centos6和centos7 centos7当作server服务器 关闭selinux 关闭防火墙 安装 cobbler包光盘里是没有的,要配置epel源,这里就说怎么配置 ...

  5. nginx如何防止高负载造成服务器崩溃

    nginx-http-sysguard模块 一.作用 防止因nginx并发访问量过高或者遭受攻击造成服务器宕机,可根据负载设置界面跳转.   二.安装配置 1.下载模块软件包 wget https:/ ...

  6. Numpy的基本操作和相关概念(一)

    基础操作 np.random.randn() 符合正态分布的数据 np.vstack((a,b)) 矩阵水平拼接 np.hstack((a,b)) 矩阵垂直拼接 np.dot(a,c) 点阵积 A@B ...

  7. python基础——2(基本数据类型及运算符)

    目录 为何数据要区分类型? 一.数字类型 1.整型int 2.浮点型float 二.字符串str 三.列表类型list 四.字典类型 五.布尔类型 运算符的介绍 一.算术运算符 二.比较运算符 三.赋 ...

  8. 【转】SQL Server 2008 新数据类型

    概览: 新日期和时间数据类型 代表在层次结构中的位置 用于处理空间数据的两种模型 在全球经济环境下开展业务这一趋势越来越要求各公司使用新型的数据.应用程序以及复杂的计算.SQL Server 2008 ...

  9. Python+selenium(操作隐藏元素)

    测试过程中,偶尔会碰到一些页面的隐藏元素,如下,是小编举的一个简单的例子: test.html <html> <head></head> <body> ...

  10. SQL Server 创建唯一约束sql语句

    SQL Server 创建唯一约束sql语句   语句示例:   在创建表是时同时创建, 创建id,name,sex三个字段的唯一索引 create table t1( id int primary ...