void CCommonFuntion::DrowPloyLine(AcGePoint2dArray& inputpoints)
{
if (inputpoints.length() < 3)
return;
AcDbPolyline *pPolyLine = new AcDbPolyline(3);
for (int i = 0; i < inputpoints.length(); i++)
{

pPolyLine->addVertexAt(i, inputpoints.at(i), 0, 1.0, 1.0);

}

AcDbBlockTable *pBlockTable = NULL;
acdbHostApplicationServices()->workingDatabase()->getBlockTable(pBlockTable, AcDb::kForRead);
AcDbBlockTableRecord *pBlockTableRocord;
pBlockTable->getAt(ACDB_MODEL_SPACE, pBlockTableRocord, AcDb::kForWrite);
AcDbObjectId lineId;
pBlockTableRocord->appendAcDbEntity(lineId, pPolyLine);
pBlockTable->close();
pBlockTableRocord->close();
pPolyLine->close();
}

AcDbObjectIdArray CCommonFuntion::DrowLine(AcGePoint3dArray& inputpoints)
{
AcDbObjectIdArray ids;
if (inputpoints.length() < 2)
return ids;
for (int i=0;i<inputpoints.length();i++)
{

if (i==inputpoints.length()-1)
{
AcDbLine *pPline = new AcDbLine(inputpoints[i], inputpoints[0]);
AcDbObjectId ID=CCommonFuntion::PostToModelSpace(pPline);
if (pPline)
pPline->close();
ids.append(ID);
}
else
{
AcDbLine *pPline = new AcDbLine(inputpoints[i], inputpoints[i + 1]);
AcDbObjectId ID = CCommonFuntion::PostToModelSpace(pPline);
if (pPline)
pPline->close();
ids.append(ID);
}

}
return ids;
}

objectarx之画多段线和画直线的更多相关文章

  1. Java 直线、多段线画板 PaintJFrame (整理)

    package demo; import java.awt.BorderLayout; import java.awt.Color; import java.awt.FlowLayout; impor ...

  2. objectarx 按比例分割封闭多段线

    测试结果:这个是按0.1,0.1,0.1,0.3,0.4的比例划分的. 插件描述:这个插件主要是选择一个多段线poly,设置poly的close属性为true,在poly任意一侧画一条长线line(l ...

  3. WPF在圆上画出刻度线

    思路 我们可以使用Ellipse先画出一个圆当背景,然后用Canvas再叠加画上刻度线,就能得到如下的效果 我们先用Ellipse画一个橙色的圆,然后将Canvas的宽度和高度绑定到Ellipse的宽 ...

  4. ArcGIS API for Flex实现GraphicsLayer上画点、线、面。

    目的: ArcGIS API for Flex实现GraphicsLayer上画点.线.面. 准备工作: 1.这次地图数据就用Esri提供的http://server.arcgisonline.com ...

  5. 纯JS画点、画线、画圆的方法

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. 根据某条件给GridView符合条件的值画上删除线

    如博文标题,根据某些条件对GridView控件中,对符合条件的值画上删除线效果.实现这些要求,只人捕获到哪些符合要求的数据即可.GridView控件是在TemplateField模版显示数据,Insu ...

  7. 关于 KiCad 画圆弧走线

    关于 KiCad 画圆弧走线 有很多关于 关于 KiCad 画圆弧走线的帖子. 最新进展是 V6 在开发中. 但是因为关于 DRC 问题,开发好像有难度. https://bugs.launchpad ...

  8. Objectarx 相交矩形求并集 面域转多段线

    测试结果: 主要思路:拾取一个点作为矩形的插入点,分别以该点进行两次jig操作,就能得到白色的两个相交的polyline,之后需要变成红色的封闭多段线.做法就是:求出两个白色矩形的面域,然后通过boo ...

  9. objectarx 多段线自交检查

    只支持直线段的多段线检查,因为主要用了初中的知识,一元一次方程求交点,详细的说就是,把多段线上相邻的两个点构成一条直线段,然后每条直线段与剩余的直线段求交点,一条直线段就代表一个一元一次方程,知道两点 ...

随机推荐

  1. python函数当容器

    def func(): pass func2 = func func2() i = [func,func2] for a in i: a() 函数名就是内存地址,加()代表执行

  2. 基于TensorFlow理解CNN中的padding参数

    1 TensorFlow中用到padding的地方 在TensorFlow中用到padding的地方主要有tf.nn.conv2d(),tf.nn.max_pool(),tf.nn.avg_pool( ...

  3. webservice作用(优,缺点;作用)

    1其实我们平时的应用,有一方面考虑是部署方便,维护容易~!如果是DLL,部署,更新需要每个应用了这个DLL的应用程序都作相应的引用更新...而如果用了Ws,则不用,因为它通过网络部署,通过网络引用,基 ...

  4. service network restart 报错重启失败

    Job for network.service failed because the control process exited with error code. See “systemctl st ...

  5. UVa-401 Palindromes回文词

    虽然是水题,但是容易错.参照了紫书的代码可以写的很简洁.主要还是注意常量数组的使用,能让代码变得简单许多 #include <iostream> #include <cstdio&g ...

  6. layui -page 分页类

    <?phpnamespace page; // +---------------------------------------------------------------------- / ...

  7. Redis使用:聚合类型为空时,会自动被Redis删除

    项目中使用Redis来记录用户的上线和下线信息,其中用到了集合(sets)类型,某用户上线时,向sets中添加数据,下线时将相应数据从sets中删除,考虑当该用户的所有实例都下线时,需要将sets删除 ...

  8. alert对象相关问题

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. dp hdu 5464 Clarke and problem

    Problem Description Clarke is a patient with multiple personality disorder. One day, Clarke turned i ...

  10. ES6中async和await说明和用法

    昨天看了一篇vue的教程,作者用async/ await来发送异步请求,从服务端获取数据,代码很简洁,同时async/await 已经被标准化,是时候学习一下了. 先说一下async的用法,它作为一个 ...