BIMHome v1.0.0
BIMHome接口文档说明
| 类型定义 | 枚举 | 函数
Base 命名空间参考

class  AbstractProducer
 抽象生产者类 更多...
 
class  ArcofCircle
 
class  ArcofCircle2D
 
class  ArcofEllipse
 
class  ArcofEllipse2D
 
class  Axis
 Axis 类,用于表示三维空间中的轴 更多...
 
class  Axis2
 Axis2 类,用于表示三维空间中的二维坐标系 更多...
 
class  BezierCurve
 
class  BezierCurve2D
 
class  BitsetLocker
 一个用于锁定位集状态的工具类 更多...
 
class  Block
 
class  Block2D
 
class  BoundBox2d
 二维轴对齐包围盒(AABB)实现 更多...
 
class  BSplineCurve
 
class  BSplineCurve2D
 
class  CalcIntersectionPoint
 CalcIntersectionPoint 类,用于计算几何图形的交点 更多...
 
class  Calculate
 提供各种数学计算和转换功能的工具类 更多...
 
class  Circle
 
class  Circle2D
 
class  ConnectionBlocker
 一个用于阻塞信号连接的工具类 更多...
 
class  ConsoleObserverFile
 日志文件观察者类 更多...
 
class  ConsoleObserverStd
 标准控制台观察者类 更多...
 
class  ConsoleRefreshDisabler
 禁用控制台刷新的工具类 更多...
 
class  ConsoleSingleton
 控制台类 更多...
 
class  CoordinateSystem
 描述三维空间中的右手坐标系 更多...
 
class  Curve
 
class  Curve2D
 
class  DualNumber
 对偶数(Dual Numbers)类 更多...
 
class  DualQuat
 DualQuat 类表示一个对偶四元数,即由对偶数分量组成的四元数。 更多...
 
class  Ellipse
 
class  Ellipse2D
 
class  Factory
 工厂类 更多...
 
class  FileInfo
 File name unification This class handles everything related to file names the file names are internal generally UTF-8 encoded on all platforms. 更多...
 
class  FileWriter
 FileWriter 类,用于将数据写入文件 更多...
 
struct  FlagToggler
 一个用于切换标志状态的工具类 更多...
 
struct  float_traits
 提供浮点数类型的特性 更多...
 
struct  float_traits< double >
 提供 double 类型的特性 更多...
 
struct  float_traits< float >
 提供 float 类型的特性 更多...
 
class  Geometry
 
class  Geometry2D
 
class  GeometryCalculate
 提供几何对象的指针转换和几何变换功能的工具类 更多...
 
class  GeometryUtility
 提供几何对象的归一化和几何列表操作的工具类 更多...
 
class  gzstreambase
 压缩文件流基类 更多...
 
class  gzstreambuf
 压缩文件流缓冲区 更多...
 
class  Hatch
 
class  Hatch2D
 
class  Hyperbola
 
class  Hyperbola2D
 
class  igzstream
 压缩文件输入流类 更多...
 
class  ILogger
 日志接口类 更多...
 
struct  iotaGen
 生成连续递增的值 更多...
 
class  IShape
 IShape 接口类,定义了形状的基本操作 更多...
 
class  Line
 
class  Line2D
 
class  LineSegment
 
class  LineSegment2D
 
class  LinkedHashMap
 链式哈希映射表 更多...
 
class  LogLevel
 日志级别辅助类 更多...
 
class  manipulator
 自定义流操作符 更多...
 
class  Matrix4D
 Matrix4D 类,表示一个 4x4 矩阵 更多...
 
class  NURBSCurve
 
class  NURBSCurve2D
 
class  ObjectStatusLocker
 一个用于锁定对象状态的工具类 更多...
 
class  ogzstream
 压缩文件输出流类 更多...
 
class  Parabola
 
class  Parabola2D
 
class  Placement
 Placement 类,表示三维空间中的位置和旋转 更多...
 
class  Point
 
class  Point2D
 
class  PolyLine
 
class  PolyLine2D
 
class  Quantity
 Quantity 类,表示一个具有单位的数值 更多...
 
struct  QuantityFormat
 QuantityFormat 结构,用于定义数量的格式化选项 更多...
 
