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

📄 sdt14.cpp

📁 AotoCAD平台下的结构设计工具
💻 CPP
字号:
// Sdt14.cpp : implementation file
//
// Sdt09 - 条形基础设计
// 
// GB2002规范 AutoCAD版

#include "stdafx.h"
#include "Sdt.h"
#include "Sdt14.h"
#include "math.h"
#include "adslib.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
#define Pi 3.1415926
/////////////////////////////////////////////////////////////////////////////
// CSdt14 dialog


CSdt14::CSdt14(CWnd* pParent /*=NULL*/)
	: CDialog(CSdt14::IDD, pParent)
{
	//{{AFX_DATA_INIT(CSdt14)
	m_as = 0.0;//mmxmm
	m_bj = 0.0;//m
	m_bw = 0.24;//m
	m_d = 2.0;//m
	m_f = 0.0;//kPa
	m_fc = 9.60;//MPa
	m_fy = 210.0;//MPa
	m_hc = 3.0;//m
	m_hj = 0.0;//m
	m_m = 0.0;//kN-m
	m_n = 3;
	m_nl = 0.0;//kN
	m_pj1 = _T("");
	m_pj2 = _T("");
	m_q = 6.0;//kN/m/m
	m_qw = 5.24;//kN/m
	m_s = 3.0;//m
	m_ed = 1.1;
	m_g0 = 18.0;
	m_fk = 100.0;//KPa
	m_jss14 = FALSE;
	m_bh14 = _T("TJ-1");
	m_gcm14 = _T("Zzz");
	//}}AFX_DATA_INIT
}


void CSdt14::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CSdt14)
	DDX_Text(pDX, IDC_EDITas, m_as);
	DDX_Text(pDX, IDC_EDITbj, m_bj);
	DDX_Text(pDX, IDC_EDITbw, m_bw);
	DDX_Text(pDX, IDC_EDITd, m_d);
	DDX_Text(pDX, IDC_EDITf, m_f);
	DDX_Text(pDX, IDC_EDITfc, m_fc);
	DDX_Text(pDX, IDC_EDITfy, m_fy);
	DDX_Text(pDX, IDC_EDIThc, m_hc);
	DDX_Text(pDX, IDC_EDIThj, m_hj);
	DDX_Text(pDX, IDC_EDITm, m_m);
	DDX_Text(pDX, IDC_EDITn, m_n);
	DDX_Text(pDX, IDC_EDITnl, m_nl);
	DDX_Text(pDX, IDC_EDITpj1, m_pj1);
	DDX_Text(pDX, IDC_EDITpj2, m_pj2);
	DDX_Text(pDX, IDC_EDITq, m_q);
	DDX_Text(pDX, IDC_EDITqw, m_qw);
	DDX_Text(pDX, IDC_EDITs, m_s);
	DDX_Text(pDX, IDC_EDITed, m_ed);
	DDX_Text(pDX, IDC_EDITg0, m_g0);
	DDX_Text(pDX, IDC_EDITfk, m_fk);
	DDX_Check(pDX, IDC_CHECKjss14, m_jss14);
	DDX_Text(pDX, IDC_EDITbh14, m_bh14);
	DDX_Text(pDX, IDC_EDITgcm14, m_gcm14);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CSdt14, CDialog)
	//{{AFX_MSG_MAP(CSdt14)
	ON_BN_CLICKED(IDC_BUTTONjsa, OnBUTTONjsa)
	ON_BN_CLICKED(IDC_BUTTONjsf, OnBUTTONjsf)
	ON_BN_CLICKED(IDC_BUTTONjsh, OnBUTTONjsh)
	ON_BN_CLICKED(IDC_BUTTONjsm, OnBUTTONjsm)
	ON_BN_CLICKED(IDC_BUTTONjsn, OnBUTTONjsn)
	ON_BN_CLICKED(IDC_BTSdtHelp14, OnBTSdtHelp14)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CSdt14 message handlers

