zoukankan      html  css  js  c++  java
  • dat.gui stats.js 通用参数配置及图像统计工具

    在网上看到了一个非常好的JS烟雾效果 https://paveldogreat.github.io/WebGL-Fluid-Simulation/
    看源码时发现了dat.gui很好用。

    dat.gui

    快速参数配置生成
    源码地址:https://github.com/dataarts/dat.gui

    stats.js

    图形化统计性能及计数
    源码地址:https://github.com/mrdoob/stats.js

    效果如下:

    代码如下:

    <!DOCTYPE html>
    <html lang="zh-CN">
    <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="renderer" content="webkit">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>dat_gui 数据测试</title>
    <style>
    /* css style */
    </style>
    
    <script src="https://lib.baomitu.com/jquery/3.3.1/jquery.min.js"></script>
    <script src="https://lib.baomitu.com/dat-gui/0.7.3/dat.gui.min.js"></script>
    <script src="https://lib.baomitu.com/stats.js/16/Stats.min.js"></script>
    <script>
    // js script
    var gui;
    var data = {
        name: 'Sam',
        speed: 0.5,
        color1: '#FF0000', // CSS string
        color2: [ 0, 128, 255 ], // RGB array
        color3: [ 0, 128, 255, 0.3 ], // RGB with alpha
        color4: { h: 350, s: 0.9, v: 0.3 }, // Hue, saturation, value
        fn: function(){
            alert('自定义函数');
        }
    };
    
    $(function(){
        gui = new dat.GUI({
            closed: true,
            useLocalStorage: true,
        });
    
        gui.add(data, 'name', ['Sam', 'Hello', 'h1']).name('姓名');
        var control = gui.add(data, 'speed', 0, 10).name('速度');
        gui.add(data, 'fn').name('按钮1');
        
        var f1 = gui.addFolder('颜色控制');
        f1.addColor(data, 'color1');
        f1.addColor(data, 'color2');
        f1.addColor(data, 'color3');
        f1.addColor(data, 'color4');
        
        control.onChange(function(value) {
            console.log("onChange:" + value)
        });
    
        control.onFinishChange(function(value) {
            console.log("onFinishChange" + value)
        });
        
        // 统计测试
        var stats = new Stats();
        var xPanel = stats.addPanel( new Stats.Panel( 'x', '#ff8', '#221' ) );
        var yPanel = stats.addPanel( new Stats.Panel( 'y', '#ff8', '#221' ) );
        document.body.appendChild( stats.dom );
    
        var x = 0;
        function animate() {
            stats.begin();
            
            xPanel.update( x++, 460 );
            yPanel.update( x%1000, 460 );
            stats.update();
            // monitored code goes here
            stats.end();
            requestAnimationFrame( animate );
        }
    
        requestAnimationFrame( animate );
    });
    </script>
    </head>
    <body>
    
    </body>
  • 相关阅读:
    【分享】使用Vivado,vck190 BIST 测试,遇到错误“IDCODE/SW CHECK: FAILED”,可以忽略。
    公司预算制定/财务信息化/管理层执行
    税款输入不正确 j2
    发票凭证仍然包含信息
    会计暂估
    委托加工\受托加工凭证处理\会计处理
    记录unknown filesystem type ntfs
    c#多进程通讯,今天,它来了
    多线程通信,IPC,进程通信
    go语言跨平台编译
  • 原文地址:https://www.cnblogs.com/zjfree/p/10148487.html
Copyright © 2011-2022 走看看