class  Reader
 Reader 类,用于封装输入流并提供文件相关信息 更多...
 
class  RedirectStdError
 标准错误重定向类 更多...
 
class  RedirectStdLog
 日志输出重定向类 更多...
 
class  RedirectStdOutput
 标准输出重定向类 更多...
 
class  Rotation
 
class  ScriptFactorySingleton
 脚本工厂单例 更多...
 
class  ScriptProducer
 脚本生产者类 更多...
 
class  StateLocker
 一个用于锁定布尔状态的工具类 更多...
 
class  StopWatch
 一个简单的计时器类,用于测量时间间隔 更多...
 
class  StringWriter
 StringWriter 类,用于将数据写入字符串流 更多...
 
class  TimeInfo
 TimeInfo 类,用于表示时间信息 更多...
 
struct  Tools
 提供各种工具函数的工具类 更多...
 
struct  Tools2d
 提供各种工具函数的工具类 更多...
 
class  Uuid
 Uuid 类,用于创建和管理通用唯一标识符(UUID) 更多...
 
struct  vec_traits
 向量特性模板结构 更多...
 
struct  vec_traits< Rotation >
 Rotation 提供特性 更多...
 
struct  vec_traits< Vector3d >
 为 Vector3d 提供特性 更多...
 
struct  vec_traits< Vector3f >
 为 Vector3f 提供特性 更多...
 
class  Vector2d
 Vector2d 类,表示二维空间中的向量 更多...
 
class  Vector3
 Vector3 类,表示三维空间中的向量 更多...
 
class  Writer
 Writer 类,用于处理持久化对象的存储和检索 更多...
 
class  XMLReader
 XML 读取器类 这是 BIMHome 中对象存储和检索系统的一个重要辅助类。 这些类主要继承自 App::Persistence 基类,并实现了 Restore() 方法。 更多...
 
class  ZipWriter
 ZipWriter 类,用于处理 ZIP 文件的写入操作 更多...
 

类型定义

typedef Vector3< double > Vector3d
 定义一个基于 double 的三维向量类型
 
typedef Vector3< float > Vector3f
 定义一个基于 float 的三维向量类型
 

枚举

enum class  Geometry2DType {
  None , Point , Curve , Line ,
  LineSegment , PolyLine , Circle , Ellipse ,
  Arc , EllipseArc , BSplineCurve , Hyperbola ,
  BezierCurve , Parabola , NURBS , Surface ,
  Plane , BezierSurface , BSplineSurface , ConicalSurface ,
  CylindricalSurface , SphericalSurface , LinearExtrusionSurface , RevolutionSurface ,
  SweepSurface , OffsetSurface , OsculatingSurface , BoundedSurface ,
  Cone , Cylinder , Hatch , Block
}
 
enum class  GeometryType {
  None , Point , Curve , Line ,
  LineSegment , PolyLine , Circle , Ellipse ,
  Arc , EllipseArc , BSplineCurve , BezierCurve ,
  NURBS , Parabola , Hyperbola , Surface ,
  Plane , BezierSurface , BSplineSurface , ConicalSurface ,
  CylindricalSurface , SphericalSurface , LinearExtrusionSurface , RevolutionSurface ,
  SweepSurface , OffsetSurface , OsculatingSurface , BoundedSurface ,
  Cone , Cylinder , Hatch , Block
}
 
enum class  LogStyle { Warning , Message , Error , Log }
 用于标识日志级别 更多...
 
enum class  ScaleType {
  Other = -1 , NoScaling = 0 , NonUniformRight = 1 , NonUniformLeft = 2 ,
  Uniform = 3
}
 ScaleType 用于区分矩阵是否包含缩放成分,以及缩放的类型 更多...
 

函数

std::string BaseExport base64_decode (std::string const &s)
 对Base64编码的字符串进行解码
 
std::string BaseExport base64_encode (unsigned char const *data, unsigned int len)
 对数据进行Base64编码
 
manipulator< int > blanks (int n)
 创建一个插入空格的流操作符
 
std::ostream & blanksN (std::ostream &os, int n)
 在输出流中插入指定数量的空格
 
