You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
1.7 KiB
C

1 month ago
/**
* @file UtilityClass.h
* @brief <EFBFBD><EFBFBD><EFBFBD>õļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @author ɳĮ<EFBFBD><EFBFBD>ѻ
* @time 2010-01-14
*/
#pragma once
/** @brief <20><><EFBFBD>ȷ<EFBFBD>Χ */
class AFX_EXT_CLASS DEPTHRANGE
{
public:
explicit DEPTHRANGE(double top = 0.0, double bottom = 0.0) {topdepth = top; bottomdepth = bottom;}
/**
* @brief <EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Χ<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Χ
* @param [in] depthRange <EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Χ
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򷵻<EFBFBD>TURE<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򷵻<EFBFBD>FALSE
*/
bool Contain(DEPTHRANGE depthRange,int iPrecision = 1) const;
/**
* @brief <EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Χ<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param [in] dDepth <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򷵻<EFBFBD>TRUE<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򷵻<EFBFBD>FALSE
*/
bool Contain(double dDepth,int iPrecision = 1) const;
/**
* @brief <EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Χ<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Χ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҷ<EFBFBD><EFBFBD>׻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param [in] depthRange <EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Χ
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><EFBFBD>򷵻<EFBFBD>TURE<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򷵻<EFBFBD>FALSE
* 1> 776.5--777.2<EFBFBD><EFBFBD>776.8--777.2<EFBFBD><EFBFBD><EFBFBD><EFBFBD>FALSE,<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* 2> 776.5--777.2<EFBFBD><EFBFBD>776.5--777.0<EFBFBD><EFBFBD><EFBFBD><EFBFBD>FALSE,<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* 3> 776.5--777.2<EFBFBD><EFBFBD>776.8--777.0<EFBFBD><EFBFBD><EFBFBD><EFBFBD>TRUE
*/
bool ContainApart(DEPTHRANGE depthRange,int iPrecision = 1) const;
/**
* @brief <EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Χ<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
bool ContainApart(double dDepth,int iPrecision = 1) const;
/** @brief <09>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ȷ<EFBFBD>Χ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><E0BDBB>*/
bool Overlap(DEPTHRANGE depthRange,int iPrecision = 1) const;
/** @brief <09>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Χ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD> */
bool Equal(DEPTHRANGE depthRange,int iPrecision = 1) const;
/** @brief <09>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ȷ<EFBFBD>Χ<EFBFBD>Ƿ<EFBFBD>Ϊ<EFBFBD><CEAA> */
bool IsEmpty() const;
/** @brief <09><>ȡ<EFBFBD><C8A1><EFBFBD>ȷ<EFBFBD>Χ<EFBFBD>ĺ<EFBFBD><C4BA><EFBFBD>ֵ */
double GetThick() const;
/** @brief <09><>ȡ<EFBFBD>м<EFBFBD><D0BC><EFBFBD><EFBFBD><EFBFBD> */
double GetCenter() const;
public:
/** @brief <09><><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
DEPTHRANGE GetPrecision(int iPrecision = 1) const;
// operator
bool operator < (const DEPTHRANGE& value);
public:
double topdepth;
double bottomdepth;
};