• 大小: 1KB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-01-27
  • 语言: C/C++
  • 标签: MFC  

资源简介

opengl VC++实现Sierpinski分形图像

资源截图

代码片段和文件信息

// SierpinskiView.cpp : implementation of the CSierpinskiView class
//

#include “stdafx.h“
#include “Sierpinski.h“

#include “SierpinskiDoc.h“
#include “SierpinskiView.h“

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CSierpinskiView

IMPLEMENT_DYNCREATE(CSierpinskiView CView)

BEGIN_MESSAGE_MAP(CSierpinskiView CView)
//{{AFX_MSG_MAP(CSierpinskiView)
// NOTE - the ClassWizard will add and remove mapping macros here.
//    DO NOT EDIT what you see in these blocks of generated code!
//}}AFX_MSG_MAP
// Standard printing commands
ON_COMMAND(ID_FILE_PRINT CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_DIRECT CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_PREVIEW CView::OnFilePrintPreview)
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CSierpinskiView construction/destruction

CSierpinskiView::CSierpinskiView()
{
// TODO: add construction code here

}

CSierpinskiView::~CSierpinskiView()
{
}

BOOL CSierpinskiView::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: Modify the Window class or styles here by modifying
//  the CREATESTRUCT cs

return CView::PreCreateWindow(cs);
}

/////////////////////////////////////////////////////////////////////////////
// CSierpinskiView drawing



void CSierpinskiView::OnDraw(CDC* pDC)
{
CSierpinskiDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
 int vertices[3][2]= {{00}{250500}{50000}};

int p[2]={175150};


int jk;

pDC->MoveTo(vertices[0][0]vertices[0][1]);
pDC->LineTo(vertices[1][0]vertices[1][1]);
pDC->LineTo(vertices[2][0]vertices[2][1]);
pDC->LineTo(vertices[0][0]vertices[0][1]);
// int rand();
for(k=0;k<50000;k++)
{
pDC->SetPixel(p[0]p[1]RGB(25500));
j=rand()%3;
p[0]=(p[0]+vertices[j][0])/2;
p[1]=(p[1]+vertices[j][1])/2;
}


}

/////////////////////////////////////////////////////////////////////////////
// CSierpinskiView printing

BOOL CSierpinskiView::OnPreparePrinting(CPrintInfo* pInfo)

{
// default preparation
return DoPreparePrinting(pInfo);
}

void CSierpinskiView::OnBeginPrinting(CDC* /*pDC*/ CPrintInfo* /*pInfo*/)
{
// TODO: add extra initialization before printing
}

void CSierpinskiView::OnEndPrinting(CDC* /*pDC*/ CPrintInfo* /*pInfo*/)
{
// TODO: add cleanup after printing
}

/////////////////////////////////////////////////////////////////////////////
// CSierpinskiView diagnostics

#ifdef _DEBUG
void CSierpinskiView::AssertValid() const
{
CView::AssertValid();
}

void CSierpinskiView::Dump(CDumpContext& dc) const
{
CView::Dump(dc);
}

CSierpinskiDoc* CSierpinskiView::GetDocument() // non-debug version is inline
{
ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CSierpinskiDoc)));
return (CSierpinskiDo

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3155  2010-03-15 03:59  SierpinskiView.cpp

----------- ---------  ---------- -----  ----

                 3155                    1


评论

共有 条评论