乐筑天下

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

[ARX]关于自定义实体显示三维图形,不知是方法不对还是代码有问题!

[复制链接]

2

主题

3

帖子

1

银币

初来乍到

Rank: 1

铜币
11
发表于 2006-9-1 12:37:00 | 显示全部楼层 |阅读模式
请教大家一下,在自定义实体中,显示三维图形,该怎么做?我的代码如下,是代码有问题还是实现方法不对?
下面这个函数在自定义实体的worldDraw(AcGiWorldDraw* mode)中调用
//显示梁
void MGUnit::ShowBeam(AcGiWorldDraw* mode)
{
// 创建一个圆对对象,以此生成面域
AcGeVector3d vec = m_EndPoint - m_StartPoint;
AcDbCircle *pCirc = new AcDbCircle(m_StartPoint, vec.normal(), 0.1);
// 生成面域
AcDbVoidPtrArray arrayCirc, arrayRegions;
arrayCirc.append((void*)pCirc);
AcDbRegion::createFromCurves(arrayCirc, arrayRegions);
AcDbRegion *pRegion = AcDbRegion::cast((AcRxObject*)arrayRegions[0]);
// 拉伸面域
AcDb3dSolid *p3dSolid = new AcDb3dSolid;
if (Acad::eOk == p3dSolid->extrude(pRegion, vec.length(), 0))
{
  p3dSolid->worldDraw(mode);
}
delete p3dSolid;
delete pCirc;
delete pRegion;
}
能够生成并显示三维实体,但只要进行任何操作(如单击一下或移动鼠标),就会弹出提示:
错误中断
内部错误:!U:\global\src\coreacad\CORESRC\scandr.cpp@773:eAtMaxReaders
根本就没做什么打开操作,怎么提示eAtMaxReaders错误呢???
回复

使用道具 举报

0

主题

1

帖子

1

银币

初来乍到

Rank: 1

铜币
1
发表于 2010-11-26 14:05:00 | 显示全部楼层
你不应该delete p3dSolid;
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-2-5 17:50 , Processed in 0.144758 second(s), 56 queries .

© 2020-2025 乐筑天下

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