- 博客(30)
- 资源 (2)
- 收藏
- 关注
原创 <C#>详细介绍 AddMvc() , AddMvcCore(), AddControllersWithViews(),services.AddControllers() 方法
● .NET Core 3.0+:引入 AddControllers() 和 AddControllersWithViews() 以区分 API 与视图场景。● 历史版本:早期版本(如 .NET Core 2.x)仅提供 AddMvc(),需通过参数配置禁用不需要的功能。通过合理选择注册方法,可在功能完整性与性能开销之间实现最佳平衡。
2025-03-24 10:10:54
773
原创 <C#> 详细介绍.net 三种依赖注入:AddTransient、AddScoped、AddSingleton 的区别
每次请求都会创建新实例,适用于无状态服务。AddScoped:在同一个服务作用域内返回相同实例,适用于在请求处理过程中需保持状态一致的服务。:在整个应用程序生命周期内只创建一个实例,适用于无状态且需全局共享的服务。
2025-03-21 13:59:58
537
原创 <Revit二次开发>JoinGeometryUtils类介绍
是 Revit API 中用于处理图元间几何连接关系的工具类,主要用于控制元素间的几何剪切、连接状态及顺序。获取到与1号墙体相连接的墙为:2号,3、4、5号均没有相连接。在共享同一面的两个元素之间创建干净的连接。反转两个元素连接的顺序。删除两个元素之间的连接。确定两个元素是否连接。
2025-03-13 08:18:19
281
原创 <Revit二次开发>HostObjectUtils类的GetSideFaces方法
HostObjectUtils.GetSideFaces 是 Revit API 中用于获取宿主对象(如墙、楼板、屋顶等)侧面的几何面引用的方法。该方法通过分析宿主对象的几何结构,返回其侧面的 Reference 集合,用于后续几何操作或族实例的创建
2025-03-11 08:43:57
726
原创 <Revit二次开发>在Reivt开发中,获取一组线段的外轮廓
文章介绍了如何在Revit软件中通过利用向量夹角的逆时针排序策略求解线段所围成的封闭外轮廓。这种方法基于凸包思想,最终得到逆时针排列的外轮廓。
2025-03-07 17:23:52
136
原创 <Revit二次开发>详细介绍Autodesk.Revit.DB.HostObject类的FindInserts 方法
例如,若只关注可见的族实例类型的插入元素,可将 includeHidden 和 includeNonVisible 设置为 false,将 includeFamilyInstances 设置为 true,将 includeSharedElements 设置为 false。若为 false,则不返回族实例类型的插入元素。若为 false,则不返回共享元素类型的插入元素。● 元素 ID 的有效性:确保使用的主体对象 ElementId 是有效的,否则无法获取到主体对象,会导致方法调用失败。○ 类型:bool。
2025-02-28 10:23:28
806
原创 <Revit二次开发>详细介绍 Autodesk.Revit.DB.Curve类的Project方法
● 元素定位:在建筑模型中,当需要将某个元素精确地定位到另一条曲线(如梁、墙的边界曲线)上时,可以使用 Project 方法找到元素上某点在曲线上的投影点,从而实现准确的定位。● 几何分析:在进行几何关系分析时,比如判断两个元素之间的最短距离,可通过将一个元素上的点投影到另一个元素的曲线上,计算投影点与原始点的距离来得到最短距离。● 碰撞检测:在检测两个元素是否可能发生碰撞时,可以将一个元素的边界曲线投影到另一个元素的曲线上,通过分析投影结果来判断是否存在碰撞的可能性。
2025-02-27 08:53:56
263
原创 <Revit二次开发>详细介绍 Autodesk.Revit.DB.Curve类的MakeBound方法
在 Autodesk Revit 的 .NET API 里,Autodesk.Revit.DB.Curve 类是表示曲线的基类,MakeBound 方法是 Curve 类中一个非常重要的方法,用于设置曲线的边界或参数范围。例如,将无界的曲线(如无限长的直线)转换为有界的曲线,通过指定起点和终点的参数值。需确保 startParam 和 endParam 在原始曲线的自然参数范围内,否则可能返回无效结果。部分曲线类型(如样条曲线)可能不支持参数范围修改,调用前需检查曲线 IsBound 属性。
2025-02-26 15:29:21
323
原创 <Revit二次开发>详细介绍 Autodesk.Revit.DB.Curve类的IsInside 方法
Autodesk.Revit.DB.Curve 类的 IsInside 方法用于判断指定参数值对应的点是否位于曲线的有效参数范围内。(该参数经过测试,此参数返回以下枚举值:起点为0,终点为1,其余点为-1)通过以上实验深入了解了IsInside方法的用法,为后续开发提供了参考。含义:需检测的曲线参数值。参数值的具体含义与曲线类型相关。选择一条曲线,并计算不同值的IsInside 返回值。(该参数经过测试,直线该指的是曲线的长度。类型:System.Double。含义:当参数值超出曲线范围时,
2025-02-26 14:22:32
350
原创 <Revit二次开发>详细介绍 Autodesk.Revit.DB.Curve类的 CreateTranslation方法
在 Revit 开发中,Autodesk.Revit.DB.Curve 类代表了各种曲线,CreateTranslation 方法是与曲线变换相关的重要方法。不过,CreateTranslation 并非 Curve 类的直接方法,而是 Transform 类的方法,它可以用于创建一个表示平移变换的 Transform 对象,然后通过 Curve 类的 CreateTransformed 方法结合这个平移变换对象来实现曲线的平移。如果需要更新文档中的曲线,需要进行额外的操作,如删除原曲线并添加新曲线。
2025-02-25 12:46:07
243
原创 <Revit二次开发>详细介绍 Autodesk.Revit.DB.Curve类的 CreateOffset方法
换句话说,曲线上给定点处的曲线“右侧”被定义为参考向量被认为是向上方向,曲线切线被认为是向前方向,就像你沿着曲线行走,身体与参考向量对齐一样。Autodesk.Revit.DB.Curve 类的 CreateOffset 方法是一个非常实用的方法,它主要用于创建当前曲线的偏移曲线。该方法可以根据指定的偏移距离和偏移平面,生成一条新的曲线,新曲线与原曲线保持平行关系。● 曲线类型的一致性:偏移后的曲线类型通常与原曲线类型相同。选择一条曲线,并使用CreateOffset方法的到原曲线的偏移曲线。
2025-02-25 11:35:16
358
原创 <Revit二次开发>详细介绍 Autodesk.Revit.DB.Curve类的 GetEndPointReference方法
Autodesk.Revit.DB.Curve 类中的 GetEndPointReference 方法是一个在 Revit API 中用于获取曲线端点引用的实用方法。下面将从方法概述、方法签名、参数说明、返回值、使用场景、示例代码以及注意事项等方面进行详细介绍。在 Revit 中,元素之间的关联和交互常常需要通过引用(Reference)来实现。GetEndPointReference 方法允许开发者获取曲线端点的引用,这样可以在后续操作中方便地使用这些端点与其他元素进行关联,比如创建约束、进行定位等。
2025-02-24 13:59:06
300
原创 <Revit二次开发>详细介绍 Autodesk.Revit.DB.Curve类的 GetEndPoint 方法
Autodesk.Revit.DB.Curve 类是 Revit API 中用于表示各种曲线的基类,GetEndPoint 方法是该类中一个基础且实用的方法,GetEndPoint 方法用于获取曲线终点的三维空间坐标。在 Revit 的三维建模环境里,曲线是重要的几何元素,明确曲线的终点位置对于许多操作,像构建几何图形、进行空间分析、确定元素位置关系等都十分关键。选择一条曲线,并使用GetEndPoint方法获取相应的点,并放置族实例。0表示曲线的开始,1表示曲线的结束。类型:System.Int32。
2025-02-24 10:36:11
294
原创 <Revit二次开发>详细介绍 Autodesk.Revit.DB.Curve类的GetEndParameter 方法
在曲线的参数化表示中,曲线上的每一个点都可以用一个参数来唯一确定,通过这个方法可以获取到曲线终点对应的这个参数值,这对于分析曲线的特性、进行曲线的裁剪或延伸等操作非常有用。对于具有规则曲率的曲线,如直线和圆弧,可以使用原始参数以Revit的默认单位(英尺)沿曲线进行测量。Autodesk.Revit.DB.Curve 类是 Revit API 中用于表示各种曲线的基类,GetEndParameter 方法是该类提供的一个实用方法,下面为你详细介绍这个方法。0表示曲线的开始,1表示曲线的结束。
2025-02-24 09:59:00
768
原创 <Revit二次开发>详细介绍 Autodesk.Revit.DB.Curve类的 Evaluate方法
在 Autodesk Revit 的 .NET API 里,Autodesk.Revit.DB.Curve 类是表示曲线的基类,Evaluate 方法是 Curve 类中一个非常重要的方法,用于根据曲线的参数值计算曲线上对应点的坐标以及该点处的切线向量等信息。● 曲线类型差异:不同类型的曲线(如直线、圆弧、样条曲线等)在计算点坐标和切线向量时可能有不同的实现方式,但 Evaluate 方法会根据具体的曲线类型进行相应的计算。如果为false,则参数被解释为曲线的自然参数化。
2025-02-24 09:09:47
240
原创 <Revit二次开发>详细介绍 Autodesk.Revit.DB.Curve类的ComputeNormalizedParameter和ComputeRawParamete方法
在 Autodesk Revit 的 .NET API 里,Autodesk.Revit.DB.Curve 类是表示曲线的基类,ComputeNormalizedParameter 方法 和 ComputeRawParamete方法,用于将曲线的实际长度值和归一化的参数值的相互转化,下面为你详细介绍。● 曲线类型:不同类型的曲线(如直线、圆弧、样条曲线等)在计算导数时可能有不同的实现方式,但 ComputeDerivatives 方法会根据具体的曲线类型进行相应的计算。等于原始曲线参数的实数。
2025-02-24 08:41:14
327
原创 <Revit二次开发>详细介绍 Autodesk.Revit.DB.Curve类的 ComputeDerivatives方法
在 Autodesk Revit 的 .NET API 里,Autodesk.Revit.DB.Curve 类是表示曲线的基类,ComputeDerivatives 方法是该类中一个重要的方法,用于计算曲线在指定参数位置处的导数信息,下面为你详细介绍。不同类型的曲线,其有效参数范围不同,使用时需要了解具体曲线的特性。● 曲线类型:不同类型的曲线(如直线、圆弧、样条曲线等)在计算导数时可能有不同的实现方式,但 ComputeDerivatives 方法会根据具体的曲线类型进行相应的计算。
2025-02-21 13:58:21
378
原创 <Revit二次开发>详细介绍Autodesk.Revit.DB.Curve类的 ComputeClosestPoints方法
最近点是指最近的点对,每对点由这条曲线上的一个点(比如P1)和另一条曲线上(比如P2)组成。在 Autodesk Revit 的 .NET API 中,Autodesk.Revit.DB.Curve 类是表示曲线的基类,它提供了许多用于操作和分析曲线的方法。● 在使用 ComputeClosestPoints 方法时,要确保传入的参数(曲线或点)是有效的,否则可能会抛出异常。● 该方法的计算结果可能会受到曲线的精度和数值计算误差的影响。距离是从第一条曲线上的最近点到第二条曲线上最近点的距离。
2025-02-21 09:50:52
544
原创 <Revit二次开发>详细介绍Autodesk.Revit.DB.XYZ类的CrossProduct方法和DotProduct方法,以及两个方法的区别。
方法用于计算两个XYZ向量的叉积(也称为向量积)。叉积的结果是一个新的向量,该向量垂直于原来的两个向量,其方向由右手定则确定。以下是参数other是参与叉积运算的另一个XYZ向量。返回值:返回一个新的XYZ对象,表示两个向量的叉积结果。DotProduct方法用于计算两个XYZ向量的点积(也称为数量积)。点积的结果是一个标量(实数),它反映了两个向量之间的夹角和它们的长度关系。以下是DotProduct参数other是参与点积运算的另一个XYZ向量。返回值:返回一个double。
2025-02-20 14:53:48
318
原创 <Revit二次开发>在实际应用中,CrossProduct方法和DotProduct方法分别有哪些典型的用途?
在 Revit 二次开发及三维空间计算中,方法和DotProduct方法具有广泛的应用,以下分别介绍它们的典型用途。
2025-02-20 14:52:41
300
原创 <Revit二次开发>详细介绍Autodesk.Revit.DB.XYZ类的Normalize方法
详细介绍Autodesk.Revit.DB.XYZ类的Normalize方法
2025-02-20 14:41:36
538
原创 Revit二次开发-使用Teigha,获取cad中的结构柱,自动绘制结构柱
步骤一:获取cad图纸中的所有轴网编号实体,通过轴网编号获得需要绘制结构柱的范围;步骤二:获得所有墙柱引线,通过墙柱引线可以获得到当前结构柱对应的编号名称;步骤四:获得所有的结构柱多段线或者线段。步骤三:获得所有结构柱名称编号,步骤五:首先遍历所有的。
2025-02-14 09:00:17
159
原创 #cad二次开发#使用sqlsugar操作sqlite提示“System.Data.SQLite.dll 未安装或者版本冲突”的问题
完美解决使用sqlsugar操作sqlite提示“System.Data.SQLite.dll 未安装或者版本冲突”的问题
2025-02-14 08:57:11
443
原创 基于Teigha的开发中,使用c#,怎样获取List<Line>中相互连接的一组Line?
在基于Teigha的开发中,如果你有一个包含Line对象的列表(假设这些Line对象是Teigha库中的DbLine或其等效类的实例,并且已经转换或适配为C#中可用的类型),并且你想要找到相互连接的一组Line,你需要实现一种算法来遍历这些线并检查它们的端点是否匹配。
2024-12-12 10:02:21
593
原创 基于Teigha的开发中,使用c#怎么判断一个Entity在Extents3d内部?
在基于Teigha的开发中,如果你使用C#,那么你需要通过Teigha提供的.NET接口(通常是通过COM互操作或者特定的.NET封装)来访问Teigha的功能。判断一个Entity是否在Extents3d内部的过程与在C++中类似,但你需要使用C#的语法和类型。
2024-12-12 10:00:37
848
原创 基于Teigha的开发中,使用c#怎么计算 List<BlockReference>中所有块参照的包围框?
在基于Teigha的开发中,如果你有一个包含多个 BlockReference List,并希望计算这些块参照的包围框(Bounding Box),你可以通过遍历这个列表并计算每个块参照的边界框,然后合并这些边界框来实现。
2024-12-12 09:59:28
193
原创 <Revit二次开发>Autodesk Revit 二次开发基础教程
本书涵盖Revit API框架以及建筑、结构和水暖电的API等,由浅入深,第1—3章介绍概念,第4章是建筑建模,第5—9章涉及稍微中级一点内容,包括注释,几何,族、视图和事件,第10章介绍UI对应的API,第 11—13章涵盖结构建模、材料和水暖电建模,最后第14和15章介绍宏和其他语言(除C#以外的)调用API。本书适合作为Revit API的初学者,所以涵盖的内容比较基础,目的是让新手可以尽快了解Revit API的构架﹐融入到Revit 二次开发的队伍中来。
2024-11-12 09:02:50
191
原创 <Revit软件操作>Autodesk Revit MEP2012应用宝典
本书是国内首部对AutodeskR RevitR MEP进行全面介绍的权威用书。全书从设备工程师软件应用的实际需求出发,系统阐述了AutodeskRevitRMEP 2012的各大功能,详尽地介绍了设备工程师如何利用软件进行项目的前期准备及水、暖、电设计,深入浅出地说明了如何在各专业之间进行协同工作,特别描述了如何创建和定制MEP族文件以及如何使用族编辑器,简明扼要地讲述了如何利用RevitRAPI进行高级个性化定制。
2024-11-12 08:59:10
316
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人