结果缓存——ResultBuffer 结果缓存即 Autodesk.AutoCAD.DatabaseServices.ResultBuffer 类型,使用 ResultBuffer 对象时需要提供一个数据对,每个数据对包含一个数据类型描述和一个值,这些数据对是 Autodesk.AutoCAD.DatabaseServices.TypedValue 类的实例. TypedValue.TypeCode 属性是一个16位整型数据,它指明 TypedValue.Value 属性的数据类型,可接受的 T…
最近在使用已有的一些 jar 包时,发现有些 jar 包中的一些方法无法满足自己的一些需求,例如返回固定的格式,字符串处理等等,因而需要对原有 jar 文件中对应的 class 文件进行二次开发扩展,并重新打包文件,替换原有的 jar 文件,满足测试开发自身的需求. 下面以修改 eclipse 默认注释中的 ${date} 和 ${time} 对应的返回样式(如下图所示),进行实例说明.…
TFS二次开发的数据统计以PBI.Bug.Sprint等为例(一) 在TFS二次开发中,我们可能会根据某一些情况对各个项目的PBI.BUG等工作项进行统计.在本文中将大略讲解如果进行这些数据统计. 一:连接TFS服务器,并且得到之后需要使用到的类方法. /// <summary> /// tfs的 /// </summary> private TfsTeamProjectCollection server; private WorkItemStore workstore; priv…
众所周知,对AutoCAD进行二次开发用到的主要工具有:ObjectArx,VBA,VLisp.但它们的优缺点是显而易见的:ObjectArx功能强大,编程效率高,但它的缺点是编程者必须掌握VC++,而这门语言非常的难学;VBA和VLisp虽然简单易上手,但它们对于开发大型的程序好象无能为力.那究竟有没有一种语言能结合它们的优点而尽量避免它们的缺点呢? 回答是肯定的,那就是微软新推出的21世纪编程语言C#.关于C#的详细介绍,大家可以参考有关的文章. C#是通过AutoCAD ActiveX 这…
在TFS二次开发中,我们可能会根据某一些情况对各个项目的PBI.BUG等工作项进行统计.在本文中将大略讲解如果进行这些数据统计. 一:连接TFS服务器,并且得到之后需要使用到的类方法. /// <summary> /// tfs的 /// </summary> private TfsTeamProjectCollection server; private WorkItemStore workstore; private TeamSettingsConfigurationServi…
在CAD中,属性信息一般是以注记的形式存在,但当属性数据内容较多时,显示就成了问题.扩展属性(Xdata)可以解决这一问题,比如南方Cass中就利用了这一点.我们经常用Lisp来读取操作扩展属性. 查看实体属性信息: (entget(car(entsel))'("*")) 但我们为了方便与GIS交互,我们得在.NET中来读取.修改CAD文件中实体的扩展属性.本文先只讲解怎么读取扩展属性. 第一步,不管怎么样,都要先打开文件,获取文档,选择对象,获取实体.下面这段代码在测试中肯定会经常用…
本文主要讲解如果使用C#语言来对超级狗进行二次开发,如果仅仅是做个激活的功能,可以参照另一篇博客,地址:http://www.cnblogs.com/dathlin/p/8487842.html 如果疑问,可以加QQ群:592132877 继续主题研究,如果使用C#来对超级狗进行二次开发. 楼主在研究这个超级狗的时候,直接某宝购买了开发狗和子狗两个狗,并没有购买demo狗,所以后来在研究开发套件里的Demo项目时,老是提醒找不到超级狗,一定要开发套件里生成的公司的独一无二的组件进行访问. 第一步…
其他话不多说,直接进入主题,既然是二次开发,当然是用CAD平台已经封装好了很多类,我们需要熟悉和使用它们.常用的AutoCAD .NET API的四个主要DLL文件是: 名称 作用 备注 AcDbMgd.dll 处理图形文件中存储的对象   AcMgd.dll 处理AutoCAD应用程序和用户接口   AcCui.dll 处理自定义文件   AcCoreMgd.dll 处理编辑器.发布与打印.定义AutoLISP命令和函数 AutoCAD 2014版 我们现在不必去深究这些类库的构造,这四个引用…
一.什么是Schema        Schema是Revit扩展数据的技术关键词,revit到这里,需要对Revit二开基础有一定了解. 二.Schema架构        建立revit扩展数据第一步是建立Schema(类似建立架构设计,设计Schema存储结构,类似设计DB 数据表结构),第二步是将扩展数据放入Entity,最终保存的位置在Element.             三.代码          SchemaMaager           public class Schem…
从CAD2007之后,Autodesk提供了一个新的程序集AcCui.dll,使用这个程序集,我们可以方便地做一些界面方面的操作,比如创建自定义菜单. 下面介绍一下菜单的创建过程: 1.在项目中添加引用:AcCui.dll,这个DLL存放在CAD的安装目录中.但是,好像CAD2007之前的版本里没有这个DLL),我电脑上安装了CAD2004.CAD2005.CAD2008.CAD2010,其中,只有CAD2008和CAD2010中有这个DLL. 2.在代码中添加using: using Auto…
https://www.cnblogs.com/gisoracle/archive/2012/02/19/2357925.html using System; using System.Collections.Generic; using System.Linq; using System.Text; using Autodesk.AutoCAD.Runtime; using Autodesk.AutoCAD.ApplicationServices; using Autodesk.AutoCAD…
上一篇文章我们编写了此例的DTO层,本文将数据访问层封装为逻辑层,提供给界面使用. 1.获取TFS Dto实例,并且可以获取项目集合,以及单独获取某个项目实体 public static TFSServerBll Instance = new TFSServerBll(); public TFSServerDto dto; public TFSServerBll() { dto = new TFSServerDto("http://server:8080/tfs/Project/");…
在ArcGIS中,锁是一个经常遇到的东西,在打开一个该当时要锁定,编辑一个文档是再次锁定.要深入理解这个,要学习一下进程与线程.在CAD.NET中,也有Lock与Unlock. 获取一个文档,在进行处理前应当LockDocument,像官网帮助所说,因为修改或访问CAD的请求随时随地都在发生,为避免与其他请求冲突,我们有责任在修改前锁定文档.但是,某些情形下的锁定文档会导致在更新数据库过程中锁定犯规. 下列四种情况我们需要锁定: (1)从无模式对话框与CAD交互时: (2)访问已调入的文档不是当…
目前我已经掌握的创建CAD菜单方法有两种: COM方式: http://www.cnblogs.com/bomb12138/p/3607929.html CUI方式: http://www.cnblogs.com/bomb12138/p/3600842.html 从程序复杂度来看,COM方式更简单一些,CUI方式较复杂. 从版本特性来看,COM方式更通用一些,CUI方式仅支持CAD2007+的版本. 从兼容性来看,基本一样:在测试程序中,对于CUI方式,我引用的是CAD2008的类库,而最后生成…
当我们要在CAD中创建自定菜单时,可以引用COM组件来实现. 下面是实现方式: 1.新建类库项目,并引用CAD目录(我这里用的是CAD2008)下的acdbmgd.dll.acmgd.dll,并将引用属性中的“复制本地”设为False. 2.添加Com引用:AutoCAD 2008 Type Library. 3.创建类“Main.cs”,并在类头部命名空间上加上修饰: [assembly: CommandClass(typeof(AutoCAD_PopMenuTestCom.Main))] 这…
Webcast Language Date AutoCAD .Net - Session 2 English 13-Sep-12 AutoCAD .Net - Session 1 English 6-Sep-12 AutoCAD API Chinese 25-Apr-12 DevTV: AutoCAD .Net API - Chinese - Part 1 Chinese 6-Apr-12 DevTV: AutoCAD .Net API - Chinese - Part 2 Chinese 6-…
今天专门讲一个--CommandMethod.我们都在知道CAD操作要快,必须要熟悉掌握各种命令.在Lisp开发中,在函数后C:即可添加一个命令,非常方法,在.NET API也可以非常方便的设置命令,它需要CommandMethod属性. 先来看CommandMethod的定义,它的构造函数很多,其中参数最全的一个如下图所示: groupName组名,string,命令编组名称,一般在小项目开发中用得比较少. globalName,全局名称, string,即命令,它应该是唯一的,不然在调用时会…
测试结果: 主要思路:假设有两条曲线分别是c1和c2,把c1按照1的距离划分我这里用变量jd表示,得到一个曲线集合coll,然后遍历coll,得到coll中每一个曲线的两个端点,再用这两个端点分别求离曲线c2的最短距离,直接使用开发库的GetClosestPointTo方法就可以了,直到遍历完整个coll集合就能得到最短距离和其对应的点. 主要代码得到曲线集合coll: public List<Curve> GetCurves(Curve curve ,double jd) { List<…
1.CAD崩溃,错误“unhandled access violation reading”=“未将对象引用设置到对象的实例”. 2. 建模操作错误:指向给定边的指针为空. 建模操作错误:访问冲突. acdbmgdeGeneralModelingFailure 这类错误是CAD直接在其命令行中输出提示的,有时候会引发CAD崩溃,但有时候又不会引发崩溃. 我碰到的这种类错误的情况是:频繁对一些Region进行重复炸碎,出现了这类错误.重复时间间隔越短越容易出问题,有时候中间间隔十几秒半分钟,但还会…
上一节中我们在initApp()函数中,将helloWorld()函数注册给了CAD主程序,注册指令的字符串为“Hello”. void initApp() { acedRegCmds->addCommand(_T("HELLOWORLD_COMMANDS"), _T("Hello"),_T("Bonjour"), ACRX_CMD_TRANSPARENT,helloWorld); } 如果你用过CAD的话会知道在CAD中经常用类似命令行的…
AutoCAD二次开发工具:1986年AutoLisp,1989年ADS,1990年DCL,1993年ADS-RX,1995年ObjectARX,1996年Active X Automation(COM),1997年VBA,1998年Visual Lisp,2006年.net API(DLL). 趋势和方向:AutoCAD.net API(AutoCAD2006出现,形式是用netload调用DLL插件) ACAD.ARX.VS..NetFramework版本对应关系. AutoCAD     …
原帖地址 http://379910987.blog.163.com/blog/static/33523797201011184552167/ 今天在改代码的时候,遇到了AddVertexAt方法的用法,不甚了解,遂转载 AddVertexAt方法的说明 2010-12-01 20:52:21|  分类: AutoCAD.NET二次 |  标签:bulge  addvertexat  |字号 订阅     用.NET对AutoCAD进行二次开发的时,会发现一个很奇观的现象,那就是居然没有矩形类,…
转:https://testerhome.com/topics/4225 0.背景 组内需要一款轻量级的性能测试工具,之前考虑过LR(太笨重,单实例,当然它的地位是不容置疑的),阿里云的PTS(https://pts.aliyun.com/lite/index.htm, 仅支持阿里云内网和公网机器),Gatling(http://gatling.io/#/)没有TPS数据等等,不太适合我们. nGrinderr是NAVER(韩国最大互联网公司NHN旗下搜索引擎网站)开源的性能测试工具,直接部署成…
基于spring-boot的社区社交微信小程序,适合做脚手架.二次开发 代码地址如下:http://www.demodashi.com/demo/13867.html 1 概述 笔者做的一个后端基于spring-boot的社区社交微信小程序,可以作为开发的脚手架,开发速度快,灵活,前后端分离,很适合二次开发.数据主要存储在MySQL上,笔者封装了一个MysqlGenerator.java工具类,结合spring jdbc,做数据库操作很方便.另外提供了一个文档系统,后端人员产出接口直接写出mar…
1.扩展数据缓存的必要性 大家都知道ecshop系统使用的是静态模板缓存,在后台可以设置静态模板的缓存时间,只要缓存不过期,用户访问页面就相当于访问静态页面,速度可想而知,看似非常完美,但是ecshop 有一个方法被滥用了,那就是 clear_cache_files() ,该方法会把整个系统的静态模板都清除掉,商家或者系统后台管理员只要在后台修改一下商品,或者修改个其他的东西,就会调用该方法将所有静态缓存都清掉,所以如果有商家频繁的修改商品,那么静态模板缓存其实是形同虚设,系统每次都会重新执行动…
1.首先理解一下html html的全名是:HyperText Transfer markup language 超级文本标记语言,html本质上是一门标记(符合)语言,在html里,这些标记是事先定义(规则)好的,并且赋予了其特定的含义.有一套 固定的标记的集合. 网页文件的扩展名是 .html或者 .htm,都是可行的. 文档声明:<!doctype html>  这里的doctype不管是大小写都是可以的,并且兼容html4/html5. html中的标记一般都是有开始标签和结束标签,例…
不过多的废话了,直接上源码: addChartlayers()方法时“打开海图”按钮的triggered()信号所绑定的槽函数. //添加海图数据小按钮槽函数 void MainWindow::addChartlayers() { m_mapCanvas->freeze(true);//冻结或解冻地图画布对象,frozen (true) or thawed (false). Default is true. //步骤1:打开文件选择对话框 QString filename=QFileDialog…
本文将使用一个gitHub开源的项目来扩展实现二次协议的开发,该项目已经搭建好了基础层架构,并实现了三菱,西门子,欧姆龙,MODBUS-TCP的通讯示例,也可以参照这些示例开发其他的通讯协议,并Pull request到这个项目中来实现这个项目的最终目标 github地址:https://github.com/dathlin/HslCommunication 如果喜欢可以star或是fork,还可以打赏支持. 在Visual Studio 中的NuGet管理器中可以下载安装,也可以直接在NuGe…
MyBatis 简介 概述 MyBatis 是一款优秀的持久层框架,支持定制化 SQL.存储过程以及高级映射.它采用面向对象编程的方式对数据库进行 CRUD 的操作,使程序中对关系数据库的操作更方便简单.它支持 XML 描述符配置文件和注解两种方式执行 SQL 语句."简单灵活"是它在对象关系映射工具上的最大优势. mybatis-spring-boot-starter 过去使用 MyBatis 开发,需要各种配置文件.实体类.Dao 层映射关联.还有一大推其它配置.经过进行不断的优化…
AutoCad 二次开发 jig操作之标注跟随线移动 在autocad当中,我认为的jig操作的意思就是即时绘图的意思,它能够实时的显示出当前的操作,以便我们直观的感受到当前的绘图操作是什么样子会有什么样的结果.比如我们自己写命令话一条直线,不用jig操作,只提示输入两个端点,我们在绘制过程中无法预先的感受到这条直线是在哪个位置,有多长,与x轴成什么角度,而是直接输入两点后就得到一条直线的结果了.还有当有了jig操作后,我们确定了一个端点后,在未输入第二个端点的时候,可以拖动鼠标拉长或缩短这条直…