更新日志
v5.0.0
- 新增功能
- 加厚功能支持双侧加厚
- 提供几何简化功能,支持将近似为基本曲面的曲面转换为基本曲面
- 多截面曲面支持 G2 连续性
- 新增网格非流形边/点检测接口
- 新增虚拓扑功能
- 新增 Hexa-Block 划分全六面体结构网格功能
- 新增 O-Grid 模板网格功能
- 支持面网格导出 Fluent_Msh 文件
- 新增 3D 点关于平面对称接口
- 2D支持次数在9以内的B样条曲线
- 新增圆角特征移除接口
- 新增倒角特征检测接口
- 允许用户设置属性加载的最低等级(默认精确到 Face)
- 新增 Label 的 Write 接口
- 新增流式的 TopoShape 和 Label 的 Write 接口
- 新增 Label 的序列化 Write 接口与反序列化 Read 接口
- 新增查询直接引用集合 ReferencedBy 的接口
- 新增根据 TopoShape 查 Label 的 GetLabelByTopoShape 接口
- 新增判断是否是匿名属性的 IsAnonymous 接口
- 基于 AttributeType 的查询,删除接口
- Label 新增 SetAttribute接口,当属性 ID 存在时更新属性,不存在时添加属性(对标原 AttributeTool::Set)
- 性能优化
- 对于平面圆盘类的模型,加厚的模型侧面简化为圆柱面
- 大幅优化直线和基础曲线生成的拉伸面的相交性能
- 优化部分情况下生成隐藏线的性能
- 优化了边界层网格生成效率
- 接口变更
- 判断曲线是否在同一个平面上不再支持无限长的曲线,需要设定有界的范围
- 使用曲线生旋转体要求明确曲线在标架的 XOY 平面上,对于不在平面的曲线需要预先使用投影功能
- 规范化 STEPReader、STEPWriter 命名方式
- IgesWrite 接口 format 参数含义扩充,新增属性继承策略子配置
- ArrayAttribute <_Attr> 对 _Attr模板参数做出约束:int,float,double,char,string,int32,int64,uint32,uint64
- 移除 Attribute::SetID()
- 接口中 AttributePtr 改成 std::shared_ptr<Attribute>
- 明确 Attribute ID 为描述属性的键值对中的 Key,创建时需要显式赋值;移除 Attribute 类中的 Name 成员;明确 Attribute ID 为 Label 上属性的唯一标识符,Label 上不允许存在 ID 相同的多个属性
- AttributeTool 定位为构建 Attribute 的工具类,不再提供对 Label 类的操作,AttributeTool::Set 方法改为 std::shared_ptr<Attribute> AttributeTool::MakeAttribute
- 与原生内核接口不同,WithAttr<MakeXXX> 等建模工具,在类的构造函数中不再进行模型的构建,必须要手动调用 Build 进行模型的构建
- Bug 修复
- 修复插入不合法的节点情况下 B 样条曲线插入节点崩溃或出现越界的问题
- 修复构造 B 样条法则曲线时传入节点数组为空时崩溃的问题
- 修复构造参数域长度为 0 的 B 样条曲线曲面时未抛异常的问题
- 修复部分情况下封闭曲线创建Edge时封闭标识不正确的问题
- 修复部分情况下点在实体的内外判断结果不正确的问题
- 修复部分情况下形状修复功能丢失奇异点的问题
- 修复周期情况下,偏移曲面上的曲线结果超出曲面范围的问题
- 修复部分情况下布尔切除失败的问题
- 修复部分情况下简化模型结果不正确的问题
- 修复部分情况下生成隐藏线隐藏结果不符合预期的问题
- 修复部分情况下生成隐藏线卡死的问题
- 修复部分情况下,拔模结果相交导致拔模结果不正确的问题
- 修复部分情况下加厚曲面结果不正确的问题
- 修复部分情况下加厚曲面侧面出现多余边线的问题
- 修复部分情况下偏移平面 wire 结果不正确的问题
- 修复部分情况下放样结果不符合预期的问题
- 修复部分情况下显示扫掠结果不正确的问题
- 修复部分情况下多截面曲面结果折叠的问题
- 修复了部分情况下网格修复失败的问题
- 修复了网格参数化在 Kylin 平台运行失败的问题
- 修复了部分情况下网格切割失败的问题
- 修复了生成Mixed网格结果不稳定的问题
- 修复了部分情况下网格生成失败的问题
- 修复了部分情况下自动尺寸场生成失败的问题
- 修复部分情况下边上插入点在其他边上产生自由边的问题
- 修复复杂模型情况下获取边类型耗时严重的问题
- 修复边界容差较大情况下生成 Coons 面失败的问题
- 修复部分情况下压印第一次失败第二次成功的问题
- 修复已知复杂模型 Logo 特征识别错误的问题
- 修复部分情况下退化拓扑读取不正确的问题
- 修复 Read 流程部分实体属性挂载丢失问题
- 修复 Read 流程 Compound 嵌套属性挂载丢失问题
- 修复 Write 流程 BrepMode 的冗余输出的问题
- 修复 Write 流程 OffsetSurface 解析异常的问题
- 修复 Write 流程回转面参数应用异常的问题
- 修复 Write 流程 OffsetCurve 解析异常的问题
- 修复 Write 流程无界曲面读写闭环失败的问题
- 修复 Write 流程椭圆线解析异常的问题
- 修复 Write 流程 Linux 平台上部分情况写流程接口调用失败的问题
- 修复 Label::GetCompoundLabels 嵌套 Compound 获取结果不正确的问题
- 修复带属性布尔操作上,Vertex 和 Edge 属性未继承的问题
- 修复 Label::Clear 接口抛异常的问题
- 修复 WithAttr<TransfromShape> 属性挂载异常的问题
- 文档信息
实体建模
网格处理
网格剖分
几何约束求解
几何清理修复
STEP文件转换
IGES 文件转换
应用框架
实体建模
网格剖分
实体建模
STEP 文件转换
IGES 文件转换
应用框架
实体建模
网格处理
网格剖分
几何清理修复
STEP文件转换
IGES文件转换
应用框架
优化文档网站的 UI 界面
优化搜索功能,实现对重复专业名词的区分
“性能优化指南” 模块新增 “从 N×T 到 M×T:多线程线面求交的内存去重” 文档
补充完善“功能模块详解” 模块中的 “几何约束求解” 文档
优化 “核心概念” 模块,包括目录结构调整、代码示例完善、辅助图示增补等
“高级应用案例”模块新增 “块结构化网格示例”,“虚拓扑复合功能示例”
网格剖分示例新增模板网格内容
几何清理修复示例中的几何编辑示例二,文件输入由 STEP 格式转换 BREP 格式
修改 STEP 文件读写教程,AF 教程,IGES 文件读写教程
v4.10.0
- 新增功能
- 增加计算形状的非对齐包围盒功能
- 支持获取2D图形约束状态
- 支持双曲线弧
- 增加同一个面上的多边延伸到指定长度\目标面及合并延伸面和原面功能
- 增加面对延伸汇聚的功能
- 增加多组不相连的边构建平面\ Coons 面的功能
- 细化 Sub-Shape 的样式,增加曲面样式影响范围、曲线样式、隐藏等属性
- 增加内核 modelling/ 下建模接口的带属性封装,支持属性的继承
- 完善 AMCAX::Label 上 获取子 Label 的接口
- 性能优化
- 优化两个实体计算最近距离的效率
- 优化直线与复杂B样条曲面不相交时的相交效率
- 修复部分导入 STL 生成网格质量差的问题
- 优化文件中具有多个内环的的圆柱的读取效率
- 优化文件读取部分的逻辑,启用并行处理
- 接口变更
- MeshBoolean 输出网格从单网格变更为多片不连通网格
- FeatureStructs.hpp 中结构体 HoleMessage\LogoMessage\FilletsMessage 改名为 HoleProperties\LogoProperties\FilletProperties
- ShapeStyle / StepPropertyUnit Style 结构细化
- AttributeTool::InitDynamicAttribute 改为 AttributeTool::SettDynamicAttribute
- Bug 修复
- 修复平面和圆柱面相交在部分情况下参数曲线错误的问题
- 修复圆柱面和圆柱面在部分情况下相交不准确的问题
- 修复部分情况下圆环面和圆环面相交不准确的问题
- 修复部分情况下快速 Hausdoff 距离计算结果不正确的问题
- 修复平面曲线偏移在部分情况下结果不正确的问题
- 修复部分情况下曲面加厚结果错误的问题
- 修复部分情况下放样结果错误的问题
- 修复部分情况下倒角失败的问题
- 修复部分情况下曲线同一平面判断错误的问题
- 修复部分情况下消除冗余拓扑结果不正确的问题
- 修复部分情况下曲线向曲面投影结果不正确的问题
- 修复部分情况下圆锥拔模结果不正确的问题
- 修复消隐功能在部分情况下出现非常长的线的问题
- 修复消隐功能丢失1阶Bezier曲线投影线的问题
- 修复消隐功能在部分情况下结果异常的问题
- 修复部分情况下多截面曲面结果不正确的问题
- 修复 NURBSAPIConicalSweep 中部分情况下扫掠曲面出现跳变的问题
- 修复 NURBSAPIConicalSweep 和 NURBSAPICircularSweep 中脊线法平面与引导线支持曲面无交线时无法构建曲面的问题
- 修复 NURBSAPISweep2 在部分情况下访问空指针的问题
- 修复了导出 Fluent_Msh 文件后网格顶点混乱的问题
- 修复部分导入 STL 生成网格失败的问题
- 修复圆、椭圆固定尺寸后求解崩溃问题
- 修复椭圆尺寸相等求解错误问题
- 修复复杂模型 logo 特征识别不准确问题
- 修复复杂模型孔特征识别不准确问题
- 修复部分导入 STEP 生成图形错误的问题
- 修复写文件流程在 BrepMode(format = 1) 下 Orientation 处理不当的问题
- 修复 Label 上所挂载的拓扑是 TopoCompound 时,GetVertexLabels/GetEdgeLabels/GetFaceLabels/GetSolidLabels 个数不正确的问题
- 修复按体附加属性,布尔结果的体相互分离时,属性不能正确挂载的问题
- 文档信息
实体建模
几何约束求解
几何清理修复
STEP文件转换
应用框架
实体建模
网格剖分
STEP 文件转换
网格处理
几何清理修复
STEP文件转换
应用框架
实体建模
网格剖分
几何约束求解
几何清理修复
STEP文件转换
IGES文件转换
应用框架
提供图片点击放大的功能
文档搜索可显示搜索范围,支持模糊搜索
应用框架模块所有接口补充中文文档,教程中新增一个示例
三维边界层教程中删除 “注:投影面暂时不能为四边形类型”
网格剖分模块相关教程中,文件输入由 STEP 格式转换 BREP 格式
修改网格处理教程中网格布尔算法示例:修改 setTriMeshAsOutput 接口的调用方式及网格输出部分
修改 STEP 文件读写教程中获取 color 的部分内容
增加 NURBSAPIConicalSweep::SweepWithTwoGuides
中,当脊线上某一点的法平面与两个参考曲面的交线在法平面与两条引导曲线的交点处的切向是平行情况下的注释;增加 MakeConic2FromConstraints 中,当输入的两个切向是平行情况下的注释
v4.9.0
- 新增功能
- 增加复杂配置下生成三维边界层
- 增加 STL 文件导入及重新网格化
- 增加识别/移除模型 Logo 的功能
- 增加识别模型圆角的功能
- 增加 FaceEditor 类中新建平面/新建 Coons 面/根据已有曲面新建面/补洞/面的定向一致化/合并面/平面切分的拓扑追踪;增加延伸面类的拓扑追踪;增加压印类中两组面间相互压印的拓扑追踪
- ExtractCanonical3DHoles 提取的孔返回上下开口边界和孔形状类型 HoleShape
- 增加 Constructive_Geometry_Representation 参考平面的实现
- 增加 Over_Riding_Styled_Item 的实现
- 增加 TopoShape 相关 Group / Layer 的实现
- 支持 Index,Name,Color属性读出
- 支持拓扑结构的输出
- 布尔操作存在属性冲突时,采用属性策略选择冲突拓扑需要的属性
- 增加一部分建模接口的带属性封装
- 性能优化
- 优化部分底层数据的调用效率
- 优化部分样条曲线包围盒的计算效率
- 优化部分点在实体内外判断的计算效率
- 优化点与实体距离计算的计算效率
- 接口变更
- 部分虚基类增加显式定义的默认复制和移动构造函数、复制和移动赋值运算符
- NURBSAPIMultiSectionsSurface 删除Error接口; 输入参数增加容差 tol,要求输入曲线的交点误差小于该容差
- json配置中 D2Delaunay,D2AFT 分别变更为 Delaunay,AFTDelaunay
- 枚举类 HoleShape 的 Cylinder 和 Cone 合并为 Canoical
- 返回孔信息的结构体 HoleMessage 中移除了 InnerLoopHole 和 BottomFaces,原 BottomFaces 的面合并到 HoleFaces
- 删除 Attribute::SetID 方法
- 删除 AttributeTool::InitDynamicAttribute 方法
- Label、WithAttrBase 类若干方法参数类型从 const Attribute& 变更为 const AttributePtr
- Label、WithAttrBase 类的 FindAllAttribute 方法出参改为函数返回
- AttributTool 类中静态方法 InitDynamicAttribute 改为非静态方法并更改参数类型
- Bug 修复
- 修复延伸拉伸面和旋转面失败的问题
- 修复部分情况下创建圆环面时参数曲线不正确的问题
- 修复部分情况下 2D 曲线插值结果错误的问题
- 修复部分情况下圆角崩溃的问题
- 修复部分情况下圆角意外抛出异常的问题
- 修复部分情况下倒角产生破面的问题
- 修复部分情况下封闭路径扫掠结果不符合预期的问题
- 修复部分情况下包围盒计算不准确的问题
- 修复部分情况下布尔运算结果不正确的问题
- 修复部分情况下偏移产生退化边的问题
- 修复部分情况下向球面投影结果不正确的问题
- 修复部分情况下多条曲线是否在同一平面判断错误的问题
- 修复部分情况下加厚单个曲面不符合预期的问题
- 修复部分情况下模型简化没有成功的问题
- 修复部分情况下曲面相交不符合预期的问题
- 修复部分情况下网格修复失败的问题
- 修复部分情况下 Transfinite 生成面网格法向错误的问题
- 修复重复固定线段导致返回错误状态的问题
- 修复过约束分析错误导致求解失败的问题
- 修复 FillHole 在部分模型中不能填补近似平面的问题
- 修复 BuildCoons 输入只有一条直线不能正常构建 Coons 曲面的问题
- 修复 DeleteFace 模型中存在实体被删除面后没有转换为壳的问题
- 修复 ExtractCanonical3DHoles 对多个模型识别信息错误/拓扑错误/少识别的问题
- 修复重建 Circle 边崩溃的问题
- 修复 CutFacesByPlane 对圆环圆锥球体部分产生错误的问题
- 修复 MergeFace 合并部分切分面失败的问题
- 修复自动缝合释放边后的 Torus 产生错误的问题
- 修复不相连的两条边创建 Coons 面和平面失败的问题
- 修复多级孔特征失败的问题
- 修复复杂模型多面孔封闭凹凸轮廓线错误的问题
- 修复复杂模型多面孔检测不全的问题
- 修复复杂模型内环孔检测不全的问题
- 修复部分情况下导入图形 Tolerance 异常的问题
- 修复部分 StepReader 的跨线程数据竞争问题
- 修复部分球面无法正确生成的问题
- 修复写流程中数值精度缺失的问题
- 修复 WithAttr <BoolBRepFuse> Solid Label 删除属性无法级联更新布尔结果的问题
- 修复 WithAttr <BoolBRepSplitter>Tools 参数为空抛异常的问题
- 修复 WithAttr <BoolBRepFuse> 不能按照给定策略保留属性的问题
- 修复通过对 Arg 的面 Label 添加属性,Fuse 结果的面没有添加属性的问题
- 修复 WithAttr <MakeCylinder> 的 Set 系列接口导致面属性丢失的问题
- 修复 Label 的 GetSolidLabels 等系列接口抛异常问题
- 修复针对Compound类型的TopoShape,WithAttr<TopoShape>转Label结构丢失导致的一系列问题
- 文档信息
- 直升机模型修复与完善示例
- 如何多次复合相同类型的变换
- 自底向上构建简单模型
网格剖分
几何清理修复
STEP文件转换
IGES文件转换
应用框架
实体建模
实体建模
网格剖分
几何清理修复
应用框架
实体建模
网格处理
网格剖分
几何约束求解
几何清理修复
STEP文件转换
IGES文件转换
应用框架
调整文档目录结构
新增三维边界层教程,修改IGES文件读写教程、附加属性教程、网格剖分教程、网格质量教程
在高级应用案例模块中新增:
v4.8.0
- 新增模块
- 提供属性系统,包括系统类型和自定义类型,用于定义需要附加在拓扑图元上的额外信息
- 提供 AMCAX::Label 数据结构用于在拓扑图元上附加属性
- 提供一组 AMCAX::WithAttr 模板类对内核建模接口,布尔操作接口进行封装
- 支持修改参数后三维模型的自动重建
- 支持对模型进行布尔操作后,根据策略对结果体/面上对应的属性进行相应的计算和级联更新
- 新增功能
- 新增数学常数
- 增加NURBSAPITweenSurface,构建几何均分曲面
- 增加NURBSAPIMultiSectionsSurface,构建多截面曲面,目前支持G1连续
- 增加NURBSAPICurveEdit,通过修改曲面上的编辑点来修改曲线(暂不支持有理曲线)
- 增加NURBSAPISurfaceEdit,通过修改曲面上的编辑曲线来修改曲面(暂不支持有理曲面)
- 支持三角形/四边形/四面体网格贴体/非贴体加密
- 支持一阶网格单元质量查询
- 高阶网格支持仅在边上生成高阶点
- 增加合并相同几何的面以及在容差内的平面、圆柱面等解析面的功能
- 增加用指定平面切分选中面的功能
- 增加提取模型封闭凹凸特征边界的功能
- 增加根据特征边提取孔的功能
- 增加移除孔的功能
- 增加 FaceEditor 中参数切分/删除面/面的反向/点边投影到面上的拓扑追踪
- 增加 StepData Shadow 节点,实现装配体中的产品复用功能
- 新增 Labels 作为导入与导出流程的数据结构
- 新增 DataCallback,导入中途提供已经完成的数据
- 接口变更
- NURBSAPIConicalSweep修改两条引导线的参数从double变为法则曲线
- BRepExtremaProximityTool添加是否只保留反向的面的选项
- 移除AMCAXStep模块依赖
- DetectTool中Extract3DHole接口名称改为ExtractCanonical3DHoles
- Create2dPerpendicular支持线与圆/椭圆/抛物线垂直约束
- StepReader – DataCallback/ Shadow 节点 / 接口规范 接口规范化,支持 Shadow 节点,新增 DataCallback
- STEP – AMCAXAf 新增 Label 支持
- 性能优化
- 优化了部分情况下点到曲面投影的计算速度
- 优化了部分情况下计算重合面的计算速度
- 优化了部分情况下Mixed/Quad网格生成速度
- Bug 修复
- 修复球面的 U 等参线定义域不符合预期的问题
- 修复部分特殊单片 B 样条曲线的连续性计算错误的问题
- 修复周期 B 样条法则曲线的参数反转结果错误的问题
- 修复周期 B 样条法则曲线的裁剪结果错误的问题
- 修复将 B 样条法则曲线设置为周期时合法性检查失败的问题
- 修复部分复杂情况下点投影到曲面错误的问题
- 修复对没有曲面的面进行复制时崩溃的问题
- 修复部分情况下生成旋转体时获取形状对应生成结果错误的问题
- 修复在一个顶点和一个环作为输入时放样失败的问题
- 修复消隐功能中,某些情况情况出现的丢失部分轮廓线的问题
- 修复MakeOffsetWire功能中,某些情况出现的崩溃、抛出不合预期的异常、获得不符合预期的结果的问题
- 修复NURBSAPIConicalSweep的两条引导线扫掠功能中,当选择曲线类型为抛物线时,某些情况会生成失败的问题
- 修复部分情况下可以移除的特征不能被正确移除的问题
- 修复部分情况下直纹面生成失败的问题
- 修复部分情况下布尔交线计算错误的问题
- 修复部分情况下重合面布尔结果不正确的问题
- 修复部分情况下平面圆相交产生重合顶点的问题
- 修复部分情况下消除隐藏线失败的问题
- 修复部分情况下简化模型结果错误的问题
- 修复部分情况下可以简化的模型没有被简化的问题
- 修复与轴平行的三角形相交判断错误的问题
- 修复3D角度相关约束求解错误问题
- 修复2D过约束分析错误问题
- 修复部分模型自动缝合崩溃的bug
- 修复部分模型自动缝合产生错误结果的bug
- 修复参数切分涉及参数曲线和边界相交时产生错误结果的bug
- 修复了部分图形数据无法被正确导入的问题
- 修复read流程中部分情况下曲线、曲面实体错误解析错误的bug
- 文档信息
应用框架
通用模块
实体建模
网格剖分
几何清理修复
STEP文件转换
实体建模
网格剖分
几何清理修复
几何约束求解
STEP文件转换
实体建模
网格剖分
实体建模
网格处理
几何约束求解
几何清理修复
STEP文件转换
IGES文件转换
添加Modeling-shapeEdit,tmeshSpline-topoOp的中文文档
新增附加属性教程和网格质量教程及example
修改Nextmesh模块和step模块的教程及其example
v4.7.0
- 新增功能
- 增加MakeOffsetWire,功能为平面Wire的偏移,支持偏移过程中拓扑结构的改变
- 在Polygon2类中增加计算顶点到平面多边形轮廓的最近距离的功能
- 增加3d圆孔的识别功能
- 增加VertexEditor和EdgeEditor中拓扑变化追踪的功能
- 增加 Mapped_Item 与相关实体的处理及支持
- 增加 IGES entity 402-1/7/14/15/16 (组相关性)相关支持
- 增加 IGES entity 106-1/2/3 (点集)相关支持
- 增加 IGES 模型单位比例应用支持,输出的TopoShape统一基于毫米进行建模
- 接口变更
- VertexEditor和EdgeEditor类中接口调用方式变更
- 删除 StepData::Shape(),StepData::PartName(),StepData::PartColor() ,StepData::Properties() 等接口
- 新增 StepData::PropertyChains() 接口
- 性能优化
- 优化在实体以直线拉伸面为主时的布尔操作性能
- 优化实体为同一实体的变换实体时的布尔操作性能
- 优化计算实体和实体最近距离其中实体为vertex时的初始化性能
- Bug 修复
- 修复部分平台和编译器的兼容性问题
- 修复 IndexSet 和 IndexMap 的自赋值安全问题
- 修复 2×2 和 3×3 特例化矩阵的 AsDiagonal 和 SetDiagonal 函数与通用矩阵表现不一致的问题
- 修复 3×3 特例化矩阵的 LeftMultiplied 函数定义错误的问题
- 修复部分平台和编译器的兼容性问题
- 修复 B 样条曲线的 IncreaseMultiplicity 函数在下标超出范围时未抛出异常而崩溃的问题
- 修复法则曲线中 B 样条曲线增加节点重数结果错误的问题
- 修复部分情况下创建无穷大模型时结果错误的问题
- 修复小尺寸模型网格化在奇异点附近的法向计算错误的问题
- 修复部分情况下平面曲线计算包围盒不正确的问题
- 修复部分情况下裁剪球面网格化错误的问题
- 修复部分情况下线段和线段相交结果类型错误的问题
- 修复部分情况下查找外轮廓崩溃的问题
- 修复部分情况下曲线和实体相交崩溃的问题
- 修复部分情况下曲线和实体相交交点数目不对的问题
- 修复部分情况下输入模型中有退化边造成简化模型崩溃的问题
- 修复部分情况系简化后模型无法正确网格化的问题
- 修复部分情况下偏移形状崩溃的问题
- 修复部分情况下布尔结果不正确的问题
- 修复部分情况下延长曲面结果不正确的问题
- 修复了四边形/直角三角形多线程生成失败的问题
- 修复沟槽形状抛物线约束精度不足的问题
- 修复部分情况存在自由度时仍求解失败的问题
- 修复部分情况下容差异常的问题
- 修复部分情况下root节点分析错误的问题
- 修复部分情况下转换矩阵重复应用问题
- 修复部分情况下实体参数域错误解析的问题
- 文档信息
实体建模
几何清理修复
STEP文件转换
IGES文件转换
几何清理修复
STEP文件转换
实体建模
通用模块
实体建模
网格剖分
几何约束求解
STEP文件转换
IGES文件转换
教程模块:修改几何清理修复和STEP模块的教程及example
升级doxygen版本到1.13.0
v4.6.0
- 新增功能
- 类IndexMap增加可就地创建的插入功能
- TopoShape 的子类的哈希值计算工具类和相等工具类
- 自动更新模型中顶点、边和面的容差功能
- 支持平面的离散边组合成多个内环和外环(ShapeAnalysisFreeBounds::FindClosedWires)
- 二阶高阶网格生成
- 支持曲率因子,狭窄因子,球/箱/圆柱形状尺寸,阈值限定等多种局部尺寸控制方式
- 延伸面直到到达指定长度或到达目标面组时停止并与目标面组合并
- 压印功能新增Modified、Generated、IsDeleted接口
- 接口变更
- 部分接口增加 constexpr 和 noexcept 关键字
- 类 BoundingRange 中的函数 IsOut(BoundingRange&) 修改为 IsOut(const BoundingRange&)
- 类 IndexSet 的 [] 运算符,类 IndexMap 的 () 运算符和 find_key(int i) 函数,类 GeneralTransformationT 和 TransformationT 中的 Value(i, j) 和 SetValue(i, j, v) 函数在下标越界时不再会抛出 OutOfRange 异常,而是会触发断言
- 类 FrameT 在三维时的构造函数 FrameT(loc, dz, dx) 在 dz 与 dx 平行时由原来会抛出异常改为不抛出异常,其结果等价于调用 FrameT(loc, dz)
- 类 MatrixT 中的函数 Invert() 和 Inverted() 在矩阵奇异的时候不会触发断言,而是会返回一个零矩阵
- 部分模板类的构造、插入和修改功能由原来的左值引用改为转发引用
- 类 IndexSet 和 IndexMap 中的 begin()/cbegin()/end()/cend() 等函数的返回值类型由 std::deque<typename map_type::iterator>::iterator/const_iterator 修改为 std::deque<typename map_type::value_type*>::iterator/const_iterator)
- 删除类 Adaptor3CurveOnSurface 中 ChangeCurve() 和 ChangeSurface() 接口
- 暂时移除类NURBSAPIApprox中的ApproxCurves接口和NURBSAPIInterpolate中的InterpolateCurves接口
- 删除NMMesh中GetAllNodes(std::vector<NMPoint3>&)、GetNodesByElementType(std::vector<Indext>&, const ElemType, const NMEntity &) 和 GetEntityElementTypes(std::vector<ElemType>&, const NMEntity&) 接口
- 性能优化
- 优化了bezier曲线的包围盒的计算效率
- 小幅优化通用Bool运算的计算效率
- MakeLoft类在处理共平面的边时会构造平面曲面而非B样条
- Bug 修复
- 修复二维变换判断手性变化错误的问题
- 修复变换在放缩为整数 0 时未抛出异常的问题
- 修复部分情况下随机出现段错误的问题
- 修复部分情况下创建双曲线时失败的问题
- 修复部分情况下双曲线相交错误的问题
- 修复部分情况下倒角失败的问题
- 修复部分情况下平面模型布尔失败的问题
- 修复部分情况下偏移形状崩溃的问题
- 修复部分情况下平面wire自相交检测失败的问题
- 修复部分情况下曲线和曲面在奇异点相交产生多个交点的问题
- 修复了空输入等部分情况下布尔运算崩溃的问题
- 修复了Extrema检测重叠面崩溃的问题
- 修复部分情况下消除隐藏线崩溃的问题
- 修复部分情况下消除隐藏线结果不对的问题
- 修复部分情况下面网格化时内部边不能保持的问题
- 修复导出FLUENT_MSH文件后单元ID混乱的问题
- 修复抛物线约束精度不足的问题
- 修复BuildCoons、BuildPlane、BuildFaceFromSurface输入edge不属于shape时崩溃的问题
- 修复部分情况下返回空Shape的问题
- 修复部分崩溃、异常
- 修复部分崩溃
- 文档信息
通用模块
实体建模
网格剖分
几何清理修复
通用模块
实体建模
网格剖分
实体建模
通用模块
实体建模
网格剖分
几何约束求解
几何清理修复
STEP文件转换
IGES文件转换
用户指南:建模基础模块新增B样条基础;补充完成几何建模模块
教程:网格剖分模块新增高阶网格;新增网格尺寸控制教程
v4.5.0
- 新增功能
- 获取包围盒对角线长度的功能
- NURBSAPIMatch::MakeCurvesFromC0ToGN() 提高相连曲线的几何连续性
- ShapeFixToolContext 用于支持模型修复功能的拓扑追踪
- 生成直角三角形网格
- 生成三角形和四边形混合网格
- 生成结构化程度不高的全四边形网格
- Transfinite方法生成结构化四边形网格
- 输出Gmsh4.1版本.msh格式文件
- 圆/椭圆/抛物线与抛物线相切约束
- 2D三次B样条曲线
- 线/圆与样条曲线相切约束
- 几何压印:一组面与另一组面创建相交线/多个shape之间相互压印
- 判断拓扑的封闭性/面的法向一致
- 对仅含2D Curve 的 TopoEdge 的导出支持
- 接口变更
- 删除类 BRepExtremaDistShapeShape 的构造函数中 flag 和 algo 两个参数,同时删除 SetFlag() 和 SetAlgo() 两个函数
- 删除类 HLRAlgorithmProjector 中的 Directions() 和 FullTransformation() 函数
- 修改类 NURBSAPIMatch 的接口 IsTrimmedEdge() 为 IsNaturalBound(),其输出结果与之前相反
- GeomAPIIntCurveCurve2 类的 Segment() 功能修改为返回重合曲线段的参数区间
- Segment(int index, std::shared_ptr <Geom2Curve>& , std::shared_ptr<Geom2Curve>&)
- ->Segment(int index, std::pair <double, double>& , std::pair<double, double>& )
- 性能优化
- 优化两个线段相交的时候的性能
- 复制面网格大多数情形下无须指定边界对应关系
- StepReader::Read() 并行加速
- Bug 修复
- 修复了部分功能抛出的异常类型不符合预期的问题
- 修复了消隐功能偶尔会抛出不符合期望的异常的问题
- 修复了部分情况下替换面不符合预期的问题
- 修复了部分情况下球面和圆弧旋转面布尔运算出错的问题
- 修复部分情况下平面曲线相交出错的问题
- 修复部分情况下点在面的内外判断出错的问题
- 修复了部分扫掠网格出现重复节点的问题
- 修复了部分复制面网格失败的问题
- 修复了线圆相切误差过大的问题
- 修复了自动缝合部分模型不符合预期的问题
- 修复导入时部分色彩数据丢失的问题
- 修复了部分情况下表达展示异常的问题
- 文档信息
- brep结构基础:获取拓扑结构中的几何、TopoShape的构建:TopoBuilder、Orientation、Tolerance、Closed
- 几何基础:参数曲线与参数曲面概论、三维参数曲线、二维参数曲线、三维参数曲面
- 几何清理修复:添加几何压印示例
通用模块
实体建模
网格剖分
几何约束求解
几何清理修复
STEP文件转换
实体建模
实体建模
网格剖分
STEP文件转换
实体建模
网格剖分
几何约束求解
几何清理修复
STEP文件转换
IGES文件转换
用户指南
教程
v.4.4.1
- 新增功能
- 新增Read接口,支持输入流读取
- 功能优化
- 优化了重合的平面face之间进行布尔运算的性能
- Bug修复
- 修复了部分情况下矩阵行列式计算错误的问题
- 修复了2D倒角和圆角中的函数在非法输入下导致崩溃的问题
- 修复了2D倒角和圆角中的函数在非法输入下生成错误结果的问题
- 修复了部分情况下2D倒角和圆角生成结果不符合预期的问题
- 修复了特定情况下WireExplorer陷入死循环的问题
- 修复了部分情况下曲线与曲面的极值点计算错误的问题
- 修复了部分情况下2D曲线相交时非法输入导致崩溃的问题
- 修复了MakeFace在部分非法输入时崩溃的问题
- 修复了部分情况下wire自相交判断错误的问题
- 修复了完全重合的2D抛物线和2D双曲线相交错误的问题
- 修复了部分情况下2D样条曲线自相交计算交点错误的问题
- 修复了部分情况下2D样条曲线相交交点错误的问题
- 修复了部分情况下复制网格错误问题
- 修复了网格增长率和最大网格尺寸设置兼容问题
- 修复了面的参数切分对圆柱、圆锥、圆环涉及顶点在seam边上切分不符合预期的问题
- 修复了点投影到带缝合边的面上生成错误结果的问题
- 修复了裁剪球体上的边,球体变形的问题
- 修复了缝合两条封闭的circle边抛异常的问题
- 修复了圆柱、圆锥seam边释放后再缝合生成错误结果的问题
- 修复了重建seam边生成错误结果的问题
- 修复部分情况下崩溃问题
- 修复部分情况下求解失败问题
- 修复部分情况下文件不按用户指定参数导出组装结构的问题
- 修复部分情况下导出时丢失拓扑结构的问题;
- 修复个别实体类型处理异常的问题
- 修复部分情况下点线未包含的情况
- 修复部分情况下B样条曲线曲面处理崩溃的问题
- 其他
IGES模块
实体建模
通用模块
实体建模
网格剖分
几何清理修复
几何约束求解器
STEP模块
IGES模块
新增用户指南
v.4.4.0
- 新增功能
- 检查wire自相交支持曲线重合检测
- 优化了BRepIntCurveSurfae中射线和平面形状的相交速度
- 增加了薄板样条曲线插值带导数的数据点
- 新增复制网格功能
- 新增几种特定的线网格剖分方式
- 新增网格单元和节点详细信息查询接口
- OBJ/STL读写添加IO流的接口
- 新增检测边的类型/孔洞自由边界的功能
- 新增补洞/构建平面/构建coons面/根据已有面构建面的功能
- 新增点投影到面上的功能
- 新增多个点根据参数/长度/比例插入边以及多个点投影到边上的功能
- 新增抛物线弧,支持点/线与抛物线约束
- 新增write接口,支持toposhape输出iges/igs文件,析构颗粒度为点线面
- 新增StepDataTool::ExtractRepresentation接口,剥离来自特定实体的几何图形
- Bug修复
- 修复部分情况下倒角崩溃的问题
- 修复部分变换后模型法向计算错误的问题
- 修复倒角、圆角、创建旋转体等功能在非法输入下未抛异常的问题
- 修复部分情况下偏移曲面上的曲线计算不准确的问题
- 修复部分情况下计算两个形状的极值崩溃的问题
- 修复部分情况下曲线曲面相交计算出错的问题
- 修复部分情况下曲线曲线相交计算出错的问题
- 修复部分情况下旋转曲面包围盒计算出错的问题
- 修复部分情况下管道功能不符合预期的问题
- 修复部分情况下简化模型无响应的问题
- 修复部分情况下布尔运算崩溃的问题
- 修复部分情况下布尔产生多余实体的问题
- 修复部分情况下显示扫掠失败的问题
- 修复多侧面情况下扫掠网格生成失败的问题
- 修复重叠面进行布尔对称差的结果错误问题
- 修复迭代进行网格细分时产生孤立点的问题
- 修复部分情况下求解失败问题
- 修复read接口对未支持实体类型直接返回false的问题
- 修复部分情况下生成无效图形的问题
- 其他
- 中文翻译:geometry(MakeGeom3Plane-SurfacesError),hatch,healing,iges,intersect,io,math(CircleT-Polygon3
- nextmesh教程新增复制网格和多种线网格剖分方式两部分,iges教程新增写的功能,几何清理修复教程新增示例二
实体建模
网格剖分
网格处理
几何清理修复
几何约束求解器
IGES模块
STEP模块
实体建模
网格剖分
网格处理
几何约束求解器
IGES
STEP模块
文档
v.4.3.0
- 新增模块
- 释放/删除/缝合点功能
- 点投影到边上/边投影到面上功能
- 根据参数/长度/比例在边上插入点功能
- 缝合/释放/合并/重建边功能
- 删除/翻转/分割面功能
- 自由边检测功能
- 新增功能
- 增加从变换到齐次变换矩阵的功能
- 增加判断裁剪曲面在U方向或V方向是否被裁剪的功能
- 增加薄板样条曲线插值功能
- 增加LawFunction转换为3维参数曲线的功能
- 新增T网格样条偏移功能
- 新增T网格样条拉伸功能
- 支持检测冗余的约束条件
- 支持椭圆弧
- 新增面向单一扫掠体生成扫掠网格功能
- 平面边界层网格支持复杂精细配置
- Bug修复 / 功能优化
- 修复了部分情况下圆角面丢失的问题
- 修复了部分情况下圆角崩溃的问题
- 修复了部分非法输入的情况下倒角和圆角崩溃的问题
- 修复了曲线与曲面平行时获取最近点崩溃的问题
- 修复了部分情况下计算模型之间最近点结果错误的问题
- 修复了包含退化曲线的模型之间最近点结果错误的问题
- 修复了部分曲面退化情况下网格法向计算会抛出异常的问题
- 修复了部分情况下网格化结果有洞的问题
- 修复了部分情况下对包含网格的模型进行一般变换的时候网格位置出错的问题
- 修复了对单方向周期曲面的非周期方向裁剪后的周期性判断错误问题
- 修复了部分情况下偏移曲面的周期性判断错误的问题
- 修复了部分接口在非法输入情况下崩溃的问题
- 修复了在部分编译环境中部分标准头文件缺失的问题
- 修复了部分情况下NURBS插值结果不符合预期的问题
- 修复了NURBSAPIConvert::ToBSpline()将偏移曲线/曲面转换成B样条类型时周期性发生改变的问题
- 修复了部分情况下偏移曲面上的曲线崩溃的问题
- 修复了部分情况下偏移曲面上的曲线时曲线缺失的问题
- 修复了部分情况下布尔运算崩溃的问题
- 修复了部分情况下布尔运算生成多余实体的问题
- 修复部分情况下计算曲线和BRep交点的法向与面法向不一致的问题
- 修复部分情况下平面曲线相交结果不正确的问题
- 修复部分情况下空间中的平行曲线被判断为同一平面曲线的问题
- 修复了部分情况下传入模型为空时崩溃的问题
- 修复部分情况下传入错误点,边,面序号导致崩溃的问题
- 修复创建基本体时传入退化参数和错误分割崩溃的问题
- 修复部分情况下输入参数为空时崩溃的问题
- 修复HalfTriMesh面面循环器错误的bug
- 修复部分情况下表面网格定向不一致问题
- 修复部分情况下Solid挖洞异常的问题
- 修复部分情况下导入直线长度、位置错误的问题
- 修复输入数值较大、较小时可能出现的崩溃问题
- 修复cmake依赖、链接中的一些问题
- 其他
- 中文翻译geometry(Geom3SurfaceLocalProperty-MakeGeom3Parabola)
- nextmesh教程添加扫掠网格,添加二维边界层和几何清理修复教程
几何清理修复 AMCAXGemoE
通用模块
实体建模
T网格样条建模
几何约束求解器
网格剖分
实体建模
T网格样条建模
几何约束求解器
网格处理
网格剖分
STEP格式转换
文档
v.4.2.0
- 新增功能
- 新增螺旋线的生成功能,支持平面螺旋线和空间螺旋线
- 新增NURBS混接曲面支持用户指定边界对应关系
- 支持NURBS转换功能对平面2D曲线进行转换
- 接口变更
- 删除函数QuaternionT::SetEulerAngles()和QuaternionT::GetEulerAngles(),删除枚举类EulerRotationOrder
- Bug修复
- 修复容差为0时的相同坐标判断不相同的问题
- 修复部分情况下直接设置变换中的矩阵时出现NaN的问题
- 修复偏移平面上的曲线在曲面上偏移效果不符合预期的问题(对于封闭曲面仍在修复中)
- 修复部分情况下曲线封闭判断错误的问题
- 修复部分情况下长度计算崩溃的问题
- 修复在曲面相交仅为曲面边界时相交失败的问题
- 修复创建圆柱,圆锥等旋转体时非法输入未抛出异常的问题
- 修复部分情况下延伸面结果不符合预期的问题
- 修复部分情况下网格法向计算错误的问题
- 修复退化情况下对网格进行渲染效果不佳的问题
- 修复部分情况下倒角崩溃的问题
- 修复部分情况下圆角崩溃的问题
- 修复部分情况下偏移曲线结果数目不正确的问题
- 修复部分情况下扫掠结果不符合预期的问题
- 修复部分情况下旋转扫掠不符合预期的问题
- 修复部分情况NURBS获取曲面失败的问题
- 修复NURBS重建接口对于非法输入崩溃的问题
- 修复部分情况下NURBS转换周期性错误的问题
- 修复部分情况下管道功能结果不符合预期的问题
- 修复了CurvatureFactor设置选项不起作用的问题
- 其他
实体建模
通用模块
通用模块
实体建模
网格剖分
文档中文翻译:geometry(Geom2CurveLocalProperty-Geom3Surface)
v.4.1.0
- 新增功能
- 新增实体直接建模的替换面功能,支持将实体中的一个面替换为另一个曲面
- 新增放样功能的算法选项,其中Sweep为之前版本的算法,Basic为新算法
- 支持检查单个face的单个wire是否自相交 (当前版本重合不判断为自相交)
- 支持检查一个形状是否包含几何
- 在GeneralTransformationT<>中 添加 ScaleFactor() 函数用于获取scale factor
- 新增 平面/3D 边界层剖分功能
- 新增带标签形状导入接口
- 接口变更
- NURBSAPICorrespondence::CalcParamCorrespondece 更改为NURBSAPICorrespondence::CalcParamCorrespondence
- QuaternionT<Scalar>::GetRulerAngles() 更改为 QuaternionT<Scalar>::GetEulerAngles()
- 修改ShapeAnalysisFreeBounds 中的 SplitWires() 和 DispatchWires() 接口为静态函数
- TMSplineThicken::ThickenTMSplins 更改为TMSplineThicken::ThickenTMSpline
- NMMesh::Write 函数增加导出文件控制参数
- Bug修复
- 修复部分情况下曲线沿法向投影到曲面失败的问题
- 修复部分情况下曲线沿方向投影到曲面失败的问题
- 修复部分情况下曲面延伸失败的问题
- 修复部分情况下曲面放样不符合预期的问题
- 修复部分情况下曲面扫掠结果不符合预期的问题
- 修复部分输入下混接曲面崩溃的问题
- 修复部分情况下创建平面圆失败的问题
- 修复部分情况下曲线相交在输入一条曲线进行自相交时失败的问题
- 修复部分情况下曲面和曲面相交失败的问题
- 修复部分接口在形状为空时直接崩溃的问题
- 修复部分情况下判断点在面上功能误差设置不起作用的问题
- 修复部分情况下网格化结果法向错误的问题
- 修复增量式重网格化方法TriMesh_IncrementalRemeshing
- 修复网格切割对部分模型切割失败的问题
- 修复3d线段求交判断部分情况失败的问题
- OBJ读写添加对MTL材质文件、分组信息等支持
- 修复部分模型网格光滑时出现NaN数值计算问题
- 其他
实体建模
网格剖分
实体建模
T网格样条建模
网格剖分
实体建模
网格处理
文档中文翻译:common(PointT-VectorT)、fillet、geomAlgo、geometry(Adaptor2Curve-Geom2Curve)
v.4.0.2
- 新增功能
- IO:导入STEP文件、输出OBJ/VTK/Fluent-Msh文件
- 网格类型:线网格、三角形面网格、四面体网格
- 剖分参数:全局/局部尺寸、增长率
- 辅助功能:接触面对判断、面组定义
- 新增曲线曲面检查边缘几何连续性的功能 NURBSAPICheckContinuity
- 新增判断一组曲线是否在同一平面的功能 GeometryTool::IsPlanarCurves
- 接口变更
- NURBSAPIRebuild 中相关删除冗余的参数IsForceNonRational,该参数是否设置生成结果均为非有理
- NURBSAPIRebuild 所有指定节点重数的api删除控制的数目这一冗余参数
- Bug修复
- 修复曲面创建建模相关接口在遇到非法输入时会崩溃的问题
- 修复了部分情况下特征移除移除额外特征的问题
- 修复了部分情况下射线和实体相交崩溃的问题
- 修复了部分情况下网格化失败的问题
- 修复了部分情况下将曲线法向投影到曲面结果不符合预期的问题
- 修复了部分情况下填充曲面不符合预期的问题
- 修复了部分情况下单轨扫掠曲面不符合预期的问题
- 修复部分情况下平行扫掠不符合预期的问题
- 修复了部分情况下放样崩溃的问题
- 修复了部分情况下通过控制网的曲面不符合预期的问题
- 修复部分情况下 Composite_Curve 无法正常读写的问题
- 修复部分情况下旋转面读取不正确的问题
- 其他
新增网格剖分模块(AMCAXNextMesh)
实体建模
实体建模
实体建模
STEP文件读写
文档中文翻译(部分)
v.4.0.1
- 新增功能
- 支持判断一条曲线是否是平面曲线
- 支持计算曲线的长度和到曲线起点给定弧长的点
- 样条曲线插值支持插值带有梯度的数据点
- 支持曲面建模中的缝合操作,将具有重合边的face缝合成一个shell
- 通过 StepOptions 类,为 StepMeshReader 的网格化的多线程支持提供开关
- 提供新的对纯四边形和三角网格的细分接口,结果仅保留点面信息
- 接口变更
- NURBSAPIMatch类中删除MatchSurf和MatchFace的最后一个参数
- NURBSAPIRebuild::RebuildSurface删除指定uv次数、节点向量、重数和误差的重载接口
- SubD模块中类MeshSubdiveHE变更为MeshSubdivideHE
- Bug修复
- 修复了部分情况下样条扫掠不符合预期的问题
- 修复了部分情况下样条放样不符合预期的问题
- 修复了部分情况下样条延长不符合预期的问题
- 修复了部分情况下通过曲线网的曲面错误的问题
- 修复了部分功能在曲线,曲面次数较高(>=11)时崩溃的问题
- 修复了部分情况下 B 样条曲线升阶错误的问题
- 修复部分情况下曲面匹配不符合预期的问题
- 修复了部分情况下直纹面,拉伸面和样条面相交崩溃的问题
- 修复了部分情况下实体布尔结果不正确的问题
- 修复了部分情况下倒角结果不正确的问题
- 修复了部分情况下求最近距离崩溃的问题
- 修复了部分情况下网格化崩溃的问题
- 修复椭圆端点约束不符预期的 bug
- 修复读取 Trimmed_Curve 时部分崩溃问题
- 修复110类型已知缺陷,优化相关数据结构
实体建模
STEP 文件读写
细分建模
实体建模
细分建模
实体建模
几何约束求解器
STEP文件读写
IGES文件读写
v.4.0.0
- 新增功能
- 支持几何体导入
- 支持针对图形的重心、密度等属性信息
- 提供面向StepMeshReader的工具函数
- 支持NURBS曲面建模,提供以下功能
单轨扫掠、双轨扫掠、显式扫掠、直线扫掠、圆弧扫掠、二次曲线扫掠、旋转扫掠、放样、多导轨放样、重建、组合、炸开、裁剪、取消裁剪、混接、衔接、延长、拟合、插值、转换、Coons 曲面、曲线构建、从曲面边界构建曲面、在曲面上偏移、替换边缘、构建曲线对应关系 - 添加两个基本体:直角棱柱和棱锥
- 优化了射线和 BRep 求交的性能
- 添加网格切割功能
- 添加网格双射参数化功能
- 接口变更
- MakeBox 类中删除了函数 FrontFace()、BackFace()、LeftFace()、RightFace()、TopFace()、BottomFace(),增加了函数 XMinFace()、XMaxFace()、YMinFace()、YMaxFace()、ZMinFace()、ZMaxFace()
- Bug修复
- 修复了部分情况下圆环面创建不符合预期的问题
- 修复部分情况下无限大平面和曲面相交失败的问题
- 修复部分情况下点和边的关系判断错误的问题
- 修复默认构造的部分几何曲线曲面调用算法崩溃的问题
- 修复了部分情况下布尔运算失败的问题
- 修复了部分情况下偶发内存泄漏的问题
- 修复了 BRepExtremaDistShapeShape 在部分情况下发生崩溃的问题
- 修复了 BRepClassificationTools::IsSolidBounded() 在部分情况下发生崩溃的问题
- 修复了在部分情况下 MakeBox 重新初始化错误的问题
- 减少网格修复算法在大模型上的内存消耗
- 修复部分情况下颜色等信息无法获取的问题
- 麒麟桌面操作系统 v10 版
IGES 文件导入
STEP 文件读写
实体建模
网格处理
实体建模
实体建模
网格处理
STEP 文件读写
v.3.6.2
- 新增功能
- 计算重合面的功能
- 计算相交面的功能
- 计算最大距离的功能
- 接口及头文件变更
- 删除 2D Frame 的 Direction() 和 Axis() 接口,避免引起歧义
- 删除所有 2D 基本几何对象类相对 2D Frame 的镜像变换
- 二次曲线相关类中删除 Parameter() 并新增 FocalParameter() 和 SemilatusRectum() 接口
- 重构基本曲线曲面相关类,使共有功能的表现一致,接口的调用方式不变
- 删除所有 2D 基本曲线曲面相对 2D Frame 的镜像变换
- Bug修复
- 修复部分头文件的多重包含问题
- 修复退化二次曲线的离心率计算未抛出异常的问题
- 修复点在退化二次曲线上的判断错误的问题
- 修复部分情形下周期 B 样条曲线判断成不封闭曲线的问题
- 修复部分情形下进行圆角操作导致崩溃的问题
- 修复部分情形下圆角结果错误的问题
- 修复部分情形下 UnifySameDomain 崩溃的问题
- 修复部分特殊情形下球面和环面布尔运算结果错误的问题
- 修复两个以上网格计算布尔交线不正确的问题
- 修复无法导出游离 Vertex 的问题
- 修复导出的 B 样条曲线与其他程序兼容性较差的问题
- 修复 StepMeshReader 部分情况下数据不完整的问题
- 公开示例代码仓库(gitee和 github)
实体建模
Common 模块
实体建模
实体建模
网格处理
STEP 文件读写
v.3.6.1
- Linux 版本公开发布, 支持 Ubuntu 22.04 LTS / GCC 11.4
- 新增功能
- 面延伸功能
- 移除特征功能
- 判断平面或曲面功能(GeometryTool::IsPlanarSurface)
- 增加判断点在曲线内部或边界上的接口(BRepClassificationTools::IsPointInOnFace)
- 增加网格布尔保留原始面片信息的功能
- 增加网格布尔计算交线功能
- 增加增量式重新网格化功能
- 接口及头文件变更
- 强化颜色、实体名称的导入、导出
- StepDataTool::ApplyTrsf/Flatten 拆分为 ApplyTrsf+ApplyTrsfInplace 与 Flatten+FlattenInplace
- STEP转三角网格接口整合,零件名称、颜色的匹配,加载进度汇报
- MeshBoolean添加获取原始面片信息与网格交线的接口
- Bug修复
- 修复各模块在 Linux 环境下的兼容性问题
- 修复了某些情况下计算边的长度时崩溃的问题
- 修复了 Bézier 曲面等参线计算会崩溃的问题
- 修复了 Bézier 曲面网格化结果错误的问题
- 修复了某些特殊的 B 样条曲线计算出现 NaN 的问题
- 修复了在某些情况下倒角出现崩溃和不正确结果的问题
- 修复了在特定情形下对模型进行变换的时候曲线信息丢失的问题
- 修复了在特定情形下球体和球体布尔运算错误的问题
- 修复了在特定情形下MakePipeShell构造异常的问题
- 修复形状创建和边界细分的bug
- 修复形状创建中的bug
- 修复平行/垂直约束中的bug
实体建模
网格处理
STEP 文件读写
网格处理
所有模块
实体建模
多边形细分网格建模
T网格样条建模
约束求解器
v3.6.0
- 新增功能
- 支持网格求交、网格布尔功能
- 支持网格修复功能
- 支持网格拉伸功能
- 支持网格简化和网格细分功能
- 支持网格文件读写(OBJ, STL)
- 新增2D约束求解功能
- 提供新的API:BRepFaceClassifier,BRepSolidClassifier,用于对不会更改的形状进行多次内外判断,性能明显提升
- 添加获取实体外轮廓的函数 ShapeAnalysisTool::OuterShell()
- 提供一个新API用于获取bool后的简化结果
- 提供MakePipeShell中的模式设置,支持随曲线标架运动和仅平移
- 在MeshTool中添加获取和更新法向接口
- 在MeshTool中添加遍历接口
- 在TMSplineTool中添加获取和更新法向接口
- 在TMSplineTool中添加遍历接口
- 提供STEP转Mesh的接口
- 在StepDataTool中添加读取和导出接口
- Bug修复
- 修复创建旋转面错误的bug
- 修复创建2D圆弧错误的bug
- 修复其他部分bugs
- 修复部分文件无法读取的问题
- 接口及头文件变更
- 原mesh文件夹重命名为topomesh
- TMSplineAdd.hpp重命名为TMSplineAddFace.hpp
- TMSplineBridge.hpp重命名为TMSplineBridgeEdge.hpp
- 修改TMSplineCheck的返回值为bool类型
- MeshTools.hpp重命名为MeshTool.hpp
网格处理(新模块)
几何约束求解器
实体建模
多边形细分网格建模
T网格样条建模
STEP文件读写
实体建模
STEP文件读写
实体建模
T网格样条建模
多边形细分网格建模
v3.5.2
- Bug修复
- 修复了在继承CoordT类时,operator*在模板推断时的错误问题
- 将异常处理中的一些宏替换为了函数,以减少宏的使用,避免冲突
- 修复了使用MakeEdge2d创建的边在MakeWire之后崩溃的问题
- 修复了MeshCopy返回值错误的问题
- 在MeshTool中添加部分网格法向相关的接口
- 接口更新
- 去除无效参数,增强输入参数有效性检查
- 新增接口,支持完整Product树状信息、零件装配信息、子Shape命名与颜色信息
- 更正为默认不导出接口函数定义
- 性能提升
- 提升了IsPointInSolid判断的计算速度
AMCAXCommon模块
AMCAXPart模块
AMCAXSubD模块
AMCAXOCCTIO
AMCAXStep
AMCAXGCS
AMCAXPart
v3.5.1
- 新增AMCAXOCCTIO模块,提供Open CASCADE的BREP数据格式导入和导出
- 提供CMake Config模块,可供使用者利用CMake config功能配置AMCAX依赖
- 性能优化和Bug fix
- 修复了BrepIntCurveSurface类PerformFirstPoint不是第一个交点的问题,提供PerformIsIntersection判断曲线是否与Brep相交,优化了单个BRep进行多次曲线计算的性能
- 优化了B样条相关的计算和计算极值方面的性能
- 优化了计算曲面包围盒的性能
- 优化了复杂形状网格化的性能
- 修复对于部分曲面网格化失败的问题
- 修复了部分情况下镜像失败的问题
- 修复了部分情况下读取OBJ缺少面的问题
- 修复了导出精度较低的问题,修复了导出重复曲线、顶点的问题
- 修复了STEP导入部分的组装、装配问题,修复了重合曲线、顶点无法正常合并的问题,修复了部分情况下Solid外翻的问题,修复了部分情况下B样条曲线、曲面无法正确闭合的问题,修复了部分实体输出错误、崩溃的问题
- 显著提升STEP文件导入性能
AMCAXPart模块
AMCAXStep模块
v3.5.0
- 新增STEP文件读写
- 新增多边形网格细分建模和T网格样条建模,支持以下功能:
- 基本体构建:平面矩形、方体、圆柱体、圆锥体、圆台、球体、环面等
- 基本编辑功能:遍历、添加、细化、删除、分离、缝合、特征等
- 拓扑建模功能:变换、拉伸、加厚、补洞等
- 网格细分,OBJ、OFF文件导入和导出(限多边形网格细分建模)
- 网格化和导出OBJ文件(限T网格样条建模)
- AMCAXPart模块:
- 新增BoolBRepSection 支持相交线提取
- 新增BoolBRepSplitter 支持对形状进行分割
v3.3.0
2023-12-07
- 新增几何约束求解器。支持三维空间中点与点、线、面距离约束,面与线、面距离约束,平行线距离约束以及向量夹角约束
- 优化降低了网格化结果的平均网格密度
AMCAXPart模块:
v3.2.3
2023-11-28
- 发布AMCAXCommon模块:提供常用的基本类,如点,向量,包围盒等
- 发布AMCAXPart模块:包含以下功能模块:
- 提供3D对象边界表示(Brep)的数据结构
- 曲线和曲面构造,求值
- 通过插值和近似创建参数化曲线和曲面
- 2D曲线相交,曲线曲面相交和曲面曲面相交
- 计算几何对象之间的极值
- 支持创建基本形状(方盒,圆柱,圆锥,球,圆环)
- Brep的几何变换
- 拉伸创建功能
- 旋转创建功能
- pipe管道功能
- 放样操作
- Bool运算功能(包括Fuse,Common,Cut)
- 倒圆角和倒斜角功能(支持可变半径)
- 形状偏移功能
- 形状加厚功能
- 消除隐藏线功能
- 从Brep构建三角网格表面算法并存储
- 导出文件(STL,OBJ)