CAD交互绘制带颜色宽度的直线(com接口)
用户可以在控件视区任意位置绘制直线。
主要用到函数说明:
_DMxDrawX::DrawLine
绘制一个直线。详细说明如下:
| 参数 | 说明 |
|---|---|
|
DOUBLE dX1 |
直线的开始点x坐标 |
|
DOUBLE dY1 |
直线的开始点y坐标 |
|
DOUBLE dX2 |
直线的结束点x坐标 |
|
DOUBLE dY2 |
直线的结束点y坐标 |
IMxDrawCustomEntity::Draw
把实体绘制到图上。一般用于动态拖放时,在拖放结束时,绘制到图上。
_DMxDrawXEvents::DynWorldDraw
动态拖放时的绘制事件。详细说明如下:
| 参数 | 说明 |
|---|---|
|
DOUBLE dX |
当前鼠标位置X坐标 |
|
DOUBLE dY |
当前鼠标位置Y坐标 |
|
IDispatch* pWorldDraw |
IMxDrawWorldDraw对象,用于动态绘制 |
|
IDispatch* pData |
IMxDrawCustomEntity对象,动态绘制数据 |
_DMxDrawX::DrawText
绘制一个单行文字。详细说明如下:
| 参数 | 说明 |
|---|---|
|
DOUBLE dPosX |
文字的位置的X坐标 |
|
DOUBLE dPosY |
文字的位置的Y坐标 |
|
BSTR pszText |
文字内容字符串 |
|
DOUBLE dHeight |
文字高度 |
|
DOUBLE dRotation |
文字的旋转角度 |
|
SHORT horizontalMode |
文字的水平对齐方式,0=kTextLeft,1=kTextCenter,2=kTextRight |
|
SHORT verticalMode |
文字的竖直对齐方式,1=kTextBottom,2=kTextVertMid,3=kTextTop |
c#中实现代码说明:
动态拖放时的绘制事件:
private void DrawWidthline()
{
MxDrawUiPrPoint getPt = new MxDrawUiPrPoint();
getPt.message = "点取第一点:";
if (getPt.go() != MCAD_McUiPrStatus.mcOk)
return;
//点取第二点
MxDrawUiPrPoint getSecondPt = new MxDrawUiPrPoint();
getSecondPt.message = "点取第二点:";
//调用
MxDrawCustomEntity spDrawData = getSecondPt.InitUserDraw("TestDynDrawWidthline");
// 设置动态绘制参数.
spDrawData.SetPoint("BasePoint", getPt.value());
//设置线宽
spDrawData.SetDouble("TestDynDrawlineWidth", 10);
// 开始取第二个点。
if (getSecondPt.go() != MCAD_McUiPrStatus.mcOk)
return;
spDrawData.Draw();
}
动态绘制带颜色宽度的直线:
private void axMxDrawX1_DynWorldDraw(object sender, AxMxDrawXLib._DMxDrawXEvents_DynWorldDrawEvent e)
{
MxDrawCustomEntity pCustomEntity = (MxDrawCustomEntity)e.pData;
MxDrawWorldDraw pWorldDraw = (MxDrawWorldDraw)e.pWorldDraw;
string sGuid = pCustomEntity.Guid; MxDrawPoint curPoint = new MxDrawPoint(); curPoint.x = e.dX;
curPoint.y = e.dY;
if(sGuid == "TestDynDrawWidthline")
{
MxDrawPoint sPt = pCustomEntity.GetPoint("BasePoint");
double dw = pCustomEntity.GetDouble("TestDynDrawlineWidth");
pWorldDraw.LineWidth = dw;
//设置直线颜色
MxDrawMcCmColor color = new MxDrawMcCmColor();
color.SetRGB(255, 0, 0);
pWorldDraw.Color = color.EntityColor;
//绘制一个直线
//参数一直线的开始点x坐标,参数二直线的开始点y坐标,参数三直线的结束点x坐标,参数四直线的结束点y坐标
pWorldDraw.DrawLine(sPt.x, sPt.y, curPoint.x, curPoint.y);
}
}
CAD交互绘制带颜色宽度的直线(com接口)的更多相关文章
- CAD交互绘制带颜色宽度的直线(网页版)
用户可以在CAD控件视区任意位置绘制直线. 主要用到函数说明: _DMxDrawX::DrawLine 绘制一个直线.详细说明如下: 参数 说明 DOUBLE dX1 直线的开始点x坐标 DOUBLE ...
- CAD交互绘制带周长面积的矩形框(网页版)
主要用到函数说明: _DMxDrawX::DrawLine 绘制一个直线.详细说明如下: 参数 说明 DOUBLE dX1 直线的开始点x坐标 DOUBLE dY1 直线的开始点y坐标 DOUBLE ...
- CAD交互绘制带周长面积的矩形框(com接口)
主要用到函数说明: _DMxDrawX::DrawLine 绘制一个直线.详细说明如下: 参数 说明 DOUBLE dX1 直线的开始点x坐标 DOUBLE dY1 直线的开始点y坐标 DOUBLE ...
- Turtle绘制带颜色和字体的图形(Python3)
转载自https://blog.csdn.net/wumenglu1018/article/details/78184930 在Python中有很多编写图形程序的方法,一个简单的启动图形化程序设计的方 ...
- [FMX]在 FMX 程序中绘制单像素宽度的直线 [FMX]在 FMX 程序中绘制单像素宽度的直线
[FMX]在 FMX 程序中绘制单像素宽度的直线 2017-10-09 • Android.Delphi.教程 • 暂无评论 • swish •浏览 353 次 在前面的一篇文章中,我介绍了一种绘制低 ...
- CAD交互绘制直线(网页版)
用户可以在CAD控件视区任意位置绘制直线. 主要用到函数说明: _DMxDrawX::DrawLine 绘制一个直线.详细说明如下: 参数 说明 DOUBLE dX1 直线的开始点x坐标 DOUBLE ...
- CAD交互绘制直线(com接口)
用户可以在控件视区任意位置绘制直线. 主要用到函数说明: _DMxDrawX::DrawLine 绘制一个直线.详细说明如下: 参数 说明 DOUBLE dX1 直线的开始点x坐标 DOUBLE dY ...
- CAD交互绘制圆形云线批注(网页版)
js中实现代码说明: 动态拖放时的绘制事件: function DoDynWorldDrawFun(dX,dY,pWorldDraw,pData) { //自定义实体的GUID标识符 var sGui ...
- CAD交互绘制圆(网页版)
CAD绘制图像的过程中,画圆的情况是非常常见的,用户可以在控件视区点取任意一点做为圆心,再动态点取半径绘制圆. 主要用到函数说明: _DMxDrawX::DrawCircle 绘制一个圆.详细说明如下 ...
随机推荐
- es的forcemerge——按照天分割
归并线程配置 segment 归并的过程,需要先读取 segment,归并计算,再写一遍 segment,最后还要保证刷到磁盘.可以说,这是一个非常消耗磁盘 IO 和 CPU 的任务.所以,ES 提供 ...
- vs2013/2015中scanf函数类似于error C4996: 'scanf': This function or variable may be unsafe的安全检查错误
在使用vs2015时,遇到了scnaf函数安全性的问题,程序不能正常运行,错误如下: error C4996: 'scanf': This function or variable may be un ...
- bzoj4326
二分+树剖+差分 之前的做法naive,莫名其妙的wa,明明uoj95分 看到最小最大上二分,树上路径问题直接剖,然后问题就转化成了一个判定问题,每次二分出最长路径长度,问能不能达到.那么我们就把所有 ...
- Java Socket编程如何建立两者关系
转自:http://developer.51cto.com/art/201003/190582.htm Java Socket编程需要大家详细的学习,有关的技术一直在不断的更新.那么要如何才能掌握好有 ...
- Spring的Task任务
转自:http://liuna718-163-com.iteye.com/blog/2215076 Spring Task提供两种方式进行配置,一种是annotation(标注),而另外一种就是XML ...
- js中&&与||
1.a&&b 先将a.b转化为Boolean型,在进行逻辑运算,true 返回b,false 返回a: 2.a||b 先将a.b转化为Boolean型,在进行逻辑运算,true 返回a ...
- 三步升级已安装的 Android SDK 和 ADT 插件(转载)
转载:http://www.tfan.org/update-adt-and-android-sdk-in-five-minutes/ 如何快速地把已安装的 Android SDK 及 Eclipse ...
- bzoj 1006: [HNOI2008]神奇的国度【弦图+LesBFS】
参考论文:https://wenku.baidu.com/view/6f9f2223dd36a32d73758126.html 参考代码:http://hzwer.com/3500.html 虽然会写 ...
- 组合数学练习题(一)——Chemist
题意: 从 n 个人中选出不超过 k 个人,再在选出的人中选出一些人成为队员,再在队员中选一名队长,求不同的方案数.答案 mod 8388608. 共有T组询问,每次给你n和k.T ≤ 10^4 k ...
- 大数据技术之_25_手机APP信息统计系统项目_01_APP 数据生成模块 + 数据收集模块 + 数据处理模块框架搭建 + 业务需求处理 + 数据展示模块 +项目总结 + 问题总结
一 项目概述1.1 角色1.2 业务术语1.3 项目效果展示二 项目需求三 项目概要3.1 项目技术架构3.2 项目目录结构3.3 项目技术选型3.4 项目整体集群规划3.5 创建项目工程四 APP ...