更新日志
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)