Statistics
| Revision:

root / trunk / libraries / libjni-ecw / include / NCSExtent.h @ 16549

History | View | Annotate | Download (2.4 KB)

1 3538 nacho
/********************************************************
2
** Copyright 1999 Earth Resource Mapping Ltd.
3
** This document contains proprietary source code of
4
** Earth Resource Mapping Ltd, and can only be used under
5
** one of the three licenses as described in the
6
** license.txt file supplied with this distribution.
7
** See separate license.txt file for license details
8
** and conditions.
9
**
10
** This software is covered by US patent #6,442,298,
11
** #6,102,897 and #6,633,688.  Rights to use these patents
12
** is included in the license agreements.
13
**
14
** FILE:    NCSExtent.h
15
** CREATED: Thu Feb 25 09:19:00 WST 1999
16
** AUTHOR:  Mark Sheridan
17
** PURPOSE: Generic extent class
18
** EDITS:
19
 *******************************************************/
20
21
#ifndef NCSEXTENT_H
22
#define NCSEXTENT_H
23
24
#include "NCSTypes.h"
25
#include "NCSErrors.h"
26
#include "NCSDefs.h"
27
28
#if (defined(WIN32) && !defined(_WIN32_WCE))
29
#ifdef _DEBUG
30
#include <crtdbg.h>
31
#endif
32
#endif
33
34
class __declspec( dllexport ) CNCSExtent
35
{
36
public:
37
        CNCSExtent();
38
        virtual ~CNCSExtent();
39
40
        NCSError ConvertAllFromScreen(void);
41
42
        NCSError SetScreenExtents(double dSTLX, double dSTLY, double dSBRX,double dSBRY);
43
        NCSError SetDatasetExtents(double dDTLX, double dDTLY, double dDBRX, double dDBRY);
44
        NCSError SetWorldExtents(double dRTLX, double dRTLY, double dRBRX, double dRBRY);
45
        NCSError SetAllExtents(double dSTLX, double dSTLY, double dSBRX, double dSBRY,
46
                                                        double dDTLX, double dDTLY, double dDBRX, double dDBRY,
47
                                                        double dRTLX, double dRTLY, double dRBRX, double dRBRY);
48
        NCSError WorldToDataset( double dRX, double dRY, double *dDX, double *dDY);
49
        NCSError DatasetToWorld( double dDX, double dDY, double *dRX, double *dRY);
50
        NCSError DatasetToScreen(double dX, double dY, double *pX, double *pY);
51
        NCSError ScreenToDataset(double x, double y, double *dX, double *dY);
52
        NCSError ScreenToWorld(  double dX, double dY, double *pdX, double *pdY);
53
        NCSError WorldToScreen(  double dX, double dY, double *pdX, double *pdY);
54
55
        CNCSExtent &operator=(CNCSExtent &pExt);
56
57
        UINT32 m_dwFlags;
58
        UINT32 m_dwUnits;
59
60
        double m_dDatasetTLX;
61
        double m_dDatasetTLY;
62
        double m_dDatasetBRX;
63
        double m_dDatasetBRY;
64
65
        double m_dWorldTLX;
66
        double m_dWorldTLY;
67
        double m_dWorldBRX;
68
        double m_dWorldBRY;
69
70
        double m_dScreenTLX;
71
        double m_dScreenTLY;
72
        double m_dScreenBRX;
73
        double m_dScreenBRY;
74
75
        /*Scale values for transformations*/
76
        double m_dScaleX;
77
        double m_dScaleY;
78
        double m_dTransX;
79
        double m_dTransY;
80
};
81
82
#endif