找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 772|回复: 6

[求助]:AcDbPolyline谁用过,给讲讲吧?

[复制链接]
发表于 2004-7-10 22:18:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
如何在在直线和弧间切换绘制
如何计算弧的凸度?
等等
在这儿问过几个问题,到现在还没有一个回贴,给点希望吧!
谢谢先!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-7-11 01:25:08 | 显示全部楼层
问问题,最好明确问题的内容,像你这样笼统的问题,别人怎么回答呢?
还有写问题,以前都有解答,你可以搜索一下。

所谓凸起值,就是圆弧圆心角的四分之一的正切值。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-7-12 16:50:46 | 显示全部楼层
AutoCAD里凸度 还和方向有关,有正负的
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-7-13 13:53:02 | 显示全部楼层
[PHP]
        AcDbDatabase *pDb = new AcDbDatabase();
        //Get Point
        AcDbBlockTable *pBtbl;
        pDb->getSymbolTable(pBtbl, AcDb::kForRead);

        //Get Module space
        AcDbBlockTableRecord *pBtblRcd;
        pBtbl->getAt(ACDB_MODEL_SPACE, pBtblRcd, AcDb::kForWrite);
        pBtbl->close();

        //
        AcDbCircle *pCir1 = new AcDbCircle(AcGePoint3d(200,200,0), AcGeVector3d(0,0,1), 50);
        AcDbCircle *pCir2 = new AcDbCircle(AcGePoint3d(400,200,0), AcGeVector3d(0,0,1), 50);

        //Line
        AcDbLine *pLine = new AcDbLine(AcGePoint3d(300,230,0), AcGePoint3d(300,50,0));
        //set line color
        pLine->setColorIndex(1);
        AcDbPolyline *pPolyline = new AcDbPolyline(4);
        AcGePoint2d pt;

        //add top point
        pt.x = 220;
        pt.y = 60;
        pPolyline->addVertexAt(0,pt,0,-1,-1);

        //add top point
        pt.x = 250;
        pt.y = 30;
        pPolyline->addVertexAt(1,pt,0,-1,-1);

        //add top point
        pt.x = 350;
        pt.y = 30;
        pPolyline->addVertexAt(2,pt,0,-1,-1);

        //add top point
        pt.x = 380;
        pt.y = 60;
        pPolyline->addVertexAt(3,pt,0,-1,-1);

        //set width
        pPolyline->setThickness(100);
        pPolyline->setColorIndex(4);

        //
        pBtblRcd->appendAcDbEntity(pCir1);
        pCir1->close();

        pBtblRcd->appendAcDbEntity(pCir2);
        pCir2->close();

        pBtblRcd->appendAcDbEntity(pLine);
        pLine->close();

        pBtblRcd->appendAcDbEntity(pPolyline);
        pPolyline->close();
        pBtblRcd->close();

        delete pDb;
[/PHP]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-7-13 15:34:19 | 显示全部楼层
多谢几位!!
AcDbPolyline 基本上已经会用了。
我从AcDbPolyline 派生了一个类,已经完成了多段线的绘制。
下一步还想知道:
对于在CAD中已经绘制好的多段线,用pedit命令编辑的时侯,许多编辑的命令,如:闭合,合并等需要在程序中重载哪几个函数。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-7-13 21:29:48 | 显示全部楼层
void AcDbPolyline::setClosed( Adesk::Boolean closed);
closed        Input boolean indicating whether or not the polyline is closed
AcDbPolyline::convertTo
AcDbPolyline::convertFrom
是不是这些
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-7-13 22:19:31 | 显示全部楼层
可以给具体的说说怎么用吗?因为他只是AcDbPolyline的函数,那么在程序中在哪里编写响应用户合并的命令代码?
我合并的是自己定义的多段线实体,以两条多段线为例
可以给说说怎么用后两个函数吗?(他们两个是针对AcDb2dPolyline转变的)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-15 21:31 , Processed in 0.170925 second(s), 43 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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