template<class T >
T clamp (T num, T lower, T upper)
 将数值限制在指定范围内
 
ConsoleSingletonConsole ()
 获取控制台实例
 
template<class _Vec1 , class _Vec2 >
_Vec1 convertTo (const _Vec2 &v)
 转换向量
 
template<class _Precision >
_Precision Distance (const Vector3< _Precision > &v1, const Vector3< _Precision > &v2)
 计算三维空间中两个点之间的欧几里得距离
 
template<class _Precision >
_Precision DistanceP2 (const Vector3< _Precision > &v1, const Vector3< _Precision > &v2)
 计算两个向量之间的欧几里得距离的平方
 
template<class T >
T fmod (T numerator, T denominator)
 计算模运算结果,确保结果为非负数
 
FC_DURATION GetDuration (FC_TIME_POINT &t)
 
template<class _Vec , typename float_type >
_Vec make_vec (const std::tuple< float_type, float_type, float_type > &&t)
 创建向量
 
template<class _Vec , typename float_type >
_Vec make_vec (const std::tuple< float_type, float_type, float_type, float_type > &&t)
 创建向量
 
template<class _Precision >
Vector3< _Precision > operator* (_Precision fFac, const Vector3< _Precision > &rcVct)
 实现标量与向量的乘法
 
DualNumber operator* (double a, DualNumber b)
 将对偶数与实数相乘
 
DualQuat operator* (double a, DualQuat b)
 实现一个 double 类型的标量与 DualQuat 对象的乘法运算
 
Vector2d operator* (double c, const Vector2d &v)
 
DualNumber operator* (DualNumber a, double b)
 将对偶数与实数相乘
 
DualNumber operator* (DualNumber a, DualNumber b)
 将两个对偶数相乘
 
DualQuat operator* (DualNumber a, DualQuat b)
 实现 DualNumber 对象与 DualQuat 对象的乘法运算
 
DualQuat operator* (DualQuat a, double b)
 实现 DualQuat 对象与一个 double 类型的标量的乘法运算
 
DualQuat operator* (DualQuat a, DualNumber b)
 实现 DualQuat 对象与 DualNumber 对象的乘法运算
 
DualQuat operator* (DualQuat a, DualQuat b)
 实现两个 DualQuat 对象的乘法运算
 
Vector3foperator*= (Vector3f &rclVect, const Matrix4D &rclMtrx)
 
DualNumber operator+ (double a, DualNumber b)
 将实数与对偶数相加
 
DualNumber operator+ (DualNumber a, double b)
 将对偶数与一个实数相加
 
DualNumber operator+ (DualNumber a, DualNumber b)
 将两个对偶数相加
 
DualQuat operator+ (DualQuat a, DualQuat b)
 实现两个 DualQuat 对象的加法运算
 
DualNumber operator- (double a, DualNumber b)
 将实数与对偶数相减
 
DualNumber operator- (DualNumber a, double b)
 将对偶数与实数相减
 
DualNumber operator- (DualNumber a, DualNumber b)
 将两个对偶数相减
 
DualQuat operator- (DualQuat a, DualQuat b)
 实现两个 DualQuat 对象的减法运算
 
DualNumber operator/ (DualNumber a, double b)
 将对偶数与实数相除
 
DualNumber operator/ (DualNumber a, DualNumber b)
 将两个对偶数相除
 
DualNumber pow (DualNumber a, double pw)
 计算对偶数的幂
 
ScriptFactorySingletonScriptFactory ()
 获取脚本工厂实例
 
template<class T >
T sgn (T t)
 获取数值的符号
 
manipulator< int > tabs (int n)
 创建一个插入制表符的流操作符
 
std::ostream & tabsN (std::ostream &os, int n)
 在输出流中插入指定数量的制表符
 
template<class T >
T toDegrees (T r)
 将弧度值从弧度转换为度
 
template<class T >
T toRadians (T d)
 将角度值从度转换为弧度
 
template<class _Pr1 , class _Pr2 >
Vector3< _Pr1 > toVector (const Vector3< _Pr2 > &v)
 将一个类型为 _Pr2 的 Vector3 对象转换为另一个类型为 _Pr1 的 Vector3 对象