⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 comm.h

📁 《管状换热器计算机辅助设计系统ExhCAD绘图系统(版本:1.01a Final)》为自由软件
💻 H
字号:
#ifndef COMM
#define COMM

#include <rxregsvc.h>
#include <aced.h>
#include <adslib.h>
#include <rxobject.h>
#include <dbents.h>
#include <dbsymtb.h>
#include <geassign.h>
#include <adsdlg.h>
#include <adscodes.h>
#include <dbhatch.h>
#include <dbpl.h>

#define TRUE 1
#define PI 3.1415
#define FALSE 0
#define OK 1
#define ERROR 0
#define MAXLEN 255
#define HELP_CONTEXTS 0 
#define SERVICE  "ExhCAD_Service"
#define ExhCADHelpFile "exhcad.hlp"
#define TitleDclFile "title.dcl"
#define DeTableDclFile "detable.dcl"
#define BigFontFile "gbcbig.shx"

#define KeyWUDSL  "W U D S L"
#define KeyPCWS "P C W S"
#define KeyPipe 'P'
#define KeyContainer 'C'
#define KeyWindPipe 'W'
#define KeyUContainer 'U'
#define KeyDContainer 'D'
#define KeySteel 'S'
#define KeyLinker 'L'

#define PromptDimensionType             "\n请输入标注选项:管子(P)/集箱(C)/风管(W)/钢板(S)" 
#define PromptPipeLen                   "\n请点择标注管长:"
#define PromptPipeDiameter              "\n请点择标注管径:"
#define PromptContainerLWH              "\n请点择标注集箱长、宽、高"
#define PromptWindPipeLWH               "\n请点择标注风管长、宽、高"

#define PromptDrawType                  "\n请输入绘制选项:上集箱(U)/下集箱(D)/风管(W)/钢板(S)/联接件(L)"
#define PromptUCLW                      "\n请输入主视图上集箱长(mm)<1556.5>或左视图上集箱宽(mm)<310>:"
#define PromptUCH                       "\n请输入上集箱高(mm)<200>:"
#define PromptDCLW                      "\n请输入主视图下集箱长(mm)<3298>或左视图下集箱宽(mm)<310>:"
#define PromptDCH                       "\n请输入下集箱高(mm)<200>:"
#define PromptWLW                      "\n请输入主视图风管长(mm)<1420>或左视图风管宽(mm)<173.5>:"
#define PromptWH                       "\n请输入风管高(mm)<100>:"
#define PromptSL                       "\n请输入钢板长(mm)<3298>:"
#define PromptSW                       "\n请输入钢板宽(mm)<310>:"
#define PromptST                       "\n请输入钢板厚(mm)<20>:"


#define PromptDContainerBasePoint       "\n请输入下集箱的基点<端点>:"
#define PromptSteelLeftBasePoint        "\n请输入钢板左侧定位线的基点<交点>:"
#define PromptSteelHMBasePoint          "\n请输入钢板水平中心线定位线的基点<圆心>:"
#define PromptSteelBasePoint             "\n请输入钢板的基点<交点>:"
#define PromptUContainerBasePoint        "\n请输入上集箱的基点<中心点>:"
#define PromptWindPipeBasePoint          "\n请输入风管的基点<中心点>:"
#define PromptLinkerCenLBasePoint         "\n请输入联接件的起始基点<交点>:"
#define PromptLinkerCenRBasePoint         "\n请输入联接件的终了基点<交点>:"


#define IDS_ExhCAD_Load                 "\n\nExhCAD绘图系统加载中...\n"
#define IDS_ExhCAD_Unload               "\n\nExhCAD绘图系统卸载中...\n"
#define IDS_ExhCAD_Object               "\n\nExhCAD绘图系统不能创建ExhCAD对象!\n"
#define IDS_ExhCAD_Init                 "\n\nExhCAD绘图系统绘图数据初始化...\n"
#define IDS_ExhCAD_About                "\n\nExhCAD绘图系统(版本:1.01a Final)\n版权: 安徽工业大学 首钢技术研究院\n研发:endlessfree\n"

