资源简介
该算法也称为编码算法,对线段的两个端点按所在的区域进行分区编码,根据编码可以迅速地判明全部在窗口内的线段和全部在某边界外侧的线段。
代码片段和文件信息
// Bezier.cpp : implementation file
//
#include “stdafx.h“
#include “DrawPix.h“
#include “Bezier.h“
#include “vector“
using namespace std;
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// Bezier dialog
Bezier::Bezier(CWnd* pParent /*=NULL*/)
: CDialog(Bezier::IDD pParent)
{
//{{AFX_DATA_INIT(Bezier)
m_X = 0;
m_Y = 0;
m_Xfanwei = _T(““);
m_Yfanwei = _T(““);
//}}AFX_DATA_INIT
}
void Bezier::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(Bezier)
DDX_Text(pDX IDC_controlX m_X);
DDX_Text(pDX IDC_controlY m_Y);
DDX_Text(pDX IDC_XX m_Xfanwei);
DDX_Text(pDX IDC_YY m_Yfanwei);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(Bezier CDialog)
//{{AFX_MSG_MAP(Bezier)
// ON_BN_CLICKED(IDC_store Onstore)
ON_WM_MOUSEMOVE()
ON_WM_LBUTTONDOWN()
ON_WM_LBUTTONUP()
ON_WM_RBUTTONDOWN()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// Bezier message handlers
void Bezier::Onstore()
{
// TODO: Add your control notification handler code here
int xxyy;
UpdateData(TRUE);
xx=m_X;
yy=m_Y;
Xnum.push_back(xx);
Ynum.push_back(yy);
}
void Bezier::cross(int a int b)
{
pDC->MoveTo(a-3b);
pDC->LineTo(a+3b);
pDC->MoveTo(ab-3);
pDC->LineTo(ab+3);
}
BOOL Bezier::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
pWnd = GetDlgItem(IDC_DRAWRC);
pDC = pWnd->GetDC();
CRect rc;
pWnd->GetClientRect(rc);
int ab;
xfanwei=a=rc.Width();
yfanwei=b=rc.Height();
CString asbs;
as.Format(“%d“a);
bs.Format(“%d“b);
m_Xfanwei=“X范围是0-“+as+“ “;
m_Yfanwei=“Y范围是0-“+as+“ “;
UpdateData(FALSE);
GetDlgItem(IDC_DRAWRC)->GetWindowRect(&rect);
ScreenToClient(&rect);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void Bezier::decas(float t)
{
int ri;
float t1;
t1=1.0-t;
CString ss1;
s.Format(“t=%ft1=%f“tt1);
vector tX;
vector tY;
for(i=0;i<=Xnum.size();i++)
{
tX.push_back((float)Xnum[i]);
tY.push_back((float)Ynum[i]);
}
for(r=1;r for(i=0;i {
tX[i]=t1*tX[i]+t*tX[i+1];
tY[i]=t1*tY[i]+t*tY[i+1];
}
pX.push_back((int)tX[0]);
pY.push_back((int)tY[0]);
return;
}
void Bezier::onmousemove(UINT nFlags CPoint point)
{
// TODO: Add your message handler code here and/or call default
point1.x=point.x;
point1.y=point.y;
m_X=point1.x-rect.left;
m_Y=point1.y-rect.top;
if(m_X<0) m_X=0;
if(m_Y<0) m_Y=0;
if(m_X>xfanwei) m_X=xfanwei;
if(m_Y>yfanwei) m_Y=yfanwei;
UpdateData(FALSE);
CDialog::onmousemove(nFlags point);
}
void Bezier::OnLButtonDown(UINT nFlags CPoi
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1423 2009-11-18 13:45 直线裁剪\LINEBRES.h
文件 3603 2009-11-16 21:12 直线裁剪\LINECLIP.cpp
文件 3462 2009-11-18 13:50 直线裁剪\LINEBRES.cpp
文件 1532 2009-11-16 19:42 直线裁剪\LINECLIP.h
文件 4163 2009-11-18 13:58 直线裁剪\DrawPix.clw
文件 4335 2009-09-22 10:00 直线裁剪\ReadMe.txt
文件 1367 2009-09-22 10:00 直线裁剪\DrawPix.h
文件 4227 2009-09-22 10:00 直线裁剪\DrawPix.cpp
文件 1054 2009-09-22 10:00 直线裁剪\StdAfx.h
文件 209 2009-09-22 10:00 直线裁剪\StdAfx.cpp
文件 1871 2009-09-24 10:54 直线裁剪\DrawPixView.h
文件 1486 2009-09-22 10:00 直线裁剪\DrawPixDoc.h
文件 1762 2009-09-22 10:00 直线裁剪\DrawPixDoc.cpp
文件 522 2009-09-22 10:00 直线裁剪\DrawPix.dsw
文件 132096 2009-11-18 13:58 直线裁剪\DrawPix.ncb
文件 1440 2009-11-18 13:58 直线裁剪\DrawPix.plg
文件 1175 2009-09-23 17:16 直线裁剪\LINE.h
文件 2848 2009-11-17 12:21 直线裁剪\DrawPixView.cpp
文件 1720 2009-11-17 13:04 直线裁剪\Bezier.h
文件 3959 2009-11-17 13:46 直线裁剪\Bezier.cpp
文件 2114 2009-11-18 12:45 直线裁剪\LINE.cpp
文件 2342 2009-11-18 13:33 直线裁剪\Resource.h
文件 399 2009-09-22 10:00 直线裁剪\res\DrawPix.rc2
文件 1078 2009-09-22 10:00 直线裁剪\res\DrawPixDoc.ico
文件 1078 2009-09-22 10:00 直线裁剪\res\DrawPix.ico
文件 1078 2009-09-22 10:00 直线裁剪\res\Toolbar.bmp
文件 1475 2009-11-18 13:57 直线裁剪\MainFrm.h
文件 47592 2009-11-18 13:57 直线裁剪\DrawPix.aps
文件 13571 2009-11-18 13:57 直线裁剪\DrawPix.rc
文件 2628 2009-11-18 13:58 直线裁剪\MainFrm.cpp
............此处省略7个文件信息
- 上一篇:倒计时模块
- 下一篇:柴油发电机PSCAD 模型
评论
共有 条评论