//entId为指定实体的Id
void SignEnt(AcDbObjectId entId)
{
AcDbEntity *pEnt = NULL;
AcDbBlockReference *pRef;
//打开对应实体
Acad::ErrorStatus es = acdbOpenObject(pEnt, entId, ZcDb::kForRead, false);
if ( Acad::eOk != es )
{
acutPrintf(_T("\n打开对应Id的实体失败!"));
return ;
}
if(pEnt->isKindOf(AcDbBlockReference::desc()))
{
//将实体转化为块参照
pRef = AcDbBlockReference::cast(pEnt);
//获得块参照的外框
AcDbExtents exts;
pRef->getGeomExtents(exts);
AcGePoint3d ptMin = exts.minPoint();//外框最小点
AcGePoint3d ptMax = exts.maxPoint();//外框最大点
//获取块参照的外框中心点, MidPoint函数为自己编写,即求两点之间的中心点
AcGePoint3d ptCenter = MidPoint(ptMin, ptMax);
pRef->close();
//获得两点连线的一半长度,HalfLength函数为自己编写,即求两点连线的长度的一半
double radius = HalfLength(ptMin, ptMax);
//以插入点为圆心画圆,标记重复的编号
AcGeVector3d vec(0, 0, 1);
//创建实体圆
AcDbCircle *pCircle = new AcDbCircle(ptCenter, vec, radius);
//将圆添加到模型空间,PostToModelSpace函数为自己编写的,作用是向模型空间中添加实体
PostToModelSpace(pCircle);
}
使用画圆的方法来标注指定Id的实体的更多相关文章
-
javascript画直线和画圆的方法(非HTML5的方法)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
-
纯JS画点、画线、画圆的方法
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
-
OpenGL 3:画圆
这次使用OpenGL画圆,而且中间画一个实心的五角星. 1. 画实心五角: 由于之前使用Polygen画会出现故障,或许是各个GPU硬件也会不一样的,所以使用Polygen画实心五角星并不可靠: 所以 ...
-
Bing必应地图中国API - 在地图上画圆
Bing必应地图中国API - 在地图上画圆 2011-05-24 14:49:37| 分类: Bing&Google|字号 订阅 <变形金刚2>上映4日国内票房过亿,基 ...
-
c# Graphics使用方法(画圆写字代码)
画填充圆: Graphics gra = this.pictureBox1.CreateGraphics(); gra.SmoothingMode = System.Drawing.Drawing2D ...
-
在AE中通过指定中心点和半径画圆
/// <summary>/// 通过指定的中心点.半径画圆/// </summary>/// <param name="pLayer">要画的 ...
-
VB.Net 经典画圆方法
计算机图形学课程作业-----画圆 Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal ...
-
Canvas 画圆
原文地址:http://hi.baidu.com/lj2tj/item/557d8d1a65adfa721009b58b --------------------------------------- ...
-
C#使用Graphics画圆写字
画填充圆: Graphics gra = this.pictureBox1.CreateGraphics(); gra.SmoothingMode = System.Drawing.Drawing2D ...
随机推荐
-
ServerSocket
在网上找ServerSocket看到的解释
-
AutoFac使用方法总结:Part II
事件 AutoFac支持三种事件:OnActivating,OnActivated,OnRelease.OnActivating在注册组件使用之前会被调用,此时可以替换实现类或者进行一些其他的初始化工 ...
-
Android应用UI设计流程
Android应用UI设计流程 设计原理 1.在移动设计中,使用环境是最关键的因素.原型设计方法必须考虑尺寸因素 2.用户测试必须涵盖运动.声音和多点触控等方面: 进行移动设计和测试时,请将你知道的有 ...
-
Zabbix系统介绍
监控概述 硬件监控 IPMI介绍文档:http://www.ibm.com/developerworks/cn/linux/l-ipmi/ 温度:使用ipmi对硬件温度,进行监控 硬盘:使用MegaC ...
-
vue--http请求的封装--token
export const FetchHandler = function (url,opt) { let paramStr = ''; let token = ''; for(key in opt){ ...
-
c语言之字符输入输出和输入验证
单字符I/O:getchar()和putchar() #include<stdio.h> int main(void) { char ch; while ((ch = getchar()) ...
-
helm 部署 使用 记录
0.概念:Helm作为一个包管理工具, 它把Kubernetes资源(比如deployments.services或 ingress等) 打包到一个chart中,方便我们将其chart保存到chart ...
-
Dubbo的使用入门
一.包引入 1.父模块pom.xml中加入依赖: <!-- dubbo --> <dependency> <groupId>com.alibaba.boot< ...
-
理解 Redis(4) - 关于 string 的更多命令(SETEX, SETNX, INCR, DECR, MSET...)
上一节介绍了关于字符串值的一些基本命令, 这一节将介绍一些进阶命令: 清理终端: 127.0.0.1:6379> clear 设置一个键值对, 同时设置过期时间为10秒: 127.0.0.1:6 ...
-
10 个免费的Bootstrap Admin 主题,模板收集
In designing websites today, one of the must have frameworks is the twitter bootstrap. To those who ...