AMCAX Kernel
Geometry kernel for CAD/CAE/CAM
九韶内核 1.0.0.0
载入中...
搜索中...
未找到
AMCAX::MakeLoft类 参考

构造放样形状的类 更多...

#include <offset/MakeLoft.hpp>

类 AMCAX::MakeLoft 继承关系图:
AMCAX::MakeLoft 的协作图:

Public 成员函数

AMCAX_API MakeLoft (bool isSolid=false, bool ruled=false, double pres3d=1.0e-06)
 根据参数构造放样形状
 
AMCAX_API void Init (bool isSolid=false, bool ruled=false, double pres3d=1.0e-06)
 初始化放样参数
 
AMCAX_API void AddWire (const TopoWire &wire)
 添加环
 
AMCAX_API void AddVertex (const TopoVertex &v)
 添加顶点
 
AMCAX_API void CheckCompatibility (bool check=true)
 设置是否检查兼容性
 
AMCAX_API void SetSmoothing (bool useSmoothing)
 设置拟合过程中是否进行光顺处理
 
AMCAX_API void SetParType (ApproxParameterizationType parType)
 设置参数化类型
 
AMCAX_API void SetContinuity (ContinuityType c)
 设置拟合中的连续性类型
 
AMCAX_API void SetCriterionWeight (double w1, double w2, double w3)
 设置拟合优化中的权重系数
 
AMCAX_API void SetMaxDegree (int maxDeg)
 设置放样曲面 U 方向上的最大次数
 
AMCAX_API ApproxParameterizationType ParType () const
 获取参数化类型
 
AMCAX_API ContinuityType Continuity () const
 获取拟合中连续性类型
 
AMCAX_API int MaxDegree () const
 获取放样曲面 U 方向上的最大次数
 
AMCAX_API bool UseSmoothing () const
 获取是否启用光顺处理的标志
 
AMCAX_API void CriteriumWeight (double &w1, double &w2, double &w3) const
 获取拟合优化中的权重系数
 
AMCAX_API void Build () override
 执行算法
 
AMCAX_API const TopoShapeFirstShape () const
 获取实体底部形状
 
AMCAX_API const TopoShapeLastShape () const
 获取实体顶部形状
 
AMCAX_API TopoShape GeneratedFace (const TopoShape &Edge) const
 如果是 ruled 模式,获取由边生成的面
 
AMCAX_API void SetMutableInput (bool isMutableInput)
 设置输入形状是否可被修改
 
AMCAX_API const std::list< TopoShape > & Generated (const TopoShape &S) override
 获取给定形状衍生的子形状列表
 
AMCAX_API const std::list< TopoShape > & Wires () const
 获取输入环
 
- Public 成员函数 继承自 AMCAX::MakeShape
virtual ~MakeShape ()=default
 析构函数
 
virtual AMCAX_API bool IsDone () const
 判断构造算法是否完成
 
virtual AMCAX_API const TopoShapeShape ()
 获取结果形状
 
AMCAX_API operator TopoShape ()
 获取结果形状
 
virtual AMCAX_API const std::list< TopoShape > & Modified (const TopoShape &s)
 获取给定形状修改后的形状列表
 
virtual AMCAX_API bool IsDeleted (const TopoShape &s)
 判断给定形状是否被删除
 

额外继承的成员函数

- Protected 成员函数 继承自 AMCAX::MakeShape
 MakeShape ()=default
 默认构造函数
 
void Done ()
 将状态设为已完成
 
void NotDone ()
 将状态设为未完成
 
- Protected 属性 继承自 AMCAX::MakeShape
TopoShape shape
 结果形状
 
std::list< TopoShapegenerated
 生成的子形状列表
 

详细描述

构造放样形状的类

创建通过一系列输入形状的壳体或实体。 仅首尾形状可退化为顶点,其余必须是非退化的拓扑环(无需共面或边数相同)。 构造步骤:

  1. MakeLoft(): 设置参数
  2. AddWire()或AddVertex(): 添加输入形状
  3. Build(): 执行构造

构造及析构函数说明

◆ MakeLoft()

AMCAX_API AMCAX::MakeLoft::MakeLoft ( bool isSolid = false,
bool ruled = false,
double pres3d = 1.0e-06 )
explicit

根据参数构造放样形状

参数
isSolid实体或壳体
ruled如果为 true ,则忽略曲面光滑度和截面法向,生成可展曲面; 如果为 false ,则考虑曲面光滑度和截面法向,并通过拟合光顺结果(这可能会导致结果形状不完全通过截面)
pres3d拟合容差

成员函数说明

◆ AddVertex()

AMCAX_API void AMCAX::MakeLoft::AddVertex ( const TopoVertex & v)

添加顶点

参数
v顶点

◆ AddWire()

AMCAX_API void AMCAX::MakeLoft::AddWire ( const TopoWire & wire)

添加环

参数
wire

◆ Build()

AMCAX_API void AMCAX::MakeLoft::Build ( )
overridevirtual

执行算法

重载 AMCAX::MakeShape .

◆ CheckCompatibility()

AMCAX_API void AMCAX::MakeLoft::CheckCompatibility ( bool check = true)

设置是否检查兼容性

使各环具有相同边数,并且计算封闭环的起点和方向以避免扭曲结果

◆ CriteriumWeight()

AMCAX_API void AMCAX::MakeLoft::CriteriumWeight ( double & w1,
double & w2,
double & w3 ) const

获取拟合优化中的权重系数

参数
[out]w1长度权重
[out]w2曲率权重
[out]w3挠率权重

◆ Generated()

AMCAX_API const std::list< TopoShape > & AMCAX::MakeLoft::Generated ( const TopoShape & s)
overridevirtual

获取给定形状衍生的子形状列表

参数
s给定形状
返回
生成的新形状列表

重载 AMCAX::MakeShape .

◆ Init()

AMCAX_API void AMCAX::MakeLoft::Init ( bool isSolid = false,
bool ruled = false,
double pres3d = 1.0e-06 )

初始化放样参数

参数
isSolid实体或壳体
ruled如果为 true ,则忽略曲面光滑度和截面法向,生成可展曲面; 如果为 false ,则考虑曲面光滑度和截面法向,并通过拟合光顺结果(这可能会导致结果形状不完全通过截面)
pres3d拟合容差

◆ SetContinuity()

AMCAX_API void AMCAX::MakeLoft::SetContinuity ( ContinuityType c)

设置拟合中的连续性类型

参数
c连续性类型

◆ SetCriterionWeight()

AMCAX_API void AMCAX::MakeLoft::SetCriterionWeight ( double w1,
double w2,
double w3 )

设置拟合优化中的权重系数

参数
w1长度权重
w2曲率权重
w3挠率权重

◆ SetMaxDegree()

AMCAX_API void AMCAX::MakeLoft::SetMaxDegree ( int maxDeg)

设置放样曲面 U 方向上的最大次数

参数
maxDeg放样曲面 U 方向上最大次数

◆ SetMutableInput()

AMCAX_API void AMCAX::MakeLoft::SetMutableInput ( bool isMutableInput)

设置输入形状是否可被修改

参数
isMutableInput输入形状是否可被修改的标志

◆ SetParType()

AMCAX_API void AMCAX::MakeLoft::SetParType ( ApproxParameterizationType parType)

设置参数化类型

参数
parType拟合处理中使用的参数化类型

◆ SetSmoothing()

AMCAX_API void AMCAX::MakeLoft::SetSmoothing ( bool useSmoothing)

设置拟合过程中是否进行光顺处理

参数
useSmoothing是否进行光顺处理

该类的文档由以下文件生成: