几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   ObjectARX(C++) (http://www.dimcax.com/hust/forumdisplay.php?f=34)
-   -   【转帖】[arx]关于自定义实体显示三维图形,不知是方法不对还是代码有问题! (http://www.dimcax.com/hust/showthread.php?t=6441)

yang686526 2009-04-16 11:56 AM

【转帖】[arx]关于自定义实体显示三维图形,不知是方法不对还是代码有问题!
 
[arx]关于自定义实体显示三维图形,不知是方法不对还是代码有问题!
[arx]关于自定义实体显示三维图形,不知是方法不对还是代码有问题!
请教大家一下,在自定义实体中,显示三维图形,该怎么做?我的代码如下,是代码有问题还是实现方法不对?
下面这个函数在自定义实体的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;
}
能够生成并显示三维实体,但只要进行任何操作(如单击一下或移动鼠标),就会弹出提示:
autocad错误中断
内部错误:!u:\global\src\coreacad\coresrc\scandr.cpp@773:eatmaxreaders
根本就没做什么打开操作,怎么提示eatmaxreaders错误呢???


所有的时间均为北京时间。 现在的时间是 02:00 PM.