乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 23|回复: 1

初学者写的两个实现函数,请教问题出在哪里.

[复制链接]

3

主题

10

帖子

1

银币

初来乍到

Rank: 1

铜币
22
发表于 2007-8-3 19:49:00 | 显示全部楼层 |阅读模式
我是ARX初学者,用于做毕业论文,写了两个小函数,但尝试编译的时候,没有达到预期的效果,请高手指点,谢谢!
函数一:
函数的期望实现目标:新建一个图层,并同时确实线型和图层颜色。
void CreateNewLayer(const ACHAR* pNewLayerName,const ACHAR* pLinetypeName,int colorNo)
{
AcDbDatabase *pCurDb;
AcDbLayerTable *pLayerTable;
pCurDb=acdbHostApplicationServices()->workingDatabase();
pCurDb->getLayerTable(pLayerTable,AcDb::kForWrite);
    if (pLayerTable->has(pNewLayerName))
{
  pLayerTable->close();
  return  ;
}
    AcDbLayerTableRecord *pLayerTblRecord = new AcDbLayerTableRecord;
pLayerTblRecord->setName(pNewLayerName);
AcCmColor color;
color.setColorIndex(colorNo);
pLayerTblRecord->setColor(color);
    AcDbLinetypeTable *pLinetypeTbl;
    pCurDb->getLinetypeTable(pLinetypeTbl,AcDb::kForWrite);
AcDbObjectId ltypeObjId;
pLinetypeTbl->getAt(pLinetypeName,ltypeObjId);
pLayerTblRecord->setLinetypeObjectId(ltypeObjId);
pLayerTable->add(pLayerTblRecord);
pLinetypeTbl->close();
pLayerTable->close();
pLayerTblRecord->close();
    return ;

}
函数二:
函数的期望实现目标:将图层转换到期望的图层再进行绘图编辑。
void CCreateEnt::ChangeLayer(const ACHAR* LayerName)
{
AcDbLayerTable *pLayerTbl;
acdbHostApplicationServices()->workingDatabase()
  ->getLayerTable(pLayerTbl, AcDb::kForRead);
//是否已经包含指定的层表记录
    if (pLayerTbl->has(LayerName))
     {
             pLayerTbl->close();
             return;
      }

    AcDbLayerTableRecord *pLayerTblRcd;
pLayerTbl->getAt(LayerName,pLayerTblRcd,AcDb::kForWrite);
//acdbHostApplicationServices()->workingDatabase()->setClayer(layerTblRcdId);
    pLayerTbl->close();
pLayerTblRcd->close();
return;
}
请大侠指教一下问题出在哪里,谢谢!!

回复

使用道具 举报

3

主题

10

帖子

1

银币

初来乍到

Rank: 1

铜币
22
发表于 2007-8-3 23:15:00 | 显示全部楼层
自己已经解决
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-2-6 04:15 , Processed in 0.196807 second(s), 67 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表