社区
C++ Builder
帖子详情
谁用bcb搞过三维表面模拟,在线等待!
zhuxiaozhong
2003-09-15 10:38:53
谁用bcb搞过三维表面模拟,说说过程或原理吧!
有没有用TSCENE控件实现?
...全文
81
2
打赏
收藏
谁用bcb搞过三维表面模拟,在线等待!
谁用bcb搞过三维表面模拟,说说过程或原理吧! 有没有用TSCENE控件实现?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhuxiaozhong
2003-09-19
打赏
举报
回复
描述原理和功能啊
xizhouhawk
2003-09-17
打赏
举报
回复
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
HDC ghDC;
ghDC=GetDC(Handle);
//if(ghDC=NULL)
// return false;
int PixelFormatIndex;
PIXELFORMATDESCRIPTOR PixelFormat={
sizeof(PIXELFORMATDESCRIPTOR),
1,
PFD_DRAW_TO_WINDOW |
PFD_SUPPORT_OPENGL,
PFD_TYPE_RGBA,
8,
0,0,0,0,0,0,0,0,0,0,0,0,0,
16,
0,0,
PFD_MAIN_PLANE,
0,0,0,0,
};
if((PixelFormatIndex=ChoosePixelFormat(ghDC,&PixelFormat))==0)
{ShowMessage("choose fali");
}
if((SetPixelFormat(ghDC,PixelFormatIndex,&PixelFormat))==0)
{ShowMessage("set pixel failed");
}
HGLRC ghRC;
ghRC=wglCreateContext(ghDC);
wglMakeCurrent(ghDC,ghRC);
glClearColor(0.0,0.0,0.0,0.0);
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glEnable(GL_DEPTH_TEST);
glMatrixMode(GL_PROJECTION);
float w,h,Aspect;
w=Width;
h=Height;
if(h==0)
h=1;
gluPerspective(45.0,(GLfloat)w/(GLfloat)h,1.0,7.0);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormResize(TObject *Sender)
{
GLfloat aspect;
glViewport(0,0,Width,Height);
aspect = (GLfloat)Width/Height;
//设置投影矩阵为当前矩阵
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
//设置投影方式为透视投影
gluPerspective(45.0,aspect,1.0,7.0);
//设置模型视矩阵为当前矩阵
glMatrixMode(GL_MODELVIEW);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormPaint(TObject *Sender)
{ PAINTSTRUCT ps;
BeginPaint(Handle,&ps);
GLUquadricObj *obj;
//设置模型视矩阵为当前矩阵
glMatrixMode(GL_MODELVIEW);
//初始化模型视矩阵
glLoadIdentity();
//设置视点
glTranslated(0,0,-5.0);
//设置当前颜色为灰色
glColor3f(1.0,0.0,1.0);
obj = gluNewQuadric();
//画一个线状的球体
gluQuadricDrawStyle(obj,GLU_LINE);
gluSphere(obj,1.5,50,20);
//设置当前颜色为蓝色
glColor3f(1.0,1.0,0.0);
obj = gluNewQuadric();
//绕X轴旋转30度
glRotatef(30.0,1.0,0.0,0.0);
//画一个空心圆柱体
gluQuadricDrawStyle(obj,GLU_LINE);
gluCylinder(obj,0.1,0.3,0.6,12,12);
glFlush(); //OpenGL图形绘制
EndPaint(Handle,&ps);
OpenGL纹理映射总结
大概步骤: 1.创建纹理对象,并为他指定一个纹理. 2.确定纹理如何应用到每个像素上. 3.启用纹理贴图 4.绘制场景,提供纹理和几何坐标 过滤:由于我们提供的纹理图像很少能和最终的屏幕坐标形成对应,大小不同,所以需要设置过滤项目.允许我们进行插值或者匀和,指定放大缩小的函数.glTexParameter*(),使用过滤模式GL_NEAREST那么纹理单位最邻近的将被使用
Python OpenCV 3.x 示例:6~11
原文:OpenCV 3.x with Python By Example 协议:CC BY-NC-SA 4.0 译者:飞龙 本文来自【ApacheCN 计算机视觉 译文集】,采用译后编辑(MTPE)流程来尽可能提升效率。 当别人说你没有底线的时候,你最好真的没有;当别人说你做过某些事的时候,你也最好真的做过。 六、接缝雕刻 在本章中,我们将学习有关内容感知的图像大小调整,这也称为接缝雕刻。 我们将讨论如何检测图像中有趣的部分,以及如何使用该信息调整给定图像的大小而不会降低这些有趣元素的质量。 在本章结束
opengl纹理映射总结
大概步骤: 1.创建纹理对象,并为他指定一个纹理. 2.确定纹理如何应用到每个像素上. 3.启用纹理贴图 4.绘制场景,提供纹理和几何坐标 过滤:由于我们提供的纹理图像很少能和最终的屏幕坐标形成对应,大小不同,所以需要设置过滤项目.允许我们进行插值或者匀和,指定放大缩小的函数.glTexParameter*(),使用过滤模式GL_NEAREST那么纹理单位最邻近的将被使用,GL_LINE...
OpenGL 纹理
大概步骤: 1.创建纹理对象,并为他指定一个纹理. 2.确定纹理如何应用到每个像素上. 3.启用纹理贴图 4.绘制场景,提供纹理和几何坐标 过滤:由于我们提供的纹理图像很少能和最终的屏幕坐标形成对应,大小不同,所以需要设置过滤项目.允许我们进行插值或者匀和,指定放大缩小的函数.glTexParameter*(),使用过滤模式GL_NEAREST那么纹理单位最邻近的将被
C语言/C++初学 问题
编程及C/C++初学者 FAQ 本文原为本人在论坛所发若干帖,意在集中解决新手学习C/C++语言时将遭遇到的各类问题,网友反馈情况良好,集合修订后作为个人作品贴于此处。 本贴主要分析概念原理和解决方案,不讨论具体程序语法,立足于让初学者能运行起第一个程序。其他事宜如解释入门语法等本文基本不涉及。 本文依照 创作公用约定(署名-非派生作品-非商业用途) 发布。作者(即本人)无更新计划,请勿与
C++ Builder
13,826
社区成员
102,678
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章