乐筑天下

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

智能设备中的层列表

[复制链接]

2

主题

2

帖子

1

银币

初来乍到

Rank: 1

铜币
10
发表于 2011-4-21 08:14:49 | 显示全部楼层 |阅读模式
大家好,我正在阅读图层表,如下所示
  1. struct sds_resbuf *lays;
  2. lays = sds_tblnext("Layer",1);

现在我有了图层信息
我的问题是如何从结果缓冲区(lays)读取图层名称

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

0

主题

5

帖子

4

银币

初来乍到

Rank: 1

铜币
8
发表于 2011-4-28 10:25:42 | 显示全部楼层
这是一个例子,但是Intellicad没有acdbGroupCodeToType函数,
但是它足够简单,可以编写一个或仅使用您知道的DXF代码
  1. void doit(void)
  2.     {
  3.         resbuf *pRb = NULL;
  4.         TCHAR *tablename[]=
  5.         {
  6.             _T("APPID"), _T("BLOCK"), _T("DIMSTYLE"),
  7.             _T("STYLE"), _T("LAYER"),_T("LTYPE"),
  8.             _T("UCS"), _T("VIEW"), _T("VPORT")
  9.         };
  10.         for (int types = 0; types rbnext)
  11.                 {
  12.                     switch(acdbGroupCodeToType(pRbTemp->restype))
  13.                     {
  14.                     case AcDb::kDwgText:
  15.                         ads_printf(_T("%s "), pRbTemp->resval.rstring);
  16.                         break;
  17.                     case AcDb::kDwgInt16:
  18.                         ads_printf(_T("%d "), pRbTemp->resval.rint);
  19.                         break;
  20.                     case AcDb::kDwgInt32:
  21.                         ads_printf(_T("%ld "), pRbTemp->resval.rlong);
  22.                         break;
  23.                     case AcDb::kDwgReal:
  24.                         ads_printf(_T("%f "), pRbTemp->resval.rreal);
  25.                         break;
  26.                     case AcDb::kDwg3Real:
  27.                         ads_printf(_T("(%f,%f,%f) "),
  28.                             pRbTemp->resval.rpoint[0],
  29.                             pRbTemp->resval.rpoint[1],
  30.                             pRbTemp->resval.rpoint[2]
  31.                         );
  32.                     case AcDb::kDwgHandle:
  33.                     case AcDb::kDwgHardOwnershipId:
  34.                     case AcDb::kDwgSoftOwnershipId:
  35.                     case AcDb::kDwgHardPointerId:
  36.                     case AcDb::kDwgSoftPointerId:
  37.                         ads_printf(_T("%ld "),
  38.                             pRbTemp->resval.rlname[0]);
  39.                         break;
  40.                     case AcDb::kDwgNotRecognized:
  41.                          ads_printf(_T("*Not Recognized* "));
  42.                         break;
  43.                     }
  44.                 }
  45.                ads_printf(_T("\n"));
  46.                ads_relrb(pRb);
  47.             }
  48.         }
  49.     }
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-2-5 16:47 , Processed in 0.363894 second(s), 56 queries .

© 2020-2025 乐筑天下

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