找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 126|回复: 0

[每日一码] 在AUTOCAD 2015 使用3DPOLY命令中使用回调的代码

[复制链接]

0

主题

0

回帖

28

积分

管理员

积分
28
发表于 2024-3-14 20:19:10 | 显示全部楼层 |阅读模式
  1. 回调函数是myTest3DPolyCallback, 主命令函数是MyGroupTestSendCommand3
  2. static int myTest3DPolyCallback(void *pData)
  3. {
  4.         if (acedCmdCWasCancelled())
  5.         {
  6.                 acutPrintf(采用T("\n3DPoly Command was cancelled..."));
  7.                 return 0;
  8.         }
  9.         if (is3DPolyActive())
  10.         {
  11.                 int res = acedCommandC(&myTest3DPolyCallback, NULL, RTSTR, PAUSE, RTNONE);
  12.                 acedCallBackOnCancel();
  13.                 acutPrintf(采用T("\nmyTest3DPolyCallback: 3DPoly is active. res=%d"), res);
  14.                 return 1;
  15.         }
  16.         CallWhen3DPolyDone();
  17.         return 0;
  18. }
  19. static Adesk::Boolean is3DPolyActive()
  20. {
  21.         struct resbuf rb;
  22.         acedGetVar(采用T("CMDNAMES"), &rb);
  23.         if (采用tcsstr(rb.resval.rstring, 采用T("3DPOLY")))
  24.                 return Adesk::kTrue;
  25.         return Adesk::kFalse;
  26. }
  27. static void CallWhen3DPolyDone()
  28. {
  29.         acutPrintf(采用T("\n3DPoly Command completed..."));
  30. }
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|膜结构网

GMT+8, 2024-12-29 05:42 , Processed in 0.108758 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表