2026-10-04 00:04:20 +08:00
|
|
|
|
// DbFloorPipe.h: interface for the TDbFloorPipe class.
|
2026-09-28 15:28:50 +08:00
|
|
|
|
//
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
#if !defined(AFX_DBFLOORPIPE_H__FB55E4F4_567D_4205_B0FB_4106B4EB78CF__INCLUDED_)
|
|
|
|
|
|
#define AFX_DBFLOORPIPE_H__FB55E4F4_567D_4205_B0FB_4106B4EB78CF__INCLUDED_
|
|
|
|
|
|
|
|
|
|
|
|
#if _MSC_VER > 1000
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
#endif // _MSC_VER > 1000
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
#define TEMP_VERSION _T("TEMPVERSIONID") // 临时版本id,8.5
|
|
|
|
|
|
#define RETURN_LAYER _T("ReturnLayer") // 回水图层
|
|
|
|
|
|
#define DRAW_SUPPLYPT _T("DrawSupplyPt") // 实际绘制供水点
|
|
|
|
|
|
#define DRAW_RETURNPT _T("DrawReturnPt") // 实际绘制回水点
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
|
|
|
|
|
// add by myy 2014-12-12
|
2026-10-04 00:04:20 +08:00
|
|
|
|
#define DRAW_BORDERLEFTWIDTH _T("DrawBorderLeftWidth") // 边界区左宽度
|
|
|
|
|
|
#define DRAW_BORDERRIGHTWIDTH _T("DrawBorderRightWidth") // 边界区右宽度
|
|
|
|
|
|
#define DRAW_BORDERTOPWIDTH _T("DrawBorderTopWidth") // 边界区上宽度
|
|
|
|
|
|
#define DRAW_BORDERBOTTOMWIDTH _T("DrawBorderBottomWidth") // 边界区下宽度
|
|
|
|
|
|
#define DRAW_BORDERLEFTDIST _T("DrawBorderLeftDist") // 边界区左间距
|
|
|
|
|
|
#define DRAW_BORDERRIGHTDIST _T("DrawBorderRightDist") // 边界区左间距
|
|
|
|
|
|
#define DRAW_BORDERTOPDIST _T("DrawBorderTopDist") // 边界区左间距
|
|
|
|
|
|
#define DRAW_BORDERBOTTOMDIST _T("DrawBorderBottomDist") // 边界区左间距
|
|
|
|
|
|
#define DRAW_PIPEOUTDIST _T("PipeOutDist") // 入水、出水点距离
|
|
|
|
|
|
#define DRAW_ENTRYPT _T("DrawEntryPt") // 开口点
|
|
|
|
|
|
#define DRAW_ALTERENTRYPT _T("AlterDrawEntryPt") // 实时开口点
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
#define DRAW_BLEFTCHECK _T("BorderLeftCheck") //回折型盘管外区左边间距check是否点击
|
|
|
|
|
|
#define DRAW_BRGIHTCHECK _T("BorderRightCheck") //回折型盘管外区右边间距check是否点击
|
|
|
|
|
|
#define DRAW_BTOPCHECK _T("BorderTopCheck") //回折型盘管外区上边间距check是否点击
|
|
|
|
|
|
#define DRAW_BBOTTOMCHECK _T("BorderBottomCheck") //回折型盘管外区下边间距check是否点击
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*============================================================================*
|
|
|
|
|
|
* Copyright(c), 1994-2007, Beijing Tangent Engineering Software Co.Ltd.
|
2026-10-04 00:04:20 +08:00
|
|
|
|
* 文 件 名: DbFloorPipe.h
|
|
|
|
|
|
* 版 本: 1.0——TWT7.0
|
|
|
|
|
|
2.0——THvac7.5、TWT7.5
|
|
|
|
|
|
3.0——THvac8.0
|
|
|
|
|
|
3.0——THvac8.5
|
|
|
|
|
|
* 作 者:
|
|
|
|
|
|
* 创建时间:
|
|
|
|
|
|
* 描 述: 地热盘管实体
|
|
|
|
|
|
* 归属项目: 暖通
|
|
|
|
|
|
* 历史记录: 1.2007-10-30 sg modify, 增加了曲率半径、距墙距离等变量
|
|
|
|
|
|
2.2010-11-15 mcl modify 增加了回水图层的支持;进出口不再多出一小段、
|
|
|
|
|
|
增加进出口引出夹点,用于发送 手绘盘管命令;支持修改供、回水出口点位置
|
|
|
|
|
|
为了以前8.2、8.0兼容8.5文件,没有增加版本号,采用底层动态数据存储回
|
|
|
|
|
|
水图层id及供、回水位置点
|
2026-09-28 15:28:50 +08:00
|
|
|
|
=============================================================================*/
|
|
|
|
|
|
class PS_EXP TDbFloorPipe : public TDbEntity
|
|
|
|
|
|
{
|
|
|
|
|
|
DECLARE_TENTBASE();
|
|
|
|
|
|
ACRX_DECLARE_MEMBERS(TDbFloorPipe);
|
|
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
static const Adesk::UInt8 g_nVersion;
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
TDbFloorPipe();
|
|
|
|
|
|
virtual ~TDbFloorPipe();
|
|
|
|
|
|
|
|
|
|
|
|
void SetParam(XPoint ptStart, XPoint ptEnd, int iLeftDist, int iRightDist,
|
|
|
|
|
|
int iTopDist, int iBottomDist, double dbPGAngle, int nEntryType,
|
2026-10-04 00:04:20 +08:00
|
|
|
|
int nPipeType); // 不统一间距
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
|
|
|
|
|
// void SetParam(XPoint ptStart, XPoint ptEnd, int nDist, double dbPGAngle,
|
|
|
|
|
|
// int nEntryType, int nPipeType);
|
2026-10-04 00:04:20 +08:00
|
|
|
|
// 统一间距,注:不需要间距B时,将nDistB设置为0
|
2026-09-28 15:28:50 +08:00
|
|
|
|
void SetParam(XPoint ptStart, XPoint ptEnd, int nDist, double dbPGAngle,
|
|
|
|
|
|
int nEntryType, int nPipeType, int nDistB = 0);
|
|
|
|
|
|
|
|
|
|
|
|
// add by myy 2015-1-26
|
2026-10-04 00:04:20 +08:00
|
|
|
|
// 回折型盘管设置参数
|
2026-09-28 15:28:50 +08:00
|
|
|
|
void SetParam(XPoint ptStart, XPoint ptEnd, XPoint ptPick, BOOL bSameDist, int iLeftDist, int iRightDist,
|
|
|
|
|
|
int iTopDist, int iBottomDist, double dBorderLeftWidth, double dBorderRightWidth,
|
|
|
|
|
|
double dBorderUpWidth, double dBorderDownWidth, double dBorderLeftDist, double dBorderRightDist,
|
|
|
|
|
|
double dBorderUpDist, double dBorderDownDist, double dbPGAngle, int nEntryType,
|
|
|
|
|
|
int nPipeType);
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
// 地暖盘管不统一间距
|
2026-09-28 15:28:50 +08:00
|
|
|
|
void SetParam(XPoint ptStart, XPoint ptEnd, XPoint ptPick, int iLeftDist, int iRightDist,
|
|
|
|
|
|
int iTopDist, int iBottomDist, double dbPGAngle, int nEntryType,
|
|
|
|
|
|
int nPipeType, int nDistB = 0);
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
// 地暖盘管统一间距
|
2026-09-28 15:28:50 +08:00
|
|
|
|
void SetParam(XPoint ptStart, XPoint ptEnd, XPoint ptPick, int nDist, double dbPGAngle,
|
|
|
|
|
|
int nEntryType, int nPipeType, int nDistB = 0);
|
|
|
|
|
|
// change end
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
2026-10-04 00:04:20 +08:00
|
|
|
|
XPoint m_ptStart; // 起点
|
|
|
|
|
|
XPoint m_ptEnd; // 终点
|
|
|
|
|
|
XPoint m_ptEntry; // 出口点
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
Adesk::UInt16 m_nPipeType; // 盘管样式
|
|
|
|
|
|
Adesk::UInt16 m_nEntryType; // 出口方向
|
|
|
|
|
|
double m_dbPGAngle; // 盘管实体的角度
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
double m_dPipeOutDist; // 盘管出口间距 add by cq
|
|
|
|
|
|
double m_nPipeDist; // 间距
|
2026-09-28 15:28:50 +08:00
|
|
|
|
double m_nPipeLeftDist;
|
|
|
|
|
|
double m_nPipeRightDist;
|
|
|
|
|
|
double m_nPipeTopDist;
|
|
|
|
|
|
double m_nPipeBottomDist;
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
double m_dDistToWall; // 距墙距离,sg add
|
|
|
|
|
|
double m_dRadius; // 曲率半径
|
|
|
|
|
|
BOOL m_bWeight; // 是否粗显
|
|
|
|
|
|
double m_dLineWeight; // 线宽
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
Adesk::UInt16 m_nAreaType; // 划分区域的方式,0:宽度,1:比例,sg add
|
|
|
|
|
|
double m_dLeftArea; // 左区宽度或比例值
|
|
|
|
|
|
double m_dRightArea; // 右区宽度或比例值
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
|
|
|
|
|
//add by myy 2014-11-12
|
|
|
|
|
|
double m_dBorderLeftWidth;
|
|
|
|
|
|
double m_dBorderRightWidth;
|
|
|
|
|
|
double m_dBorderUpWidth;
|
|
|
|
|
|
double m_dBorderDownWidth;
|
|
|
|
|
|
|
|
|
|
|
|
double m_dInnerLeftDist;
|
|
|
|
|
|
double m_dInnerRightDist;
|
|
|
|
|
|
double m_dInnerUpDist;
|
|
|
|
|
|
double m_dInnerDownDist;
|
|
|
|
|
|
|
|
|
|
|
|
double m_dBorderLeftDist;
|
|
|
|
|
|
double m_dBorderRightDist;
|
|
|
|
|
|
double m_dBorderUpDist;
|
|
|
|
|
|
double m_dBorderDownDist;
|
|
|
|
|
|
|
|
|
|
|
|
XPoint m_ptPickEntry;
|
|
|
|
|
|
mutable XPoint m_ptAlterEntryGrip;
|
|
|
|
|
|
// add end
|
|
|
|
|
|
|
|
|
|
|
|
//add by dyw 20150505
|
|
|
|
|
|
BOOL m_bLeftChk;
|
|
|
|
|
|
BOOL m_bRightChk;
|
|
|
|
|
|
BOOL m_bTopChk;
|
|
|
|
|
|
BOOL m_bBottomChk;
|
|
|
|
|
|
//add end
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
public: // Set、Get函数
|
2026-09-28 15:28:50 +08:00
|
|
|
|
void SetLeftCheck(BOOL bCheck = TRUE)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_bLeftChk = bCheck;
|
|
|
|
|
|
}
|
|
|
|
|
|
BOOL IsLeftCheck() const
|
|
|
|
|
|
{
|
|
|
|
|
|
return m_bLeftChk;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetRightCheck(BOOL bCheck = TRUE)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_bRightChk = bCheck;
|
|
|
|
|
|
}
|
|
|
|
|
|
BOOL IsRightCheck() const
|
|
|
|
|
|
{
|
|
|
|
|
|
return m_bRightChk;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetTopCheck(BOOL bCheck = TRUE)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_bTopChk = bCheck;
|
|
|
|
|
|
}
|
|
|
|
|
|
BOOL IsTopCheck() const
|
|
|
|
|
|
{
|
|
|
|
|
|
return m_bTopChk;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetBottomCheck(BOOL bCheck = TRUE)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_bBottomChk = bCheck;
|
|
|
|
|
|
}
|
|
|
|
|
|
BOOL IsBottomCheck() const
|
|
|
|
|
|
{
|
|
|
|
|
|
return m_bBottomChk;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
int GetPipeType() const { // 盘管样式
|
2026-09-28 15:28:50 +08:00
|
|
|
|
return m_nPipeType;
|
|
|
|
|
|
}
|
|
|
|
|
|
void SetPipeType(int nType) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_nPipeType = nType;
|
|
|
|
|
|
ClearDrawPt();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
int GetEntryType() const { // 出口方向
|
2026-09-28 15:28:50 +08:00
|
|
|
|
return m_nEntryType;
|
|
|
|
|
|
}
|
|
|
|
|
|
void SetEntryType(int nType) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_nEntryType = nType;
|
|
|
|
|
|
ClearDrawPt();
|
|
|
|
|
|
GetEntryPt();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
double GetAngle() const { // 角度
|
2026-09-28 15:28:50 +08:00
|
|
|
|
return m_dbPGAngle;
|
|
|
|
|
|
}
|
|
|
|
|
|
void SetAngle(double dAngle) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dbPGAngle = dAngle;
|
|
|
|
|
|
ClearDrawPt();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
// void SetPipeDist(double nDist); // sg modify,增加是否给四方向间距赋值的控制
|
2026-09-28 15:28:50 +08:00
|
|
|
|
void SetPipeDist(double nDist, const BOOL &bPassAllDist = TRUE);
|
2026-10-04 00:04:20 +08:00
|
|
|
|
double GetPipeDist() const { // 间距
|
2026-09-28 15:28:50 +08:00
|
|
|
|
return m_nPipeDist;
|
|
|
|
|
|
}
|
2026-10-04 00:04:20 +08:00
|
|
|
|
BOOL GetSameDist() const { // 是否等间距
|
2026-09-28 15:28:50 +08:00
|
|
|
|
return m_bSameDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
void SetSameDist(BOOL bSameDist){
|
|
|
|
|
|
m_bSameDist = bSameDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
BOOL IsRealSameDist(double &dSameDist); // 实际绘制的盘管是否为等间距
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
|
|
|
|
|
double GetPipeOutDist() const;
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
double GetPipeLeftDist() const { // 左、右、上、下间距
|
2026-09-28 15:28:50 +08:00
|
|
|
|
return m_nPipeLeftDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
void SetPipeLeftDist(double nDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_nPipeLeftDist = nDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
double GetPipeRightDist() const {
|
|
|
|
|
|
return m_nPipeRightDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
void SetPipeRightDist(double nDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_nPipeRightDist = nDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
double GetPipeTopDist() const {
|
|
|
|
|
|
return m_nPipeTopDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
void SetPipeTopDist(double nDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_nPipeTopDist = nDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
double GetPipeBottomDist() const {
|
|
|
|
|
|
return m_nPipeBottomDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
void SetPipeBottomDist(double nDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_nPipeBottomDist = nDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
void SetStartPoint(XPoint pt) { // 起点
|
2026-09-28 15:28:50 +08:00
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_ptStart = pt;
|
|
|
|
|
|
GetEntryPt();
|
|
|
|
|
|
}
|
|
|
|
|
|
const XPoint & GetStartPoint() const {
|
|
|
|
|
|
return m_ptStart;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
void SetEndPoint(XPoint pt) { // 终点
|
2026-09-28 15:28:50 +08:00
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_ptEnd = pt;
|
|
|
|
|
|
GetEntryPt();
|
|
|
|
|
|
}
|
|
|
|
|
|
const XPoint & GetEndPoint() const {
|
|
|
|
|
|
return m_ptEnd;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
double GetDistToWall() const { // 距墙距离,sg add
|
2026-09-28 15:28:50 +08:00
|
|
|
|
return m_dDistToWall;
|
|
|
|
|
|
}
|
|
|
|
|
|
void SetDistToWall(double dDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dDistToWall = dDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
double GetRadius() const { // 曲率半径
|
2026-09-28 15:28:50 +08:00
|
|
|
|
return m_dRadius;
|
|
|
|
|
|
}
|
|
|
|
|
|
void SetRadius(double dRadius) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dRadius = dRadius;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
BOOL GetIsWeight() const { // 是否粗显
|
2026-09-28 15:28:50 +08:00
|
|
|
|
return m_bWeight;
|
|
|
|
|
|
}
|
|
|
|
|
|
void SetIsWeight(BOOL bWeight) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_bWeight = bWeight;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
double GetLineWeight() const { // 线宽
|
2026-09-28 15:28:50 +08:00
|
|
|
|
return m_dLineWeight;
|
|
|
|
|
|
}
|
|
|
|
|
|
void SetLineWeight(double dLineWeight) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dLineWeight = dLineWeight;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
void SetAreaType(int nType) { // 划分区域的方式
|
2026-09-28 15:28:50 +08:00
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_nAreaType = nType;
|
|
|
|
|
|
}
|
|
|
|
|
|
int GetAreaType() const {
|
|
|
|
|
|
return m_nAreaType;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
void SetLeftArea(double dArea) { // 左区宽度或比例值
|
2026-09-28 15:28:50 +08:00
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dLeftArea = dArea;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetLeftArea() const {
|
|
|
|
|
|
return m_dLeftArea;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
void SetRightArea(double dArea) { // 右区宽度或比例值
|
2026-09-28 15:28:50 +08:00
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dRightArea = dArea;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetRightArea() const {
|
|
|
|
|
|
return m_dRightArea;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
void SetReturnLayer(AcDbObjectId idRet) { // 设置回水图层
|
2026-09-28 15:28:50 +08:00
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_idRetLayer = idRet;
|
|
|
|
|
|
}
|
2026-10-04 00:04:20 +08:00
|
|
|
|
AcDbObjectId GetReturnLayer(AcDbObjectId idRet) { // 设置回水图层
|
2026-09-28 15:28:50 +08:00
|
|
|
|
return m_idRetLayer;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetDrawSupplyPt(XPoint ptDrawEntry){
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_ptDrawSupply = ptDrawEntry;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetDrawReturnPt(XPoint ptDrawEntry){
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_ptDrawReturn = ptDrawEntry;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
XPoint GetDrawSupplyPt(){
|
|
|
|
|
|
return m_ptDrawSupply;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
XPoint GetDrawReturnPt(){
|
|
|
|
|
|
return m_ptDrawReturn;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetHighlight(BOOL bflag){
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_bIsHighlight = bflag;
|
|
|
|
|
|
}
|
|
|
|
|
|
BOOL IsHighlight() const {
|
|
|
|
|
|
return m_bIsHighlight;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// add by myy 2014-11-12
|
2026-10-04 00:04:20 +08:00
|
|
|
|
// 边界区设置左、右、上、下宽度
|
2026-09-28 15:28:50 +08:00
|
|
|
|
void SetBorderLeftWidth(double dWidth) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dBorderLeftWidth = dWidth;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetBorderLeftWidth() const {
|
|
|
|
|
|
return m_dBorderLeftWidth;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetBorderRightWidth(double dWidth) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dBorderRightWidth = dWidth;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetBorderRightWidth() const {
|
|
|
|
|
|
return m_dBorderRightWidth;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetBorderUpWidth(double dWidth) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dBorderUpWidth = dWidth;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetBorderUpWidth() const {
|
|
|
|
|
|
return m_dBorderUpWidth;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetBorderDownWidth(double dWidth) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dBorderDownWidth = dWidth;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetBorderDownWidth() const {
|
|
|
|
|
|
return m_dBorderDownWidth;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetBorderLeftDist(double dDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dBorderLeftDist = dDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetBorderLeftDist() const {
|
|
|
|
|
|
return m_dBorderLeftDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetBorderRightdDist(double dDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dBorderRightDist = dDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetBorderRightdDist() const {
|
|
|
|
|
|
return m_dBorderRightDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetBorderUpdDist(double dDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dBorderUpDist = dDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetBorderUpdDist() const {
|
|
|
|
|
|
return m_dBorderUpDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetBorderDowndDist(double dDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dBorderDownDist = dDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetBorderDowndDist() const {
|
|
|
|
|
|
return m_dBorderDownDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
// 内区设置左、右、上、下间距
|
2026-09-28 15:28:50 +08:00
|
|
|
|
void SetInnerLeftDist(double dDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dInnerLeftDist = dDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetInnerLeftDist() const {
|
|
|
|
|
|
return m_dInnerLeftDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetInnerRightDist(double dDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dInnerRightDist = dDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetInnerRightDist() const {
|
|
|
|
|
|
return m_dInnerRightDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetInnerUpDist(double dDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dInnerUpDist = dDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetInnerUpDist() const {
|
|
|
|
|
|
return m_dInnerUpDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetInnerDownDist(double dDist) {
|
|
|
|
|
|
assertWriteEnabled();
|
|
|
|
|
|
m_dInnerDownDist = dDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
double GetInnerDownDist() const {
|
|
|
|
|
|
return m_dInnerDownDist;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
XPoint GetEntryPt(int iEntryType);
|
|
|
|
|
|
|
|
|
|
|
|
const XPoint & GetPickPoint() const {
|
|
|
|
|
|
return m_ptPickEntry;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetPipeEntryPt(XPoint ptPickEntry, int nCurPt)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_ptPickEntry = ptPickEntry;
|
|
|
|
|
|
SetEntryType(nCurPt);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void SetPickPoint(XPoint ptPick) {
|
|
|
|
|
|
m_ptPickEntry = ptPick;
|
|
|
|
|
|
}
|
|
|
|
|
|
// add end
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
2026-10-04 00:04:20 +08:00
|
|
|
|
double GetPipeLength() const; // 获取盘管长度
|
|
|
|
|
|
double GetMinDist() const; // 获取最小间距,用于倒角,sg add
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
|
|
|
|
|
// mcl add 2010.11.16
|
2026-10-04 00:04:20 +08:00
|
|
|
|
XPoint GetStdSupplyPoint() const; // 获取标准(没有设置过m_ptDrawReturn)供水管端位置
|
|
|
|
|
|
XPoint GetStdReturnPoint() const; // 获取标准(没有设置过m_ptDrawReturn)回水管端位置
|
|
|
|
|
|
AcGeVector3d GetEntryDir() const; // 获取出口向量
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
|
|
|
|
|
static XPoint GetStartDrawPt() ;
|
|
|
|
|
|
static void ClearStartDrawPt();
|
|
|
|
|
|
|
|
|
|
|
|
public: // Override TDbEntity
|
|
|
|
|
|
virtual Acad::ErrorStatus ExplodeOrDraw2d(XExplodeDraw &dc) const;
|
|
|
|
|
|
|
|
|
|
|
|
virtual void CopyPropertiesFrom(AcDbEntity *pSrc, unsigned gMatchFlag);
|
|
|
|
|
|
virtual Acad::ErrorStatus GetGripText(int idx, CString &cs) const;
|
|
|
|
|
|
virtual Acad::ErrorStatus subGetClassID(CLSID* pClsid) const;
|
2026-10-04 00:04:20 +08:00
|
|
|
|
virtual void GetTips(DList<TObjInfoUnit> &) const; // 取动态属性显示数据
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
|
|
|
|
|
virtual int GetFirstVersion()const {
|
|
|
|
|
|
return 7;
|
|
|
|
|
|
}
|
|
|
|
|
|
virtual bool IsModelEntity() const { // sg add
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public: // Override AcDbEntity
|
|
|
|
|
|
Acad::ErrorStatus subGetOsnapPoints(AcDb::OsnapMode osnapMode,
|
|
|
|
|
|
INT_PTR gsSelectionMark,
|
|
|
|
|
|
const AcGePoint3d& ptPick,
|
|
|
|
|
|
const AcGePoint3d& lastPoint,
|
|
|
|
|
|
const AcGeMatrix3d& viewXform,
|
|
|
|
|
|
AcGePoint3dArray& snapPoints,
|
|
|
|
|
|
AcDbIntArray& geomIds) const;
|
|
|
|
|
|
virtual Acad::ErrorStatus subGetGripPoints(AcGePoint3dArray& gripPoints,
|
|
|
|
|
|
AcDbIntArray& osnapModes, AcDbIntArray& geomIds) const;
|
|
|
|
|
|
virtual Acad::ErrorStatus subMoveGripPointsAt(const AcDbIntArray& indices,
|
|
|
|
|
|
const AcGeVector3d& offset);
|
|
|
|
|
|
|
|
|
|
|
|
virtual Acad::ErrorStatus subTransformBy(const AcGeMatrix3d& xform);
|
|
|
|
|
|
|
|
|
|
|
|
virtual Acad::ErrorStatus dwgInFields(AcDbDwgFiler*);
|
|
|
|
|
|
virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler*) const;
|
|
|
|
|
|
virtual Acad::ErrorStatus dxfInFields(AcDbDxfFiler*);
|
|
|
|
|
|
virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler*) const;
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
void GetEntryInf(XPoint &ptSupply, XPoint &ptReturn); // add by cq 2015-04-16 13:42:46
|
|
|
|
|
|
protected:
|
|
|
|
|
|
void GetEntryPt();
|
2026-10-04 00:04:20 +08:00
|
|
|
|
//XPoint GetEntryPt(int iEntryType); // change by myy 2014-12-16 改成public
|
|
|
|
|
|
void DrawEntryArror(XExplodeDraw &dc, const XPoint &ptArror) const; // 绘制出口方向箭头
|
|
|
|
|
|
void ClearDrawPt(); // 清除绘制点
|
|
|
|
|
|
void GetDefaultPick(); // 根据开口方向调整方向点 add by cq 2015-05-05 09:53:08
|
2026-09-28 15:28:50 +08:00
|
|
|
|
protected:
|
2026-10-04 00:04:20 +08:00
|
|
|
|
BOOL m_bSameDist; // 是否统一间距
|
|
|
|
|
|
BOOL m_bIsHighlight; // 是否选中,以控制是否绘制进出口箭头,不保存
|
|
|
|
|
|
AcDbObjectId m_idRetLayer; // 回水图层,供水图层就是实体自身图层
|
|
|
|
|
|
XPoint m_ptDrawSupply; // 实际绘制供水点
|
|
|
|
|
|
XPoint m_ptDrawReturn; // 实际绘制回水点
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
2026-10-04 00:04:20 +08:00
|
|
|
|
static XPoint m_ptStartDraw; // 开始绘制点,用于由夹点触发手绘盘管命令获取此点,开始绘制
|
2026-09-28 15:28:50 +08:00
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#endif // !defined(AFX_DBFLOORPIPE_H__FB55E4F4_567D_4205_B0FB_4106B4EB78CF__INCLUDED_)
|