亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ecgapplet.java

?? egc 信號(hào)提取applet程序源代碼
?? JAVA
?? 第 1 頁 / 共 5 頁
字號(hào):
/************************************************************************/
/*                                                                      */
/* ecgApplet.java                                                       */
/*                                                                      */
/* Copyright (C) 2003 Mauricio Villarroel                               */
/*  (mauricio.vllarroel@estudiantes.ucb.edu.bo)                         */
/*                                                                      */
/* ecgApplet.java and all its components are free software; you can     */
/* redistribute them and/or modify it under the terms of the            */
/* GNU General Public License as published by the Free Software         */
/* Foundation; either version 2 of the License, or (at your option)     */
/* any later version.                                                   */
/*                                                                      */
/* This file is distributed in the hope that it will be useful, but     */
/* WITHOUT ANY WARRANTY; without even the implied warranty of           */
/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.                 */
/* See the GNU General Public License for more details.                 */
/*                                                                      */
/************************************************************************/
/*                                                                      */
/* This file was created for the ECGSYN Application.                    */
/*                                                                      */
/* ECGSYN: A program for generating a realistic synthetic               */
/* Electrocardiogram Signals.                                           */
/* Copyright (c) 2003 by Patrick McSharry & Gari Clifford.              */
/* All rights reserved.                                                 */
/*                                                                      */
/* See IEEE Transactions On Biomedical Engineering,                     */
/* 50(3), 289-294, March 2003.                                          */
/* Contact:                                                             */
/* P. McSharry (patrick@mcsharry.net)                                   */
/* G. Clifford (gari@mit.edu)                                           */
/*                                                                      */
/************************************************************************/
/*                                                                      */
/* Further updates to this software will be published on:               */
/* http://www.physionet.org/                             */
/*                                                                      */
/************************************************************************/

import javax.swing.*;
import javax.swing.table.*;
import java.awt.*;
import java.text.*;
import java.util.Vector;
import java.io.File;
import java.io.IOException;
import java.awt.event.*;
import java.lang.Math.*;
import java.util.Timer;
import java.util.TimerTask;

/*
 * This class formats a number in decimal notation or in 
 * scientific notation.
 */
class FormatNumber{
    final static DecimalFormat dec1 = new DecimalFormat("0.0");
    final static DecimalFormat dec2 = new DecimalFormat("0.00");

    final static DecimalFormat sci1 = new DecimalFormat("0.0E0");
    final static DecimalFormat sci2 = new DecimalFormat("0.00E0");

    /*
     * Formats the 'number' parameter and returns it as a String.
     * precision = number of decimal places in the output.
     */
    public static String toString( double number,
                                   double upLimit,
                                   double loLimit,
                                   int precision)
    {
        // If number less than decimalLimit, or equal to zero, use decimal style
        if( number == 0.0 ||
            (Math.abs(number) <= upLimit && Math.abs(number) > loLimit) )
        {
            switch (precision){
                case 1 : return dec1.format(number);
                case 2 : return dec2.format(number);
                default: return dec1.format(number);
            }

        } else{
            // Create the format for Scientific Notation with E
            switch (precision){
                case 1 : return sci1.format(number);
                case 2 : return sci2.format(number);
                default: return sci1.format(number);
            }
        }
    }
}

/*
 *
 * Public main class
 */
public class ecgApplet extends javax.swing.JApplet implements AdjustmentListener{

    /**************************************
     * Colors for the Plotting Components *
     **************************************/
    protected Color ecgPlotColor            = Color.BLUE;
    protected Color frameLineColor          = Color.BLACK;
    protected Color frameInsideLineColor    = Color.LIGHT_GRAY;
    protected Color frameFillColor          = Color.WHITE;
    protected Color axesNumColor            = Color.GRAY;
    protected Color titleColor              = Color.BLACK;
    protected Color bgColor                 = Color.WHITE;

    /*********************************************
     * These constants used in drawText() method
     * for placement of the text within a given
     * rectangular area.
     *********************************************/ 
    final int CENTER = 0;
    final int LEFT   = 1;
    final int RIGHT  = 2;

    /*******************
     * Frame Dimensions.
     *******************/
    final int posFrameX =0;
    final int posFrameY =1;
    final int frameHeight =290;
    final int frameAmplitude = frameHeight/2;
    //Coordinates Origin
    final int posOriginY = posFrameY + (frameHeight/2);
    //X coordinates
    final int horzScaleY = posFrameY + frameHeight;
    final int horzScaleWidth = 100;
    final int horzScaleHeight = 20;
    final int fScaleNumSize = 9;
    
