- 博客(64)
- 问答 (4)
- 收藏
- 关注
原创 数学基础 三角函数、两条平行线截距
在二维平面上,当我们说“两条直线之间的截距”时,这通常意味着我们需要找到一条与这两条直线都相交的直线,并计算这条相交直线与给定直线的交点坐标,进而可能通过交点坐标来讨论“截距”的概念。不过,如果我们假设你想要计算的是从某一点(比如原点或其他给定点)出发,到这两条直线的垂直距离(这可以看作是一种“截距”的度量,尽管不是传统意义上的),那么我们可以使用点到直线的距离公式。 ,p 2 和 p 3,p4),但没有直接给出直线的斜率或方程,我们假设这些点加上额外的信息(如斜率或第二个点)可以用来确定直线的方程。
2024-07-14 20:17:07
542
原创 opencascade AIS_InteractiveContext源码学习8 trihedron display attributes
交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行修改。如果交互对象尚未加载到交互上下文中,您才能直接调用交互对象的方法。
2024-07-14 20:15:22
1365
原创 dxf写入 中文乱码问题
然而,由于UTF-8是基于字节的编码,你需要先将UTF-8转换为UTF-16(如果需要的话),然后再从UTF-16转换到ANSI,或者反过来。在C++中,UTF-8和ANSI(特别是在Windows平台上,通常指的是系统的本地代码页,如Windows-1252或GBK等)之间的转换并不是由标准C++库直接支持的。如果你的应用程序需要在不同的系统上运行,并且需要明确指定ANSI代码页(比如总是使用Windows-1252),你应该使用相应的代码页ID(如1252)替换CP_ACP。
2024-07-13 10:48:36
460
原创 c# 容器变换
请注意,在输出时我使用了tuple.Item2来引用新的Tuple中的bool值,但实际上在C#的Tuple中,Item2并不存在,因为我们只创建了一个包含两个元素的Tuple(即Tuple)。如果您有一个List并且您想要将其转换为一个List集合,忽略double值,您可以使用LINQ的Select方法来创建一个新的Tuple列表,其中只包含int和bool值。
2024-07-13 10:45:00
857
原创 dxflib保存dxf文件
dxflib是一个用于处理DXF文件的开源C++库。DXF(Drawing Exchange Format)文件是AutoCAD的一种二维图形格式,广泛用于CAD数据交换。dxflib通过读取和解析DXF文件,将其内容转换为可供渲染和显示的矢量图形,使得开发者能够轻松地在自己的应用程序中集成和展示DXF图形。
2024-07-12 13:42:20
947
原创 c++方法
对于 std::string 中的 char 类型,如果 char 是有符号的(这在某些平台上是这样),直接传递 char 到 ::toupper 可能会导致未定义行为,因为负值的 char 会被解释为扩展的 ASCII 码或其他非预期的值。首先,对于 std::string 来说,虽然它支持随机访问迭代器,但直接在其上原地(in-place)修改(即输出迭代器与输入迭代器相同)可能会导致未定义行为,因为 std::transform 在修改元素时可能会覆盖尚未处理的元素。查找最后一个“.”所在的位置。
2024-07-11 14:23:55
848
原创 dxf数据结构
定义:DXF文件是AutoCAD的绘图交换文件,用于在不同CAD软件之间传输和共享绘图数据。推出时间:由Autodesk公司在1982年推出,并已被多次更新,最新版本同时支持ASCII和二进制形式。兼容性:新版本能够向下兼容,意味着无论DXF格式是何时创建的,它都能被最新版的CAD软件打开。
2024-07-11 14:23:03
609
原创 vs编译libredwg和libdxfrw
将jsmn解压后的文件放置libredwg中。然后根据报错格式 修改文件编码格式即可。然后用cmake编译。
2024-07-03 14:52:37
225
原创 opencascade AIS_InteractiveContext源码学习7 debug visualization
交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行修改。如果交互对象尚未加载到交互上下文中,您才能直接调用交互对象的方法。
2024-07-02 20:57:16
1224
原创 如何查看xpf文件
定义:XPF文件用于保留文档的固定布局,包括文本、图片以及其他文档元素的确切位置。用途:这种格式最初由微软公司设计,旨在为文档提供一个忠于原始打印版面的电子版本。它可能包含特定于某些软件或应用程序的信息,如音频文件的元数据、插件设置等。
2024-07-02 15:06:38
787
原创 c# 容器笔记2 查找 DataGrid中的行向上移动
在C#中,如果你想要从List中收集所有不重复的c(double类型)值到一个新的List中,你可以使用LINQ的Distinct方法。在C#中,如果你有一个List(其中info是一个结构体,类似于你给出的C语言结构体定义),并且你想从这个列表中查找所有A属性等于5的info对象,你可以使用LINQ(Language Integrated Query)来完成这个任务。方法一:复制当前行的数据到一个新的行对象中,删除当前行,然后在上一行的位置插入新的行对象。根据你选择的方法,执行相应的代码来移动行。
2024-06-27 16:54:48
825
原创 opencascade AIS_InteractiveContext源码学习6 management of active Selection Modes
交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行修改。如果交互对象尚未加载到交互上下文中,您才能直接调用交互对象的方法。每个可选择的对象必须指定负责整体选择对象的选择模式(全局选择模式)。交互上下文本身支持使用选择过滤器进行分解对象的选择。默认情况下,全局选择模式等于0,但如果需要,可以重新定义。
2024-06-27 08:34:44
709
原创 c#关键字 ArgumentOutOfRangeException .? IEnumerable string.Join
在C#中,IEnumerable 是一个特定的泛型接口,它继承自非泛型的 IEnumerable 接口,并专门用于表示可以枚举的整数集合。例如,如果你有一个方法,它接受一个整数参数 index,并且这个参数应该在一个特定的范围内(比如 0 到数组的长度减一),但是调用者传递了一个超出这个范围的 index 值,那么这个方法就应该抛出一个 ArgumentOutOfRangeException。// 如果customer或Name为null,或Name没有第一个字符,则firstChar为null。
2024-06-26 21:43:43
775
原创 Cmake使用笔记1
在 CMake 中,你通常会先运行 cmake 命令来配置你的项目并生成构建文件(例如 Makefiles、Ninja 构建文件或 Visual Studio 项目文件),然后你可以使用 cmake --build 来实际构建(编译、链接等)你的项目。它只是改变了构建文件生成的位置。在 CMake 中,虽然你不能直接在命令行上指定输出目录(即目标文件、库和可执行文件的最终位置),但你可以通过修改 CMakeLists.txt 文件或使用 CMake 的命令行选项来影响构建过程,从而间接地设置输出目录。
2024-06-26 18:16:56
900
原创 opencascade AIS_InteractiveContext源码学习5 immediate mode rendering 即时模式渲染
交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行修改。如果交互对象尚未加载到交互上下文中,您才能直接调用交互对象的方法。每个可选择的对象必须指定负责整体选择对象的选择模式(全局选择模式)。交互上下文本身支持使用选择过滤器进行分解对象的选择。默认情况下,全局选择模式等于0,但如果需要,可以重新定义。
2024-06-23 16:23:08
849
原创 opencascade AIS_InteractiveContext源码学习3 highlighting management 对象高亮管理
交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行修改。如果交互对象尚未加载到交互上下文中,您才能直接调用交互对象的方法。每个可选择的对象必须指定负责整体选择对象的选择模式(全局选择模式)。交互上下文本身支持使用选择过滤器进行分解对象的选择。默认情况下,全局选择模式等于0,但如果需要,可以重新定义。// 设置线型属性// 设置透明度使用。
2024-06-21 06:56:23
946
原创 opencascade AIS_InteractiveContext源码学习4 object local transformation management
交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行修改。如果交互对象尚未加载到交互上下文中,您才能直接调用交互对象的方法。每个可选择的对象必须指定负责整体选择对象的选择模式(全局选择模式)。交互上下文本身支持使用选择过滤器进行分解对象的选择。默认情况下,全局选择模式等于0,但如果需要,可以重新定义。
2024-06-21 06:55:42
1341
原创 opencascade AIS_InteractiveContext源码学习相关枚举 AIS_SelectionScheme AIS_StatusOfPick
时,根据用户的操作行为和应用程序的需求选择适当的选择方案。这些方案确定了当用户进行选择操作时,如何处理当前选择集合以及新选择的对象。这意味着如果新选择的对象已经在当前选择中,则从当前选择中移除它;,但有一个区别:如果新的选择操作结果为空,并且当前选择集合中包含了被检测到的元素,则该元素会被选中。方法可以将新的对象添加到当前已选择的对象集合中。第一次将对象添加到当前选择中,第二次再次选择相同对象,这会导致从当前选择中移除该对象。方法可以清除当前选择集合中的所有对象,即使没有新的选择操作。
2024-06-20 00:17:22
1087
原创 opencascade AIS_InteractiveContext源码学习2
交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行修改。如果交互对象尚未加载到交互上下文中,您才能直接调用交互对象的方法。每个可选择的对象必须指定负责整体选择对象的选择模式(全局选择模式)。交互上下文本身支持使用选择过滤器进行分解对象的选择。默认情况下,全局选择模式等于0,但如果需要,可以重新定义。使用方法为指定的对象设置自定义的高亮显示颜色。
2024-06-20 00:16:29
1164
原创 c# 学习笔记 PropertyChangedEventHandler、 =>、DependencyObject、DataContext
在C#中,和常常与接口一起使用,这是实现数据绑定和通知机制的关键部分,尤其在WPF (Windows Presentation Foundation) 或其他支持数据绑定的UI框架中。
2024-06-19 11:17:55
916
原创 opencascade AIS_InteractiveContext源码学习1 object display management 对象显示管理
交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行修改。如果交互对象尚未加载到交互上下文中,您才能直接调用交互对象的方法。每个可选择的对象必须指定负责整体选择对象的选择模式(全局选择模式)。交互上下文本身支持使用选择过滤器进行分解对象的选择。默认情况下,全局选择模式等于0,但如果需要,可以重新定义。
2024-06-19 11:17:29
970
原创 opencascade 布尔运算笔记
没有公共部分,操作仍会返回一个结果。为了判断两个形状是否确实有公共部分,并在没有公共部分时返回。,你可以检查生成的结果是否为空或其属性是否表明它没有有效的几何内容。这种方法确保你可以正确判断两个形状是否确实有公共部分,并在没有公共部分时返回。函数用于验证公共部分是否有效。函数创建两个示例形状,分别是一个长方体和一个球体。在 Open CASCADE 中使用。如果以上任何检查失败,则返回。进行布尔操作时,即使两个。计算两个形状的公共部分。,表示没有有效的公共部分。
2024-06-03 22:49:16
419
原创 c#控件笔记
如果不想自定义控件,只是简单地在PictureBox上添加白色边框和左上角的文字,可以使用Label控件来实现这一效果。下面是一个示例,展示如何在PictureBox上添加白色边框,并在左上角添加一个Label显示文字。
2024-06-03 22:48:32
951
原创 c# 笔记 多个checkbox 点击其一个设置为选择状态 其他则为非选择状态 c# WndProc方法 base.WndProc(ref m);
在。
2024-06-01 20:23:37
587
1
原创 opencascade AIS_GraphicTool图形显示控制 源码学习
主要用于处理各种与图形显示相关的任务。该类包含了一些静态方法,用于计算颜色、设置对象的显示属性等。
2024-06-01 08:35:44
136
原创 opencascade AIS_LightSource 光源的交互对象 源码学习 opencascade AIS_KindOfInteractive 交互式对象类型 源码学习
光源的交互对象。环境光以球形在视图角落显示;定位光源由球形或标记表示;聚光灯由圆锥表示;定向光由箭头集合在视图角落表示。此外,可以显示光源名称,并且单击表示将启用/禁用光源。
2024-05-31 00:19:19
828
原创 C# 绘图笔记 c# 在piturebox中添加Usercontrol窗口
要在 C# 中获取 FileDialogControlBase 控件中单击的文件的路径,您需要使用该控件的相应事件来捕获用户的操作,并从事件参数中获取文件路径。要在 C# 中实现点击列表中的文件后触发相应的方法,您可以使用 ListView 控件来显示文件列表,并在用户单击文件时触发相应的事件。在C#中,将用户控件(UserControl)添加到PictureBox控件中并不直接支持,因为PictureBox是一个简单的显示图像的控件,而不是容器控件。在这个方法中,我们获取用户单击的文件名,并调用。
2024-05-31 00:17:13
597
原创 opencascade AIS_GlobalStatus管理交互式对象显示信息 源码学习
存储有关图形上下文中对象的信息:AIS_GlobalStatus::AIS_GlobalStatus ( )默认构造函数。Standard_Boolean AIS_GlobalStatus::AddSelectionMode (const Standard_Integer theMode) inline添加选择模式。void AIS_GlobalStatus::ClearSelectionModes ( ) inline删除所有选择模式。Standard_Integer AIS_GlobalStat
2024-05-30 21:10:04
1269
原创 opencascade AIS_ExclusionFilter过滤器 源码学习
一个用于根据给定类型和/或签名来拒绝或接受对象的框架。对象被存储,并且存储的对象与标志设置一起用于定义过滤器。要过滤的对象与添加到过滤器中的存储对象进行比较,并根据排除标志设置被接受或拒绝。排除标志开启时函数IsOk对所有对象回答true,除了那些类型和签名与过滤框架中存储的对象相同的对象。排除标志关闭时函数IsOk对所有类型和签名与存储对象相同的对象回答true。
2024-05-30 21:01:15
999
原创 opencascade 快速显示AIS_ConnectedInteractive源码学习
创建一个任意位置的另一个交互对象实例作为参考。这允许您使用连接的交互对象,而无需重新计算其表示、选择或图形结构。这些属性是从您的参考对象推导而来的。连接的交互对象与其源对象之间的关系通常是几何变换关系。AIS_ConnectedInteractive 类支持任何交互对象的选择模式 0,并且如果其参考对象基于 AIS_Shape,则支持所有标准模式。子类可以重新定义 ComputeSelection()。此外,如果其参考对象基于 AIS_Shape,则连接的交互对象还将处理 HLR(隐藏线去除)。
2024-05-28 23:23:29
1597
原创 c# 容器笔记
是一个非常高效的数据结构,用于存储唯一值,并且其查找操作的平均时间复杂度为 O(1)。根据你的具体需求选择适合的集合类型。类型,以便处理空列表的情况。如果你有一个包含对象的列表,并且想根据对象的某个属性求最大值,可以使用。需要注意的是,在访问之前应该检查列表是否为空,以避免。根据具体的应用场景选择合适的方法。根据具体场景的需求选择合适的方法。中的最大值,根据具体需求选择合适的方法。是否包含指定的元素。异常,因此使用之前可以检查列表是否为空,或者使用。这两者都实现了集合的功能,但有一些不同的特点。
2024-05-28 04:37:35
1970
原创 visio绘图2-visio设置 visio中文本框大小
在某些版本的Microsoft Visio中,可能没有直接勾选“大小和位置”窗口的选项。在这种情况下,你可以通过其他方式来调整文本框的大小。在Microsoft Visio中调整文本框的大小,可以帮助你更好地控制图表的布局和外观。尽管在某些版本的Visio中没有直接选项勾选“大小和位置”窗口,你可以通过菜单栏或快捷键打开“尺寸与位置”窗口。通过这些步骤,你可以在Visio中精确地调整文本框的大小,以满足你的设计需求。通过这些方法,你可以在Visio中精确地调整文本框的大小,以满足你的设计需求。
2024-05-26 17:19:16
1065
原创 visio绘图1-visio绘制软件设计流程图教程
格式化形状:右键点击形状,选择“格式化形状”,你可以更改形状的填充颜色、边框颜色和线条样式。格式化连接线:右键点击连接线,选择“格式化形状”,你可以更改连接线的颜色、线条样式和箭头样式。
2024-05-26 17:16:58
962
原创 opencascade AIS_ColorScale源码学习 自定义多颜色刻度、颜色条
颜色刻度由矩形颜色条(由固定数量的颜色区间组成)、可选标签和标题构成。标签可以放置在区间的边界处,也可以放置在每个区间的中间。颜色和标签可以自动定义或由用户设置。自动标签根据刻度的数值范围、刻度类型(对数或普通)计算,并按照指定的格式字符串进行格式化。
2024-05-26 09:35:15
1230
原创 qt 笔记
将外部进程嵌入到 Qt 进程的界面中是一项复杂的任务,因为它涉及到操作系统特定的细节。在不同的操作系统上,这种嵌入方式可能会有所不同。以下是一些可能的方法和步骤,针对常见操作系统(如 Windows 和 Linux),提供一些示例代码。
2024-05-26 08:50:48
622
2
原创 opencascade AIS_ColoredShape 源码学习 多颜色交互式对象
考虑子形状颜色映射计算呈现。设置子形状的颜色// 获取子形状// 设定红色设置子形状的透明度// 设定透明度(0到1之间)设置子形状的线宽// 设定线宽清除子形状的自定义颜色清除所有子形状的自定义属性类提供了一种方便的方法来为复杂形状及其子形状设置和管理自定义属性。通过这种方式,您可以在 OpenCASCADE 中以更加细粒度的方式控制形状的外观。这个示例展示了如何使用 OpenCASCADE 库中的类来创建和显示一个具有自定义子形状属性的彩色形状。
2024-05-24 22:21:30
1449
原创 opencascade AIS_Circle AIS_ColoredDrawer AIS_CameraFrustum 源码学习 圆
只有交互对象知道颜色影响哪些绘制属性,如果有的话(例如:对于线条,它是绘制器的线条外观字段,但对于顶点,只有颜色会影响点外观字段)。初始化圆形 theCircle,弧的起始点 theUStart,弧的结束点 theUEnd,以及灵敏度类型 theIsFilledCircleSens。设置圆形的灵敏度类型。如果 theIsFilledCircleSens 设置为 Standard_True,则整个圆形可检测,否则仅圆形边界可检测。初始化用于构造 AIS 圆形基准面的算法,并初始化圆形 aCircle。
2024-05-23 21:44:10
815
原创 opencascade V3d_RectangularGrid 源码学习
从 Aspect_RectangularGrid 重新实现。// 当网格在屏幕上显示时返回 TRUE。从 Aspect_Grid 重新实现。实现了 Aspect_Grid。实现了 Aspect_Grid。实现了 Aspect_Grid。// 将我的内容转储到流中。// 在屏幕上显示网格。// 从屏幕上擦除网格。// 返回图形参数值。// 更改网格的颜色。// 设置图形参数值。// 更新网格参数。
2024-05-22 23:55:00
509
AIS-ColorScale示例 可以显示多颜色
2024-05-26
opencascade 如何实现全选
2022-08-11
如何编写代码打开dwg文件
2022-07-15
TA创建的收藏夹 TA关注的收藏夹
TA关注的人