Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
// stdafx.h : include file for standard system include files,
// or project specific include files that are used frequently, but
// are changed infrequently
//
#if !defined(AFX_STDAFX_H__6F97A27C_4E8F_4C10_84EA_7523A7D6ED30__INCLUDED_)
#define AFX_STDAFX_H__6F97A27C_4E8F_4C10_84EA_7523A7D6ED30__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
#include <afxwin.h> // MFC core and standard components
#include <afxext.h> // MFC extensions
#include <afxdisp.h> // MFC Automation classes
#include <afxdtctl.h> // MFC support for Internet Explorer 4 Common Controls
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h> // MFC support for Windows Common Controls
#endif // _AFX_NO_AFXCMN_SUPPORT
#pragma warning(disable:4786)
//#pragma warning(disable:4530)
#include "vector"
using namespace std;
#include "TGeometryObj.h"
typedef vector<TGeometryObj*> TGVector;
typedef vector<TGVector*> TGVectorCollect;
#include "TPoint.h"
typedef TPoint TPicPoint;
typedef TPoint TScnPoint;
int leftToRightCmp(TPoint* a, TPoint* b);
int rightToLeftCmp(TPoint* a, TPoint* b);
//#define SIMPLIFICATION //Так сказал Ивановский, Ибо нефиг усложнять и так черезчур "навароченный" интерфейс
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
enum {LEFT, RIGHT, BEYOND, BEHIND, BETWEEN, ORIGIN, DESTINATION};
enum TGeometryObjType {G_POINT=0, G_POLYGON = 1, G_VERTEX = 2, G_EDGE = 3};
enum {CLOCKWISE, COUNTER_CLOCKWISE};
enum {INP_POINTS = 0};
enum {INTERM_POLYGONS = 0, INTERM_UP_BRIGES = 1, INTERM_DOWN_BRIGES = 2};
enum {OUTP_POLYGONS = 0};
//Вектор для геометрических объектов
struct GenInfo{
int count;
int max_x;
int max_y;
int min_x;
int min_y;
};
enum TRunMode { AT_ONCE, BY_STEP};
enum TStatus {NOT_READY, READY, WORKING, FINISHED};
enum {UPPER, LOWER};
class TPolygon;
template <class T>
struct Pointer{
T* Item;
Pointer* Next;
Pointer* Prev;
Pointer(T* item = NULL)
{
Next = NULL;
Prev = NULL;
Item = item;
};
Pointer(Pointer<T>* p)
{
Next = p->Next;
Prev = p->Prev;
Item = p->Item;
};
~Pointer()
{
Next = NULL;
Prev = NULL;
Item = NULL;
};
};
typedef Pointer<TPolygon> PolygonContainer;
#define ID_THREAD_PRIORITY THREAD_PRIORITY_HIGHEST
#endif // !defined(AFX_STDAFX_H__6F97A27C_4E8F_4C10_84EA_7523A7D6ED30__INCLUDED_)
Соседние файлы в папке ConvexHull