    /****************************************************
     * Limit below which scale values use decimal format,
     * above which they use scientific format.
     ****************************************************/
    double upLimit = 100.0;
    double loLimit = 0.01;
    
    /******************************
     * Ploting variables
     ******************************/
    boolean readyToPlot;
    int     plotScrollBarValue;
    double  plotZoom = 0.008;
    double  plotZoomInc = 2;
    /* Flag Variable, show if data has been generated. */
    private boolean ecgGenerated = false;    

    /****************************************************************
     *  GLOBAL ECG PARAMETERS:                                                  
     ****************************************************************/
    private int    N;               /*  Number of heart beats              */
    private double hrstd;           /*  Heart rate std                     */
    private double hrmean;          /*  Heart rate mean                    */
    private double lfhfratio;       /*  LF/HF ratio                        */
    private int    sfecg;           /*  ECG sampling frequency             */        
    private int    sf;              /*  Internal sampling frequency        */
    private double amplitude;       /*  Amplitude for the plot area        */
    private int seed;               /*  Seed                               */    
    private double Anoise;          /*  Amplitude of additive uniform noise*/
    private int    period;
    /* Define frequency parameters for rr process 
     * flo and fhi correspond to the Mayer waves and respiratory rate respectively
     */
    private double flo;             /*  Low frequency                      */
    private double fhi;             /*  High frequency                     */
    private double flostd;          /*  Low frequency std                  */
    private double fhistd;          /*  High frequency std                 */
    /* Order of extrema: [P Q R S T]  */
    private double[] theta = new double[6]; /* ti not in radians*/
    private double[] a = new double[6];
    private double[] b = new double[6];
    
    /*******************************
     * Variable for the Data table
     *******************************/
    private String[] peakStr = {"", "P", "Q", "R", "S", "T"};    

    /******************************************
     * Variables to Animate ECG
     ******************************************/
    //Animating in process?
    private boolean ecgAnimateFlg =false;
    Timer ecgAnimateTimer;
    private long ecgAnimateInterval;
    /* Total plotting Data Table Row */
    private int ecgAnimateNumRows;
    /* Current plotting Data Table Row */
    private int ecgAnimateCurRow;
    /* Plot Area Panel width */
    private int ecgAnimatePanelWidth;
    /* Starting X axis value to plot*/
    private int ecgAnimateInitialZero;
    /* For plotting */
    Point ecgAnimateLastPoint = new java.awt.Point(0, 0);

    /** Initializes the applet ecgApplet */
    public void init() {
        initComponents();
        initWindow();
    }

    private void initWindow(){
        /*********************
        *Init the main Window
        *Set maximize
        *********************/
        try{
            ecgWindow.setMaximum(true);        
        } catch(java.beans.PropertyVetoException e){
            txtStatus.append("Exception Error : " + e + "\n");
        }        

        /*********************
        *Init the data Table
        *********************/
        tableValuesModel = new DefaultTableModel(   new Object [][] {},
                                                    new String [] {"Time", "Voltage", "Peak"}){
                                                        Class[] types = new Class [] {
                                                        java.lang.String.class, java.lang.String.class, java.lang.String.class
                                                    };
                                                    public Class getColumnClass(int columnIndex) {
                                                        return types [columnIndex];
                                                    }
                                                };
        tableValues.setModel(tableValuesModel);

        /* Init the ecgFrame */
        ecgFrame = new ecgPanel();
        ecgFrame.setBackground(new java.awt.Color(255, 255, 255));
        ecgPlotArea.setViewportView(ecgFrame);

        /* Set the ScrollBar */
        plotScrollBar.addAdjustmentListener(this);

        /* Set the size of the Dialogs */
        paramDialog.setBounds(80, 80, 570,500);
        alert.setBounds(80, 80, 540,200);
        helpDialog.setBounds(80, 80, 600,500);

        /*************************
         * Reset all Application 
         * to a init state.
         *************************/        
        resetECG();
    }
    
    private void initComponents() {//GEN-BEGIN:initComponents
        paramDialog = new javax.swing.JDialog();
        paramDesktopPane = new javax.swing.JDesktopPane();
        closeParamDialogButton = new javax.swing.JButton();
        resetParamDialogButton = new javax.swing.JButton();
        saveParamDialogButton = new javax.swing.JButton();
        paramTabbedPane = new javax.swing.JTabbedPane();
        generalInterfacePanel = new javax.swing.JPanel();
        txtSf = new javax.swing.JTextField();
        lblSf = new javax.swing.JLabel();
        lblN = new javax.swing.JLabel();
        txtN = new javax.swing.JTextField();
        lblHrmean = new javax.swing.JLabel();
        txtHrmean = new javax.swing.JTextField();
        lblHrstd = new javax.swing.JLabel();
        txtHrstd = new javax.swing.JTextField();
        lblAmplitude = new javax.swing.JLabel();
        txtAmplitude = new javax.swing.JTextField();
        lblGeneralTitle = new javax.swing.JLabel();
        lblAnoise = new javax.swing.JLabel();
        txtAnoise = new javax.swing.JTextField();
        lblSfecg = new javax.swing.JLabel();
        txtSfecg = new javax.swing.JTextField();
        lblSeed = new javax.swing.JLabel();
        txtSeed = new javax.swing.JTextField();
        spectralCharacteristicsPanel = new javax.swing.JPanel();
        lblSpectralTitle = new javax.swing.JLabel();
        lblLfhfratio = new javax.swing.JLabel();
        txtLfhfratio = new javax.swing.JTextField();
        lblFlo = new javax.swing.JLabel();
        txtFlo = new javax.swing.JTextField();
        lblFhi = new javax.swing.JLabel();
        txtFhi = new javax.swing.JTextField();
        lblFlostd = new javax.swing.JLabel();
        lblFhistd = new javax.swing.JLabel();
        txtFhistd = new javax.swing.JTextField();
        txtFlostd = new javax.swing.JTextField();
        extremaPanel = new javax.swing.JPanel();
        lblMorphologyTitle = new javax.swing.JLabel();
        tiScrollPane = new javax.swing.JScrollPane();
        tiTable = new javax.swing.JTable();
        aiScrollPane = new javax.swing.JScrollPane();
        aiTable = new javax.swing.JTable();
        biScrollPane = new javax.swing.JScrollPane();
        biTable = new javax.swing.JTable();
        ExtremaLabelScrollPane = new javax.swing.JScrollPane();
        ExtremaLabelTable = new javax.swing.JTable();
        paramHelpButton = new javax.swing.JButton();

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
96av麻豆蜜桃一区二区| 国产激情一区二区三区| 国内成人自拍视频| av亚洲精华国产精华精华| 欧美日韩一区中文字幕| 久久久99久久| 亚洲bt欧美bt精品777| 高清成人在线观看| 51精品秘密在线观看| 国产精品视频一二三| 麻豆精品在线播放| 欧美系列日韩一区| 中文字幕精品一区| 久久精品久久综合| 欧美日韩一卡二卡三卡 | 亚洲综合区在线| 丁香婷婷深情五月亚洲| 欧美变态tickle挠乳网站| 亚洲一区二区四区蜜桃| 97久久精品人人做人人爽| 久久精品亚洲麻豆av一区二区| 日韩高清在线电影| 欧美视频中文一区二区三区在线观看| 国产精品久久久久久久久免费相片| 国模一区二区三区白浆| 日韩精品在线网站| 蜜桃av噜噜一区| 欧美一级爆毛片| 日韩电影免费一区| 欧美精品日韩一本| 日韩av网站在线观看| 欧美一区二区三区免费| 日韩av中文字幕一区二区| 欧美日韩精品福利| 五月激情综合色| 91麻豆精品国产综合久久久久久| 五月婷婷欧美视频| 正在播放亚洲一区| 美国一区二区三区在线播放| 日韩精品中文字幕一区 | 久久综合九色综合97婷婷女人 | 欧美成人一区二区三区在线观看| 日本sm残虐另类| 日韩欧美亚洲另类制服综合在线| 九一久久久久久| 国产亚洲欧美日韩在线一区| 国产精品一区二区久激情瑜伽| 欧美激情一区二区三区不卡 | 日韩欧美亚洲国产另类 | 麻豆国产一区二区| 久久久久久日产精品| 成人激情免费网站| 亚洲国产日韩精品| 欧美一区二区三区的| 国产成人免费视| 亚洲美腿欧美偷拍| 欧美一区二区三区在| 高清视频一区二区| 一区二区三区欧美久久| 日韩一区二区三区高清免费看看| 国产在线视频一区二区| 亚洲图片激情小说| 欧美一区二区三区色| 国产高清不卡一区| 尤物视频一区二区| 精品国产乱码久久久久久久| av资源网一区| 日韩成人一级大片| 国产精品三级av| 欧美一区二区三区公司| 成人激情图片网| 美国十次了思思久久精品导航| 国产精品三级av| 欧美一级国产精品| 91亚洲资源网| 国产一区二区三区蝌蚪| 亚洲男女一区二区三区| 精品国产91亚洲一区二区三区婷婷| 99久久国产免费看| 狠狠色综合日日| 亚洲高清不卡在线观看| 国产丝袜美腿一区二区三区| 欧美美女一区二区在线观看| 成人黄色在线视频| 美腿丝袜亚洲色图| 一区二区高清视频在线观看| 久久九九久久九九| 日韩一级高清毛片| 欧美视频日韩视频| 99精品桃花视频在线观看| 经典一区二区三区| 亚洲v精品v日韩v欧美v专区| 亚洲视频小说图片| 国产欧美日韩在线| 欧美xingq一区二区| 欧美日韩精品一二三区| 91视频在线观看免费| 国产91在线看| 国产福利精品导航| 激情欧美一区二区| 久久精品二区亚洲w码| 日韩电影在线一区| 亚洲一区二区精品久久av| 成人免费在线视频观看| 欧美国产欧美亚州国产日韩mv天天看完整 | 国产欧美精品一区| 精品99一区二区| 精品欧美乱码久久久久久 | 免费观看日韩av| 男女男精品网站| 日本系列欧美系列| 日本aⅴ精品一区二区三区 | 亚洲中国最大av网站| 亚洲精品免费一二三区| 亚洲乱码日产精品bd| 国产精品久久99| 亚洲人精品一区| 一区二区免费视频| 亚洲国产综合色| 一区二区三区电影在线播| 亚洲免费av网站| 性做久久久久久免费观看| 亚洲成人www| 日本女人一区二区三区| 日本美女一区二区三区视频| 免费高清不卡av| 国产高清在线精品| 波多野结衣精品在线| 色欧美乱欧美15图片| 欧美视频一区在线| 这里只有精品免费| 久久久久久久久一| 中文字幕一区二区三区不卡在线| 国产精品福利一区二区| 亚洲乱码一区二区三区在线观看| 亚洲国产日产av| 韩国成人在线视频| 99免费精品在线观看| 欧美性xxxxxxxx| 亚洲精品在线免费观看视频| 欧美激情一二三区| 一区二区激情视频| 六月丁香综合在线视频| 高潮精品一区videoshd| 日本福利一区二区| 日韩一区二区三区在线观看| 久久久不卡影院| 亚洲一区在线观看网站| 免费在线欧美视频| 99精品1区2区| 欧美一区二区三区视频免费 | 国产精品色婷婷| 午夜精品视频在线观看| 91老师国产黑色丝袜在线| 99麻豆久久久国产精品免费 | 国产欧美一区在线| 亚洲色图欧美偷拍| 麻豆精品一二三| 色www精品视频在线观看| 日韩精品专区在线影院观看| 中文字幕视频一区| 久久精品国产亚洲aⅴ| 91麻豆免费观看| 精品久久久久久无| 亚洲国产婷婷综合在线精品| 国产精品69久久久久水密桃| 日本二三区不卡| 国产欧美日韩激情| 美腿丝袜亚洲三区| 在线免费视频一区二区| 久久久99精品久久| 七七婷婷婷婷精品国产| 精品视频一区二区不卡| 亚洲欧美一区二区视频| 精品一区二区三区在线观看| 欧美猛男超大videosgay| 亚洲欧美在线视频观看| 国模冰冰炮一区二区| 欧美日韩在线播放三区| 亚洲精品久久嫩草网站秘色| 懂色一区二区三区免费观看| 精品粉嫩超白一线天av| 日韩电影免费在线看| 色一情一伦一子一伦一区| 欧美激情一区在线| 国产精品亚洲一区二区三区在线| 日韩一区二区中文字幕| 五月激情综合网| 欧美日韩免费一区二区三区| 一区二区三区日韩欧美| 成人激情文学综合网| 亚洲国产精品高清| 大胆亚洲人体视频| 国产亚洲欧美在线| 国产精品456| 国产亚洲女人久久久久毛片| 极品少妇一区二区三区精品视频| 91精品黄色片免费大全| 日韩电影一二三区| 日韩欧美久久久|