#define IDS_TITLE_School                "安徽工业大学"
#define IDS_TITLE_Project               "金属空气管状换热器"
  
#define IDS_TITLE_Author                "无境"
#define IDS_TITLE_Teacher               "热能与动力工程系" 
#define IDS_TITLE_Check                 "冶金与资源学院"  

#define IDS_TITLE_Scale                 "1:10"
#define IDS_TITLE_Size                  "二号"  
#define IDS_TITLE_Date                  "2001年06月25日"

#define IDS_DETABLE_Area                "112.34"
#define IDS_DETABLE_Insert               "/"
  
#define IDS_DETABLE_Fumeoutt                "489"
#define IDS_DETABLE_Fumeint               "750" 
#define IDS_DETABLE_Fumeq                "2546"  

#define IDS_DETABLE_Airoutt               "280"
#define IDS_DETABLE_Airint                "20"  
#define IDS_DETABLE_Airq                  "2514"



#define IDS_ExhCAD_WindPipe             "\n编写风管中...\n"
#define IDS_ExhCAD_UContainer            "\n编写上集箱中...\n"
#define IDS_ExhCAD_DContainer            "\n编写下集箱中...\n"
#define IDS_ExhCAD_Steel                "\n编写钢板中...\n"
#define IDS_ExhCAD_Linker             "\n编写联接件中...\n"
#define IDS_ExhCAD_Dimension            "\n编写尺寸标注中...\n"
#define IDS_ExhCAD_Title                "\n编写标题栏中...\n"
#define IDS_ExhCAD_DeTable              "\n编写明细表中...\n"


typedef struct{
	    char School[256],Project[256],
			 Author[256],Teacher[256],Check[256],
			 Scale[256],Size[256],Date[256];
	}TITLE;

typedef struct {
	   char Area[256],Insert[256],
		    Fumeoutt[256],Fumeint[256],Fumeq[256],
			Airoutt[256],Airint[256],Airq[256];
 
}DETABLE;

TITLE *Titles;
DETABLE *Detables;

typedef int Status;
AcGePoint3d basepoint(0,0,0);

void ExhCADAbout(void);
void ExhCADHelp(void);
void ExhCADDraw(void);
void ExhCADDimension(void);
void ExhCADTitle(void);

static void CALLB Title_accept(ads_callback_packet *cpkt);
static void CALLB Title_undo(ads_callback_packet *cpkt);
static void CALLB DeTable_accept(ads_callback_packet *cpkt);
static void CALLB DeTable_undo(ads_callback_packet *cpkt);

class ExhCAD: public AcRxObject{	
private:
	AcDbDatabase *pDb;
	
protected:
    Status DrawWindPipe(void);
	Status DrawUContainer(void);
	Status DrawDContainer(void);
	Status DrawSteel(void);
	Status DrawLinker(void);

	Status DimensionPipe(void);
    Status DimensionContainer(void);
	Status DimensionWindPipe(void);
	Status DimensionSteel(void);


public:
	
	ExhCAD(void){  Init(); }

	~ExhCAD(void);
	
	ACRX_DECLARE_MEMBERS(ExhCAD);
  
	Status Init(void);
	Status About(char *AppInformation);
	Status Help(char *FileName,char *Topic,int Command);
	char*  GetExhCADFile(char *FileName);
	Status Draw(void);
	Status Dimension(void);

	Status Title(char *FileTitle);
    Status InitTitle(ads_hdlg htitledlg);
    Status SetTitle(ads_hdlg htitledlg);

	Status DeTable(char *FileDeTable);
	Status InitDeTable(ads_hdlg hdetabledlg);
    Status SetDeTable(ads_hdlg hdetabledlg);    

	
};

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -