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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? g2_ui_graphic.c

?? RNA二級結構預測程序
?? C
?? 第 1 頁 / 共 2 頁
字號:
/*******************************************************************************  Copyright (C) 1998-2001  Ljubomir Milanovic & Horst Wagner**  This file is part of the g2 library****  This library is free software; you can redistribute it and/or**  modify it under the terms of the GNU Lesser General Public**  License as published by the Free Software Foundation; either**  version 2.1 of the License, or (at your option) any later version.****  This library 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**  Lesser General Public License for more details.****  You should have received a copy of the GNU Lesser General Public**  License along with this library; if not, write to the Free Software**  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA******************************************************************************/#include <stdio.h>#include "g2_device.h"#include "g2_graphic_pd.h"#include "g2_util.h"/** * \ingroup interface * \defgroup graphic graphical output *//** * * Move graphic cursor. * * \param dev device * \param x x coordinate * \param y y coordinate * * \ingroup graphic */void g2_move(int dev, double x, double y){    g2_device *devp;    int i;        if((devp=g2_get_device_pointer(dev))==NULL) {	fprintf(stderr, "g2_move: No such device: %d\n", dev);	return;    }        devp->x=x;					  /* set graph. cursor */    devp->y=y;    switch(devp->t) {      case g2_PD:	break;      case g2_VD:	for(i=0;i<devp->d.vd->N;i++)	    g2_move(devp->d.vd->dix[i], x, y);	break;      case g2_ILLEGAL:	break;      case g2_NDEV:	break;    }    __g2_last_device=dev;}/** * * Move graphic cursor relative to the currner graphical cursor position. * * \param dev device * \param dx x coordinate increment * \param dy y coordinate increment * * \ingroup graphic */void g2_move_r(int dev, double dx, double dy){    g2_device *devp;    int i;        if((devp=g2_get_device_pointer(dev))==NULL) {	fprintf(stderr, "g2_move_r: No such device: %d\n", dev);	return;    }    devp->x+=dx;				  /* set graph. cursor */    devp->y+=dy;        switch(devp->t) {      case g2_PD:	break;      case g2_VD:	for(i=0;i<devp->d.vd->N;i++)	    g2_move_r(devp->d.vd->dix[i], dx, dy);	break;      case g2_ILLEGAL:	break;      case g2_NDEV:	break;    }    __g2_last_device=dev;}/** * * Plot a point * * \param dev device * \param x x coordinate * \param y y coordinate * * \ingroup graphic */void g2_plot(int dev, double x, double y){    g2_device *devp;    int i;        if((devp=g2_get_device_pointer(dev))==NULL) {	fprintf(stderr, "g2_plot: No such device: %d\n", dev);	return;    }        devp->x=x;					  /* set graph. cursor */    devp->y=y;        switch(devp->t) {      case g2_PD:	g2_plot_pd(devp->d.pd, x, y);    	break;      case g2_VD:	for(i=0;i<devp->d.vd->N;i++)	    g2_plot(devp->d.vd->dix[i], x, y);	break;      case g2_ILLEGAL:	break;      case g2_NDEV:	break;    }        if(devp->auto_flush)	g2_flush(dev);        __g2_last_device=dev;}/** * * Plot a point relative to graphical cursor. * * \param dev device * \param rx relative x coordinate  * \param ry relative y coordinate * * \ingroup graphic */void g2_plot_r(int dev, double rx, double ry){    g2_device *devp;        if((devp=g2_get_device_pointer(dev))==NULL) {	fprintf(stderr, "g2_plot_r: No such device: %d\n", dev);	return;    }        g2_plot(dev, devp->x+rx, devp->y+ry);        __g2_last_device=dev;}/** * * Draw a line from \p x1, \p y1 to \p x2, \p y2. * * \param dev device * \param x1 see above * \param y1 see above * \param x2 see above * \param y2 see above * * \ingroup graphic */void g2_line(int dev, double x1, double y1, double x2, double y2){    g2_device *devp;    int i;        if((devp=g2_get_device_pointer(dev))==NULL) {	fprintf(stderr, "g2_line: No such device: %d\n", dev);	return;    }        devp->x=x2;    devp->y=y2;    switch(devp->t) {      case g2_PD:	g2_line_pd(devp->d.pd, x1, y1, x2, y2);	break;      case g2_VD:	for(i=0;i<devp->d.vd->N;i++)	    g2_line(devp->d.vd->dix[i], x1, y1, x2, y2);	break;      case g2_ILLEGAL:	break;      case g2_NDEV:	break;    }        if(devp->auto_flush)	g2_flush(dev);        __g2_last_device=dev;}/** * * Draw line relative to the graphic cursor. * * \param dev device * \param dx relative x coordinate * \param dy relative y coordinate * * \ingroup graphic */void g2_line_r(int dev, double dx, double dy){    g2_device *devp;        if((devp=g2_get_device_pointer(dev))==NULL) {	fprintf(stderr, "g2_line_r: No such device: %d\n", dev);	return;    }    g2_line(dev, devp->x, devp->y, devp->x+dx, devp->y+dy);    __g2_last_device=dev;}/** * * Draw line from graphic cursor to the point \a x, \a y * * \param dev device * \param x x coordinate * \param y y coordinate * * \ingroup graphic */void g2_line_to(int dev, double x, double y){    g2_device *devp;        if((devp=g2_get_device_pointer(dev))==NULL) {	fprintf(stderr, "g2_line_to: No such device: %d\n", dev);	return;    }    g2_line(dev, devp->x, devp->y, x, y);    __g2_last_device=dev;}/** * * Draw a poly line. * * \param dev device * \param N_pt number of points (Note: It is not size of \a points vector!) * \param points vector of coordinates: x1, y1, x2, y2, ... * * \ingroup graphic */void g2_poly_line(int dev, int N_pt, double *points){    g2_device *devp;    int i;        if((devp=g2_get_device_pointer(dev))==NULL) {	fprintf(stderr, "g2_poly_line: No such device: %d\n", dev);	return;    }        devp->x=points[2*(N_pt-1)+0];    devp->y=points[2*(N_pt-1)+1];        switch(devp->t) {      case g2_PD:	g2_poly_line_pd(devp->d.pd, N_pt, points);	break;      case g2_VD:	for(i=0;i<devp->d.vd->N;i++)	    g2_poly_line(devp->d.vd->dix[i], N_pt, points);	break;      case g2_ILLEGAL:	break;      case g2_NDEV:	break;    }        if(devp->auto_flush)	g2_flush(dev);    __g2_last_device=dev;}/** * * Draw a triangle described by 3 corner points. * * \param dev device * \param x1 x coordinate of the 1st corner * \param y1 y coordinate of the 1st corner * \param x2 x coordinate of the 2nd corner * \param y2 y coordinate of the 2nd corner * \param x3 x coordinate of the 3rd corner * \param y3 y coordinate of the 3rd corner * * \ingroup graphic */void g2_triangle(int dev,		 double x1, double y1,		 double x2, double y2,		 double x3, double y3){    g2_device *devp;    int i;        if((devp=g2_get_device_pointer(dev))==NULL) {	fprintf(stderr, "g2_triangle: No such device: %d\n", dev);	return;    }        devp->x=x3;    devp->y=y3;        switch(devp->t) {      case g2_PD:	g2_triangle_pd(devp->d.pd,		       x1, y1,		       x2, y2,		       x3, y3);	break;      case g2_VD:	for(i=0;i<devp->d.vd->N;i++)	    g2_triangle(devp->d.vd->dix[i], x1, y1, x2, y2, x3, y3);	break;      case g2_ILLEGAL:	break;      case g2_NDEV:	break;    }        if(devp->auto_flush)	g2_flush(dev);    __g2_last_device=dev;}/** * * Draw a filled triangle specified by the 3 corner points. * * \param dev device * \param x1 x coordinate of the 1st corner * \param y1 y coordinate of the 1st corner * \param x2 x coordinate of the 2nd corner * \param y2 y coordinate of the 2nd corner * \param x3 x coordinate of the 3rd corner * \param y3 y coordinate of the 3rd corner * * \ingroup graphic */void g2_filled_triangle(int dev,			double x1, double y1,			double x2, double y2,			double x3, double y3){    g2_device *devp;    int i;        if((devp=g2_get_device_pointer(dev))==NULL) {	fprintf(stderr, "g2_filled_triangle: No such device: %d\n", dev);	return;    }        devp->x=x3;    devp->y=y3;        switch(devp->t) {      case g2_PD:	g2_filled_triangle_pd(devp->d.pd,			      x1, y1,			      x2, y2,			      x3, y3);	break;      case g2_VD:	for(i=0;i<devp->d.vd->N;i++)	    g2_filled_triangle(devp->d.vd->dix[i], x1, y1, x2, y2, x3, y3);	break;      case g2_ILLEGAL:	break;      case g2_NDEV:	break;    }        if(devp->auto_flush)	g2_flush(dev);    __g2_last_device=dev;}/** * * Draw a rectangle specified by the two opposite corner points. * * \param dev device * \param x1 x coordinate of the 1st corner * \param y1 y coordinate of the 1st corner * \param x2 x coordinate of the 3rd corner * \param y2 y coordinate of the 3rd corner * * \ingroup graphic */void g2_rectangle(int dev, double x1, double y1, double x2, double y2){    g2_device *devp;    int i;        if((devp=g2_get_device_pointer(dev))==NULL) {	fprintf(stderr, "g2_rectangle: No such device: %d\n", dev);	return;    }        devp->x=x2;    devp->y=y2;    switch(devp->t) {      case g2_PD:	g2_rectangle_pd(devp->d.pd, x1, y1, x2, y2);	break;      case g2_VD:	for(i=0;i<devp->d.vd->N;i++)	    g2_rectangle(devp->d.vd->dix[i], x1, y1, x2, y2);	break;      case g2_ILLEGAL:	break;      case g2_NDEV:	break;    }        if(devp->auto_flush)	g2_flush(dev);    __g2_last_device=dev;}/** * * Draw a filled rectangle specified by the two opposite corner points. * * \param dev device * \param x1 x coordinate of the 1st corner * \param y1 y coordinate of the 1st corner * \param x2 x coordinate of the 3rd corner * \param y2 y coordinate of the 3rd corner * * \ingroup graphic */void g2_filled_rectangle(int dev, double x1, double y1, double x2, double y2){    g2_device *devp;    int i;        if((devp=g2_get_device_pointer(dev))==NULL) {	fprintf(stderr, "g2_filled_rectangle: No such device: %d\n", dev);	return;    }        devp->x=x2;    devp->y=y2;    switch(devp->t) {      case g2_PD:	g2_filled_rectangle_pd(devp->d.pd, x1, y1, x2, y2);	break;      case g2_VD:	for(i=0;i<devp->d.vd->N;i++)	    g2_filled_rectangle(devp->d.vd->dix[i], x1, y1, x2, y2);	break;      case g2_ILLEGAL:	break;      case g2_NDEV:	break;    }        if(devp->auto_flush)	g2_flush(dev);    __g2_last_device=dev;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美在线影院一区二区| 色就色 综合激情| 在线不卡的av| 中文字幕制服丝袜成人av| 蜜臀av一区二区在线免费观看| 成人午夜在线视频| 欧美一区二区在线免费观看| 亚洲女同ⅹxx女同tv| 国产精品系列在线观看| 欧美一区二区三区白人| 亚洲精品免费视频| 成人免费毛片片v| 精品国产乱码久久久久久浪潮| 亚洲一区二区欧美日韩 | 国产三级一区二区三区| 日韩精品一级中文字幕精品视频免费观看| 成人激情小说网站| 精品久久久久香蕉网| 日韩制服丝袜av| 欧美亚洲愉拍一区二区| 国产精品久久久久aaaa| 国产一区二区不卡在线 | 成人高清免费观看| 欧美成人r级一区二区三区| 性做久久久久久免费观看| 91麻豆文化传媒在线观看| 日本一区二区视频在线| 国产一区二区三区四区五区入口| 日韩免费观看2025年上映的电影 | 国产精品免费人成网站| 国产美女精品人人做人人爽 | 欧美色图免费看| 亚洲免费视频中文字幕| 99国产精品一区| 国产精品久久久久aaaa樱花| 成人精品国产一区二区4080| 国产三级一区二区三区| 国产99一区视频免费| 国产三级欧美三级| 精品一区二区三区在线播放| 欧美一二区视频| 免费在线看一区| 日韩一卡二卡三卡四卡| 麻豆国产精品一区二区三区 | 欧美日韩一区三区| 亚洲国产成人91porn| 欧美日韩午夜影院| 午夜视频一区在线观看| 欧美老女人第四色| 日本成人在线网站| 欧美成人aa大片| 国产一区999| 国产精品成人免费| 91丨porny丨最新| 一区二区免费在线播放| 欧美日本韩国一区二区三区视频| 亚洲国产一区二区在线播放| 欧美日韩高清一区二区不卡| 天天色 色综合| 欧美r级电影在线观看| 国产一区二区精品久久| 中文字幕一区免费在线观看| 91尤物视频在线观看| 亚洲精选一二三| 91麻豆精品国产91久久久久| 久久成人麻豆午夜电影| 国产日韩精品一区二区三区在线| 成人va在线观看| 亚洲午夜久久久| 日韩视频免费观看高清在线视频| 国产一区二区伦理| 自拍偷拍国产精品| 欧美日精品一区视频| 久久99精品一区二区三区三区| 中文字幕成人网| 在线免费亚洲电影| 美女视频黄a大片欧美| 亚洲国产成人在线| 91国产丝袜在线播放| 青青草国产成人av片免费| 久久久精品一品道一区| 色婷婷av一区| 蜜桃视频在线观看一区二区| 欧美韩日一区二区三区| 色94色欧美sute亚洲线路一久| 日本色综合中文字幕| 国产精品私人影院| 欧美三级资源在线| 国产一区三区三区| 一区二区三区免费在线观看| 精品裸体舞一区二区三区| 91无套直看片红桃| 蜜桃久久久久久久| 国产精品黄色在线观看| 91精品国产综合久久精品| 大胆欧美人体老妇| 视频一区二区不卡| 国产精品天美传媒| 91精品国产综合久久久蜜臀图片| 成人午夜视频在线| 青青国产91久久久久久| 最新日韩在线视频| 精品国产一区二区亚洲人成毛片| 99久久99精品久久久久久| 美女网站色91| 亚洲香肠在线观看| 欧美国产日韩一二三区| 51精品国自产在线| 99综合电影在线视频| 看国产成人h片视频| 亚洲一区二区五区| 亚洲欧美在线另类| 久久欧美一区二区| 6080午夜不卡| 91成人网在线| av电影天堂一区二区在线| 免费视频一区二区| 亚洲一区在线观看免费 | 日韩一区二区免费在线观看| 色综合一区二区| 国产成人无遮挡在线视频| 日韩电影在线看| 夜夜精品浪潮av一区二区三区| 国产亚洲欧美日韩俺去了| 欧美一区二区在线看| 欧美性猛交xxxx乱大交退制版 | 午夜a成v人精品| 亚洲久本草在线中文字幕| 日本一区二区三区在线不卡 | 日本精品一区二区三区四区的功能| 经典一区二区三区| 天堂在线一区二区| 伊人一区二区三区| 中文字幕一区二区不卡| 国产欧美一区二区精品婷婷| 精品处破学生在线二十三| 欧美高清一级片在线| 在线看一区二区| 91在线视频免费91| 成人久久18免费网站麻豆 | 亚洲成人中文在线| 亚洲美女在线国产| 1024精品合集| 国产精品拍天天在线| 国产欧美日韩在线| 久久综合网色—综合色88| 欧美变态口味重另类| 666欧美在线视频| 9191成人精品久久| 91精品国产综合久久精品性色 | 国产成人av电影在线观看| 精品影院一区二区久久久| 久久精品国产亚洲a| 久久精品99国产精品| 日本91福利区| 蜜臀精品久久久久久蜜臀 | 一个色在线综合| 亚洲一区二区三区国产| 亚洲一区二区三区四区五区黄| 亚洲午夜精品一区二区三区他趣| 一区二区三区色| 亚洲国产cao| 日韩福利视频导航| 久久er精品视频| 精品午夜一区二区三区在线观看| 国产制服丝袜一区| 国产成人激情av| jizzjizzjizz欧美| 91首页免费视频| 欧美在线一区二区三区| 欧美欧美欧美欧美首页| 91精品蜜臀在线一区尤物| 日韩一区二区不卡| 精品国产露脸精彩对白| 国产喂奶挤奶一区二区三区| 国产精品久久久久aaaa樱花| 亚洲免费在线看| 日日夜夜免费精品视频| 麻豆精品在线看| 国产成人综合自拍| 成人av集中营| 欧美综合亚洲图片综合区| 欧美久久久久中文字幕| 精品免费日韩av| 欧美国产乱子伦| 亚洲免费观看高清| 日日摸夜夜添夜夜添精品视频 | 欧美bbbbb| 国产盗摄一区二区三区| av不卡免费电影| 91久久香蕉国产日韩欧美9色| 欧美日韩和欧美的一区二区| 精品国产乱码久久久久久久| 国产精品你懂的在线欣赏| 艳妇臀荡乳欲伦亚洲一区| 日本成人在线不卡视频| 粉嫩av一区二区三区| 色哟哟一区二区三区| 日韩一区二区在线看片| 中文字幕乱码日本亚洲一区二区 |