CString fmt;
//////
void CSdt14::OnBUTTONjsn() 
{
	UpdateData(TRUE);
	m_nl =m_n*(m_hc*m_qw +m_q*m_s);
	UpdateData(FALSE);	
}
//////
void CSdt14::OnBUTTONjsf() 
{
	UpdateData(TRUE);
	m_f =m_fk +m_ed*m_g0*(m_d-0.5);
	UpdateData(FALSE);	
}
//////
void CSdt14::OnBUTTONjsm() 
{
	UpdateData(TRUE);

	m_bj =m_nl/(m_f-20*m_d);
	m_bj+=0.050;
	
	fmt.Format("%6.3f",m_bj);
	m_bj =atof(fmt);
	UpdateData(FALSE);	
}
///////
void CSdt14::OnBUTTONjsh() 
{	
	double qj,v,h0;
	UpdateData(TRUE);
	qj =m_nl/m_bj;
	
	v =1.3*qj*(m_bj-m_bw)/2.0;
	h0 =1e3*v/m_fc/70.0;
	m_hj=(h0+40)/1000.0;

	fmt.Format("%6.3f",m_hj);
	m_hj =atof(fmt);
	UpdateData(FALSE);	
	
}
///////
void CSdt14::OnBUTTONjsa() 
{	
	double qj,d150,d200;
	UpdateData(TRUE);

	qj =m_nl/m_bj;
	m_m =1.3*qj*(m_bj-m_bw)*(m_bj-m_bw)/8.0;
	m_as=1e6*m_m/m_fy/(1000*m_hj-40)/0.9;

	fmt.Format("%8.2f",m_m);
	m_m =atof(fmt);
	fmt.Format("%7.0f",m_as);
	m_as =atof(fmt);

	d150 =sqrt(4*m_as*150/1000.0/Pi);
	d200 =sqrt(4*m_as*200/1000.0/Pi);
	m_pj1.Format("%5.1f@150",d150);
	m_pj2.Format("%5.1f@200",d200);


  if(m_jss14 == TRUE){ 

	FILE *ou; 	
	CString flname;

	if(m_gcm14 =="") {AfxMessageBox("请输入工程名!"); return;}

	flname=m_gcm14 + ".txt";
	ou=fopen(flname,"a");

	fprintf(ou,"\n\n\n");
	
	fprintf(ou,"\n   ***********************************************************************");
	fprintf(ou,"\n   ***                       结 构 设 计 计 算 书                      ***");
	fprintf(ou,"\n   ***                                                                 ***");
	fprintf(ou,"\n   ***                       Sdt09 -  条形基础设计                     ***");
	fprintf(ou,"\n   *************************************************    Zgs 2002    ******");

	fprintf(ou,"\n\n   工程名称: %s   构件编号: %s",m_gcm14,m_bh14);
	
	fprintf(ou,"\n\n   条基荷载 N =%8.3f (kN/m),",m_nl);
	fprintf(ou,"\n   条基埋深 D =%6.3f (m),  条基上墙(或梁)宽度 Bw =%6.3f (m),",m_d,m_bw);
	fprintf(ou,"\n   地基承载力特征值 Fak =%8.3f (kPa), 修正后地基承载力特征值 Fa =%8.3f (kPa),",
						m_fk,m_f);
	fprintf(ou,"\n   钢筋强度 Fy =%8.2f (MPa),  砼强度 Fc =%8.2f (MPa),",m_fy,m_fc);

	fprintf(ou,"\n\n   条基宽度 B =%6.3f (m),  条基根部高度 H =%6.3f (m),",m_bj,m_hj);
	fprintf(ou,"\n   条基承受的弯矩值 M = %8.3f (kN-m/m)",m_m);
	fprintf(ou,"\n   钢筋面积 As =%8.3f (mmxmm/m), 配 %s 或%s",m_as,m_pj1,m_pj2);
	fprintf(ou,"\n   工程实际配筋:");
	fprintf(ou,"\n\n   简  图: \n\n\n\n\n");

	time_t tad;
	char *buf;
	buf=(char*)calloc(80,sizeof(char));
	if(buf==NULL) exit(-1);
	tad=time(NULL);
	strftime(buf,80,"%A %B %d,%Y",localtime(&tad));

	fprintf(ou,"\n\n                                   设计人:");
	fprintf(ou,"\n                                 %s",buf);

	fclose(ou);
	}
	
    UpdateData(FALSE);
		
}


void CSdt14::OnBTSdtHelp14() 
{
	ads_help("sdt2002.hlp","SDT09",0);
	
}

⌨️ 快捷键说明

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