Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Региональный поиск метод квадрантного дерева / src / QTreeView
.h// QTreeView.h : interface of the CQTreeView class
//
/////////////////////////////////////////////////////////////////////////////
#if !defined(AFX_QTREEVIEW_H__088BD08D_3A46_11D5_9234_D6C649555803__INCLUDED_)
#define AFX_QTREEVIEW_H__088BD08D_3A46_11D5_9234_D6C649555803__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "MainStructures.h"
#include "QTreeDoc.h"
class CQTreeView : public CView
{
protected: // create from serialization only
CQTreeView();
DECLARE_DYNCREATE(CQTreeView)
// Attributes
protected:
//кисти
CBrush m_PointBrush, //для отображения всех точек
m_qPointBrush, //для отображения точек,
//попавших в область поиска
m_pPointBrush,
m_QTreeByStepsBrush,
m_QTreeByStepsBrush_;
//карандаши
CPen m_PointPen, //для отображения всех точек
m_qPointPen, //для отображения точек,
//попавших в область поиска
m_pPointPen,
m_RectPen, //для отображения области поиска
m_RectPenWhite,
m_GridPen, //для отображения сетки
m_QTreePen, //для отображения дерева
m_OrgPen; //для отображения осей координат
int m_sp; //размер отображаемых точек
int m_X, //точка начала координат
m_Y;
BOOL m_DrawRect; //признак отображения области поиска
BOOL m_DrawQTree;
public:
int M, //коэффициент заполняемости ячейки
D; //предельная глубина
int m_maxM, //максимально возможные значения
m_maxD; //этих параметров
Grid m_Grid; //сетка
QTree m_QTree; //квадрантное дерево
//параметры сетки:
int m_SizeGrid, //размерность (число точек)
m_NumCells; //размерность (число ячеек)
int m_maxSizeGrid, //максимально возможные значения
m_maxNumCells; //этих параметров
//область поиска
CRect Rectangle, //в физических координатах
RectangleLog; //в логических координатах
List listPoints, //список всех точек
listPointsInRect,//список найденных точек
listBySteps,
listBySteps_;
int maxIndexBuildBySteps,
maxIndexFindBySteps;
BOOL MaxFind,
MaxBQTree;
int m_numberRandomPoints;
//флаги:
BOOL m_CheckAutoBuildQTree, //автопостроение дерева
m_RunBuildQTree, //построить дерево
m_ShowQTree, //отобразить дерево
m_RunFounding, //произвести поиск по области
m_ChangeRange, //произвести изменение области поиска
m_BuildQTreeBySteps,
m_FindBySteps;
public:
CQTreeDoc* GetDocument();
// Operations
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CQTreeView)
public:
virtual void OnDraw(CDC* pDC); // overridden to draw this view
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
virtual void OnInitialUpdate();
protected:
virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CQTreeView();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
protected:
// Generated message map functions
protected:
//{{AFX_MSG(CQTreeView)
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
afx_msg void OnRButtonUp(UINT nFlags, CPoint point);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
private:
void UpdateGridSize(CDC *dc);
};
#ifndef _DEBUG // debug version in QTreeView.cpp
inline CQTreeDoc* CQTreeView::GetDocument()
{ return (CQTreeDoc*)m_pDocument; }
#endif
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_QTREEVIEW_H__088BD08D_3A46_11D5_9234_D6C649555803__INCLUDED_)
Соседние файлы в папке src