opengl-计算机图形学OpenGL的问题,急求大神指点

问题描述

计算机图形学OpenGL的问题,急求大神指点

用多边形逼近算法花了一个多边形,然后需要修改一个点的坐标,让其不规则,请问如何修改一个点的坐标?逼近算法如下:
void COpenGLView::BiJin(int radius,Ploygon *ploygon)
{
int i,n;
float x,y,xnew,ynew,alfa,co,si;
alfa=2*acos(((float)radius-DELTA)/(float)radius);
n=(int)(2*3.14159/alfa);
alfa=2*3.14159/n;
ploygon->pointNum=n;
pointnumber=n;
ploygon->vertices=(Point *)malloc(n*sizeof(Point));
x=0.0;
y=(float)radius;
ploygon->vertices[0].x=0;
ploygon->vertices[0].y=radius;
co=cos(alfa);
si=sin(alfa);
SetPixel(ploygon->vertices[0].x,ploygon->vertices[0].y,1,0,0);
for(i=1;i
{
xnew=co*x-si*y;
ynew=si*x+co*y;
x=xnew;
y=ynew;
ploygon->vertices[i].x=(int)(x+0.5);
ploygon->vertices[i].y=(int)(y+0.5);
SetPixel(ploygon->vertices[i].x,ploygon->vertices[i].y,1,0,0);
glColor3f(1,0,0);
glLineWidth(1.0f);
glBegin(GL_LINES);
glVertex2f(ploygon->vertices[i-1].x,ploygon->vertices[i-1].y);
glVertex2f(ploygon->vertices[i].x,ploygon->vertices[i].y);

glEnd();
}
glColor3f(1,0,0);
glLineWidth(1.0f);
glBegin(GL_LINES);
glVertex2f(ploygon->vertices[i-1].x,ploygon->vertices[i-1].y);
glVertex2f(ploygon->vertices[0].x,ploygon->vertices[0].y);

glEnd();
}
然后是扫描线填充,调用这个算法:
BiJin(radius,ploygon);//改变一个点
老师说只需要在这条语句后边改变任意点的坐标,然后再用扫描线填充。可是不知道怎么变啊,这些点不是整体画出来的吗?求指教

时间: 2024-10-27 02:25:19

opengl-计算机图形学OpenGL的问题,急求大神指点的相关文章

gdal-GDAL读取tif数值出现问题?急求大神指点!!!!!

问题描述 GDAL读取tif数值出现问题?急求大神指点!!!!! 5C 文件是用arcgis软件分类后存储的tif文件,分了20个类,灰度值应该是1-20之间的整数值,在arcgis软件中显示是这样的正常值,但是用VS2010+GDAL中读取时会出现灰度值不是这个,总是32768或0啊什么的值.我程序读取网上下载的原始geotiff的高程数据是完全没问题的,分类后的数据怎么就读不出来了呢?我写了个大致代码如下,望大神给我分析一下,第一天注册CSDN,谢谢! #include ""std

急求大神指点下我在delphi写的这个数据库双表查询插入的问题

问题描述 急求大神指点下我在delphi写的这个数据库双表查询插入的问题 我要实现的是A任务表,B任务执行状态两表关联查询后,得到A表中能执行的数据,查询出来的结果确实是A表中能执行任务的数据, 但是在向B表中插入这条A表数据执行状态的时候,插入B表中的数据ID不是之前查询A表出来数据的ID, 下面附上代码,求大大们指点 //定义了任务运行表插入数据操作过程 procedure TForm1.InsertData(exeid,status,starttime,endtime,result : s

一个小的python作业系统,看不懂,急求大神指点

问题描述 一个小的python作业系统,看不懂,急求大神指点 主要就是可以发布作业,查看提交作业的系统,是后台的程序 #!/usr/bin/env python -*- coding: utf-8 -*- import os.path import sys import time import tornado.httpserver import tornado.ioloop import tornado.options import tornado.web from tornado.option

c语言取小数问题,急求大神解答!

问题描述 c语言取小数问题,急求大神解答! 程序是#include int main() { float a,b; int n; scanf("%f",&a); n=(1000*a+0.5); b=(n*1.0)/1000; printf("%f",b); return 0; } 输入123.4567 输出是123.457001 输入1234.567 输出时1234.567017 输入12345.67 输出是12345.669922 为什么会这样呢?求大神解

select-SQL可以再客户端执行不能在程序中执行,求大神指点?急

问题描述 SQL可以再客户端执行不能在程序中执行,求大神指点?急 SQL如下: select distinct b.COLUMN_NAME,b.comments,a.column_id from user_tab_columns a,user_col_comments b where a.column_name=b.column_name and b.table_name=upper('YFRAME_STU') order by a.column_id; 解决方案 upper('YFRAME_S

求大神指点!!交作业急,C++银行管理系统,运行总是停止工作,是哪个代码不对吗?

问题描述 求大神指点!!交作业急,C++银行管理系统,运行总是停止工作,是哪个代码不对吗? #include #include #include #include using namespace std; class Count { private: int zhanghao; string name; int idcard; string password; double money; string address; int phone; string condition; public: f

课程设计题目-急求大神们解答,我编都有好多错误

问题描述 急求大神们解答,我编都有好多错误 二叉树用二叉链式存储,链接时用叶子结点的rchild,域存放指针,请设计一个算法完成1.对一颗二叉树加线索,2.把二叉树的叶子结点按从左到右的顺序连成一个单链表,3,统计二叉树中0到2度结点. 解决方案 我不明白为什么这会是一道题 要将叶子节点连接的话那是b+树的方法,然而又需要线索化, 线索化以及连成单链表很简单,递归,线索化加一个前一个节点的指针,链表的话加一个前一个叶子的指针,统计的话随便哪种遍历都行

servlet-java关于Servlet里面跳转jsp页面出现找不到页面的问题,急求,大神,小弟跪求了!!

问题描述 java关于Servlet里面跳转jsp页面出现找不到页面的问题,急求,大神,小弟跪求了!! 问题:通过form表单跳转到servlet中处理事物完后,需要再跳转到另外一个jsp页面.我是用了很多种方法:都是页面找不到错误.使用过的方法: 1.response.sendRedirect("excelInport.jsp"); 2.request.getRequestDispatcher("excelInport.jsp").forward(request,

求大神指教-做音乐播放器,用service做基本操作。急求大神解答。急!

问题描述 做音乐播放器,用service做基本操作.急求大神解答.急! package zuxia.android.service; import java.io.IOException; import android.app.Service; import android.content.Intent; import android.media.MediaPlayer; import android.os.Environment; import android.os.IBinder; impo