- 博客(62)
- 收藏
- 关注
原创 CAD二次开发 快速选择插入其他项目块
选择其他CAD文件,展示选择CAD文件中所有的块定义,然后选择需要插入的块,鼠标有块定义的跟随,点击放置块定义。
2024-04-17 11:10:52 261
原创 WPF中通过自定义Panel实现控件拖动
看到趋时软件的公众号文章(WPF自定义Panel:让拖拽变得更简单),发现可以不通过Drag的方法来实现ListBox控件的拖动,而是通过对控件的坐标相加减去实现控件的位移等判断,因此根据文章里面的代码写的这一篇博客,里面结合一定自己的理解,而且存在很多问题没能解决,仅实现了简单的流程,如有大佬可以指点,不慎感激!!
2024-04-04 23:00:00 288
原创 插件使用权限管理软件(三)WebAPI项目IIS部署
完成了WebAPI项目的接口服务类编写工作,接下来讲把项目部署到服务器的IIS上,让系统运行起来。
2023-07-28 07:00:00 832
原创 Revit二次开发知识分享(二十四)实现鼠标可视化跟随动画效果
群友询问:怎样子实现在批量选择完管道,在点击放置标签时,想有一个可视化跟随的动画效果。然后研究了一番,下面提供了一个简易版的实行方案,大家可以参考学习。
2023-03-23 12:01:55 1290 5
原创 Gitea Windows环境下服务搭建
这篇文章没有去分析各大平台的优劣势,仅教学大家搭建一个属于自己的git代码管理器,主要作用在局域网内,办公电脑搭建一个简单的Gitea代码管理器。数据库使用SQLite3,环境是windows10。如果不是这个环境的话,大家可以当做一个操作的参考吧。
2023-02-27 16:06:38 867
原创 CAD二次开发 解决填充图案(Hatch)填充比例无法自动更新问题
在项目中需要用程序自动修改填充图案Hatch的==填充图案比例==属性(PatternScale属性),把比例10改成比例20,但是修改后发现填充图案比例数值已经修改为20,但是图案显示的比例还是10,并没有刷新。因此有了这篇文章的记录
2023-02-21 18:20:37 904
原创 CAD二次开发 插件初始化接口IExtensionApplication
在实际项目开发中,我们总会遇到一些问题。比如说在CAD打开之前,修改注册表的内容,或者解决CAD在没有完全加载想要的dll情况下,功能运行报错的bug。因此,下面和大家介绍一下IExtensionApplication接口
2023-02-19 15:39:19 1072
原创 Revit二次开发小技巧(十七)实时监控模型线的生成
项目中需要一个需求,用户想调用出Revit中自带的绘制模型线方法,然后再绘制结束时,可以拿到绘制的模型线,然后实现后面的算法。这里记录一种方法,通过DocumentChange事件+修改Tag的PropertyChanged事件来实现对应的需求。
2023-01-09 00:56:07 704 4
原创 Revit二次开发知识分享(二十三)动态控制按钮是否可用
我们想通过代码动态精确控制PushButton在哪些指定的情况下是不能使用的,哪些情况下是可以使用的 ,下面分享的是相关的api。
2022-12-26 22:40:28 219
原创 Revit二次开发小技巧(十五)构件的最小矩形外轮廓
我们会经常遇到需要计算一个构件的最小外轮廓,一般直接取BoundingBox只有最大和最小值坐标,也是基于x-y坐标系下的。往往不是最小的矩形,所以分享下面的算法来计算最小的外轮廓,条件为法向量是指向Z轴的,暂时没有考虑曲线的情况
2022-12-15 23:12:44 559 1
原创 Revit二次开发知识分享(二十一)修改墙的厚度(楼板同理)
[Transaction(TransactionMode.Manual)] public class ChangeWallThicknessDemo : IExternalCommand { public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) { UIDocument uidoc = command
2022-05-09 00:46:19 2909
原创 Revit二次开发知识分享(二十)控制结构框架的“不允许连接”功能类
在做项目中遇到过创建梁的时候,其中一端需要设置不允许连接。因此找到了这个类(如下图)这个类里面提供了对结构框架的边缘点修改方式,包括“不允许连接”和“翻转结构框架终点”两个主要的功能。同意连接。参数中int值输入“0”或“1”,分别代表起点和终点。不允许谅解。参数同上翻转终点。参数同上然后墙体的不允许连接类是WallUtils,提供了打开和关闭的静态方法。希望这个类能帮助你解决问题,今天分享就到这里了~~...
2022-01-24 00:24:15 896
转载 (转载)C# 类库中无法创建WPF窗体
类库添加xaml在WPF工程中添加一个类库工程,并且想要在类库中创建xaml窗体,需要做一下配置修改项目的项目类型,需要使用文本编辑器打开项目的 csproj 文件, 在 csproj 文件中的 PropertyGroup/ProjectTypeGuids 节点标识了项目的类型,在此节点中添加{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 这两个项目类型...
2021-12-25 15:29:30 545
原创 Revit二次开发小技巧(十三)共享参数操作封装类
共享参数操作自己封装的一个共享参数操作类,分享出来,希望可以对你有所帮助~~~ public class ShareParameterMethod { /// <summary> /// 文件保存路径 /// </summary> private string DataPath = ""; /// <summary> /// 参数组集合 /// &l
2021-12-12 23:30:50 542
原创 Revit二次开发小技巧(十二)组构件修改方法分享
有时候会涉及到组构件的修改,当是又想通过这一次的修改,可以同步到相同的组构件中。这里给大家分享一个自己封装的组构件修改的类,希望可以给大家点帮助。public class GroupMethod { /// <summary> /// 目标组(名字、相同组名称的集合) /// </summary> private List<Tuple<string, GroupType, IEnumerable&l
2021-10-24 20:18:45 870
原创 Revit二次开发知识分享(十九)控制轴网“隐藏编号”按钮
这段时间工作有一个新的想法,就是怎样子去操控轴网的编号显示还是隐藏,如下图。花了点时间研究了一番,发现Revit是有提供对应的API给我们去控制的,下面给大家详细讲讲,Just Do It~~~显示编号方法里面需要传入两个参数,DatuEnds是一个枚举值,枚举值中的参数对应修改的位置,选择是起点还是终点。View参数对应的是需要显示编号的视图。隐藏编号方法里面的参数和显示编号的参数是一样的,这里不多加赘述。基本的API就是上面这些,只要是DatumPlane下面的子类都有这个方法,说明标高
2021-10-24 19:58:07 823 4
原创 Revit二次开发小技巧(十二)创建带洞口的墙
这里记录一下项目上遇到的问题,就是创建带洞口的墙的时候,会发现创建接口仅有一个线集合传进去(如下图)。当墙体有洞口的时候,线段就只能再一个集合中传进去了。这时候会遇到一点问题,就是直接把两个轮廓的线传进去,会出现无法创建墙体的错误(如下图)经过一段时间的研究,发现,只要所有的轮廓首尾相连,然后轮廓线的方向都一致,即顺时针或者逆时针,就可以生成墙体了。 public Result Execute(ExternalCommandData commandData, ref string message,
2021-10-04 18:08:44 590
原创 Revit二次开发小技巧(十一)计算点投影到一个平面上的点
在项目中遇到的一个问题,想把管道中的中心点投影到一个剖切视图上面,然后研究了一番,写了一个通用的方法,现在来记录一下。先上代码,后讲解~~~1、点投影到平面的方法(如下) /// <summary> /// 点投影到一个平面 /// </summary> /// <param name=""></param> /// <param name="xyz"></param>
2021-07-12 23:17:14 1255
原创 Revit二次开发知识分享(十八)管道的布管系统知识
这次主要分享的是Revit管线中的布管系统配置相关的API,案例讲解的是弯头的设置,其他的操作步骤是相似的。直接上代码,GoGoGo~~获取数据 //选择管道 Reference selRef = uidoc.Selection.PickObject(Autodesk.Revit.UI.Selection.ObjectType.Element); Pipe selPipe = doc.GetElement(selRef) as Pipe;
2021-05-03 00:58:46 922
原创 Revit二次开发知识分享(十七)梁板柱开洞的使用
下面使用的API全是2019版本的API噢~~开洞的方法是RevitAPI中直接提供的(如下图),里面一共有四个创建的重载方法。1、给梁,柱子和撑杆来开洞的,现在也仅支持XYZ三个方向上的开洞。2、给屋顶、楼板和天花板开洞,后面的bool属性,提供的是,是否垂直于所在面去开洞3、在两个标高之间竖向开一个洞。4、给墙体开洞示例仅写了梁的开洞示例,如果大家有墙体开洞的需求可以在评论区告诉我,我再添加进去。 UIDocument uidoc = commandData.App
2021-04-12 23:48:01 1022 8
原创 Revit二次开发知识分享(十六)怎样子标注一根线
我们知道API中有提供一个获取点Reference的方法,如下图可是我们每次通过线取的时候,都会报错,取不到对应的Reference。这里我也去试了一下,发现其中的问题,这个对线取点的话,需要是通过构件的Geometry里面的Curve才是可以的。下面演示的是选择一根modelCurve为例。 UIDocument uidoc = commandData.Application.ActiveUIDocument; Document doc = uidoc.Document;
2021-04-03 00:45:25 425
原创 Revit二次开发知识分享(十五)获的与线相交的构件
这里是实现获取相交的一种方法,以选择相交柱子为示例。主要是把线构建成一个实体Solid然后再去计算相交。上代码~~ UIDocument uidoc = commandData.Application.ActiveUIDocument; Document doc = uidoc.Document; //收集所有的柱子 FilteredElementCollector columnFC = new FilteredElementCo
2021-04-01 22:14:47 915
原创 Revit二次开发知识分享(十四) 选择轴网快速生成标注
这次分享的是一个小功能。选择几根相互平行的轴网,然后快速生成标注,内容仅提供学习和参考,延展性很大,可自行开发。上代码Just Do It~~ UIDocument uidoc = commandData.Application.ActiveUIDocument; Document doc = uidoc.Document; List<Reference> selRefList = uidoc.Selection.PickO
2021-03-21 00:05:07 678
原创 Revit二次开发小技巧(九)日志文件路径
当我们想记录自己写的插件报错信息或者记录界面的数据。如果是想存储再本地文件夹中,又担心Revit的访问权限不够会导致一些读取和写入文档时的错误,下面这个提供的是,Revit绝对能访问到的路径,Revit的日志文件的存储路径。API:使用:string path = Path.Combine(Path.GetDirectoryName(commandData.Application.Application.RecordingJournalFilename), "测试文档.txt");File.Wri
2021-03-19 06:19:52 652
Revit二次开发,实现在批量选择完管道,在点击放置标签时,想有一个可视化跟随的动画效果
2023-03-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人