CFileDialog的GetPathName()方法和直接定义的CString类型的数据不一样么?

pangle0225 2013-04-19 06:19:12
代码如下:
for (int i=0;i<cunum;i++)
{
HC_Open_Segment_By_Key(myView->m_pHView->GetModel()->GetModelKey());
HC_Open_Segment("");
BODY *tempa;
api_solid_block(SPAposition(pt1[i][1].x*proportion,pt1[i][1].y*proportion,pt1[i][1].z*proportion),SPAposition(pt1[i][7].x*proportion,pt1[i][7].y*proportion,pt1[i][7].z*proportion),tempa);
api_transform_entity(tempa, delta_transf);

int j=i+1;
CString str;
str.Format("%d",j);
filePath1=fp1+"."+str+".bmp";//生成文件路径
ENTITY_LIST ent_list; api_get_faces(tempa,ent_list);//获取所有面
api_rh_set_material_texture(ent_list,filePath1);//贴图 HA_Render_Entity(ent_list.first());
HC_Close_Segment();
myView->m_pHView->ZoomToExtents();
myView->m_pHView->Update();

}


我是想自动生成文件名称,然后进行纹理贴图,然后是另一种方法:

for (int i=0;i<cunum;i++)
{
HC_Open_Segment_By_Key(myView->m_pHView->GetModel()->GetModelKey());

HC_Open_Segment("");

BODY *tempa;
api_solid_block(SPAposition(pt1[i][1].x*proportion,pt1[i][1].y*proportion,pt1[i][1].z*proportion),SPAposition(pt1[i][7].x*proportion,pt1[i][7].y*proportion,pt1[i][7].z*proportion),tempa);
api_transform_entity(tempa, delta_transf);


int j=i+1;

CString str;
str.Format("%d",j);
str="请选择第"+str+"个物体的贴图!";
CFileDialog dlg(true,NULL,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,"bmp files|*.bmp||");
if(IDCANCEL == dlg.DoModal())
{
return;
}

CString filePath=dlg.GetFileName();
ENTITY_LIST ent_list;

api_get_faces(tempa,ent_list);//获取所有面
api_rh_set_material_texture(ent_list,filePath);
HA_Render_Entity(ent_list.first());
HC_Close_Segment();


myView->m_pHView->ZoomToExtents();
myView->m_pHView->Update();

}

上面那种方法不能成功贴图,但是下面的可以,我逐语句执行,上面的第1次循环filePath的值为“1.1.bmp”,下面的filePath1也是“1.1.bmp”,而且后面循环路径我看了 ,都是一样的,为什么第一种方法定义不行,而第二种方法行,用的ACIS贴图~~
求大神!!!
...全文
34 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