12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- #pragma once
- #include "dt.h"
- #include <map>
- #include "CManageDB.h"
- #ifdef CMATRIX_EXPORTS
- #define CMATRIX_DLL_API __declspec(dllexport)
- #else
- #define CMATRIX_DLL_API
- #endif
- using namespace ns_db;
- namespace ns_mat
- {
- #define MAT_COMM_PI 3.1415926
- #define NONE_POINT_INDEX 0
- #define FIRST_POINT_INDEX 1
- enum MATRIX_SEARCH_DIR {
- DIR_S = 0X0,
- DIR_Z = 0X1,
- };
- enum PICK_DIE_STATUS {
- DIE_EXIST,
- PICK_ING,
- NO_EXIST,
- EDGE_DIE,
- SKIP_DIE,
-
- };
- class CMATRIX_DLL_API CMatrixCommon
- {
- public:
-
- static double TwoPointCalculateAngle(XY_DOUBLE_STRUCT p, XY_DOUBLE_STRUCT ori);
-
- static void CalRotationPoint(XY_DOUBLE_STRUCT prePoint, double angle, XY_DOUBLE_STRUCT& pointResult);
- static bool IsNoBondPoint(vector<XY_LONG_STRUCT> vecNoBondPt, UINT iRow, UINT iCol);
- static XY_DOUBLE_STRUCT CalculatePosition(PROGRAM_DIE_MATRIX_STRUCT stMatrix, UINT iRow, UINT iCol);
- static XY_DOUBLE_STRUCT CalculatePosition(PROGRAM_WAFFLE_MATRIX_STRUCT stMatrix, UINT iRow, UINT iCol);
- static XY_DOUBLE_STRUCT CalculatePosition(PROGRAM_HEAD_TABLE_MATRIX_STRUCT stMatrix, UINT iRow, UINT iCol);
- static XY_DOUBLE_STRUCT CalculatePosition(PROGRAM_POINT_MATRIX_STRUCT stMatrix, UINT iRow, UINT iCol);
- static XY_DOUBLE_STRUCT CalculatePosition(PROGRAM_BOND_MATRIX_STRUCT stMatrix, UINT iRow, UINT iCol);
- static XY_DOUBLE_STRUCT CalculatePosition(OneDimMatrixInfo stMatrix, int iRow, int iCol);
- };
- }
|