zoukankan      html  css  js  c++  java
  • WHY数学图形可视化工具(开源)

    WHY数学图形可视化工具

    软件下载地址:http://files.cnblogs.com/WhyEngine/WhyMathGraph.zip

    源码下载地址: http://pan.baidu.com/s/1jG9QKq6

    软件的开发语言是C++,开发环境是VS2008,渲染使用的是D3D9

    QQ交流群: 367752815

    该软件是之前发布的WHY数学表达式的3D可视化最新版本

          该软件用于将数学表达式以图形的形式显示出来.软件中定义一套简单易学的脚本语言,用于描述数学表达式.使用时需要先要将数学表达式写成该脚本的形式,解析脚本代码以生成相应的图形.能够生成曲线图形和曲面图形. 目前只能处理显示表达式.

    (1)主界面

     

          在文件夹” MathScript”中,提供了500个以上已经写好的数学表达式脚本文件.将数学脚本文件拖入到主界面中,即显示其图形.亦可以通过菜单项打开脚本文件.

     

     

          如果图形是一个3D图形,那么软件会自动为你切换到3D显示模式.使用鼠标右键拖动,以旋转视角.键盘上的WSAD,QERF,上下左右也对视角进行控制.这个不细讲了,用户自己去体验吧.如果图形是一个2D图形,打开时为二维显示模式,用户可以按下键盘上的’O’键,在3D,2D间进行切换.鼠标滚轮可以对视口进行缩放.

          下图为一个二维的视图:

     

     

    (2)UI界面

          按下键盘上的’U’键,会在左边显示一套UI控件:

     

          用于对一些显示属性的操作.可惜我的引擎目前不支持中文字体,所以先将就着用吧.

     

    (3)纹理设置

          按下键盘上的’0’键,会在右边显示一个纹理选择控件,用于设置数学曲面的纹理:

     

          UI面板上的也可以控制纹理选择控件.

          纹理文件存放在” Texture”文件夹下,用户可以将自己喜欢的图像文件放入其中.软件会自动为你加载.用户亦可以直接将图像文件拖入到主界面中.对图像格式的支持包括: dds,bmp,jpg,png,gif,tga.

     

    (4)显示控制

          当打开一个数学图形后,按下键盘上的’7’键,会显示一个滑动条控件,用于控制所显示的图形范围. 控件也可以.滑动条上有两个滑块,分别表示其显示范围的最小与最大,如下图:黄线处为显的区域,绿线处为未显示的区域.

          最小滑块与最大滑块可以错开:

          下图为对曲面图形的操作

     

          下图为对曲线图形的操作:

     

          当打开一个数学曲面图形后, 按下键盘上的’P’键或点下会在右下角显示两个对曲面上曲线进行操作的控件.

          如下图所展示:

     

           图中绿色曲线为第一维度的曲线,红色曲线为第二维度的曲线.

    (5)数学脚本面板

          软件工具栏上的按钮用于打开脚本编辑面板.

     

          用于打开脚本文件,编辑脚本,保存文件,解析脚本,输出编译信息.

          如果在这里编辑脚本,请记住按CTRL+回车才能实现换行.这个脚本编辑的控件不太好用,我自己写脚本通常是用TXT文本.

          如果没有图形显示,请看下编译信息输出.通常会为你提供一些出错信息.

     

    (6)快捷方式

    F5:         数学脚本编辑界面

    F6:         可视化属性面板

    F7:         包围盒面板

    F9:         系统配置面板

    F11:        全屏切换

    ESC:       退出全屏

    ‘X’:         恢复为默认视角

    ‘Z’:         将图形放置到视口中心

     

    'O':  视图切换

    'U':  开关UI界面

    'L':  开关灯光

    'B':  包围盒的可见属性切换

    'G':  地平面网格的可见属性切换

    'M':  坐标系轴的可见属性切换

    'N':  地面的可见属性切换

    'P':  MESH图形中,显示选择线

     

    '1':  MESH图形中,面片可见,线框不可见

    '2':  MESH图形中,面片不可见,线框可见

    '3':  MESH图形中,面片可见,线框可见

    '4':  MESH图形中,使用纹理色

    '5':  MESH图形中,使用顶点色

    '6':  MESH图形中,使用默认色

    '7'  :使用滑动条

    '8'  显示数据信息

    '9':  显示纹理设置控件

     

    '0':  重新编译脚本(如果脚本中使用了随机数函数,则重新编译后,生成的图形会不一样)

  • 相关阅读:
    mac 安装mysql. 使用brew install mysql 报错
    当忙碌成为借口的时候
    MySQL数据库导入导出详解[转发]
    一些模拟浏览器自动Post到服务器的工具(备忘)
    [转]一句css代码让你的网站变灰,一起悼念地震中逝去的生命!
    MYSQL命令行常用操作
    国外达人收集的Cheet Sheet
    SQL Server:将6字节的十六进制页面号转化成【文件号:页面号】格式函数
    javaWEB核心
    电商
  • 原文地址:https://www.cnblogs.com/WhyEngine/p/3854938.html
Copyright © 2011-2022 走看看