BIMHome v1.0.0
BIMHome接口文档说明
静态 Public 成员函数 | 所有成员列表
MeasurementTool类 参考

#include <MeasurementTool.h>

静态 Public 成员函数

static void checkSolidsCollision (const std::vector< App::IDocumentObject * > &selectionSolids, std::vector< App::IDocumentObject * > &collisionSolids, double precision=0.0)
 根据给定精度和选中的对象列表检查当前文档中的碰撞对象列表
 
static void getCollisionSolids (const std::vector< App::IDocumentObject * > &inputSolids, std::vector< App::IDocumentObject * > &collisionSolids, double precision=0.0)
 根据给定精度获取一个形体对象集合中的碰撞对象列表
 
static void getCurrentDocumentVisibleSolids (const char *name, std::vector< App::IDocumentObject * > &resultObjs)
 获取某一类型的App::DocumentObject*列表
 
static double getCurve2dLength (std::shared_ptr< Base::Curve2D > curve)
 获取二维曲线的长度
 
static double getCurve2dsLength (const Base::PolyLine2D &curve)
 获取二维多段线的总长度
 
static double getCurveLength (std::shared_ptr< Base::Curve > curve)
 获取曲线的长度
 
static double getCurveLength (std::vector< App::IDocumentObject * > &curveObjs)
 测量曲线的长度
 
static double getCurvesLength (const Base::PolyLine &curve)
 获取多段线的总长度
 
static double getFaceArea (std::vector< App::IDocumentObject * > &faceObjs)
 获取形体的面积
 
static Base::Vector3d getFaceCenter (App::IDocumentObject *faceObj)
 获取一个面形体的面心
 
static double getFacePerimeterOrEdgeWireLength (std::vector< App::IDocumentObject * > &faceObjs)
 测量面的周长或线的总长
 
static Base::Matrix4D getMatrixOfInertia (App::IDocumentObject *solidObj)
 获取一个形体的惯性矩
 
static double getMinDistance (App::IDocumentObject *shapeA, App::IDocumentObject *shapeB)
 获取两个形体的最短距离
 
static Base::Vector3d getSolidCenter (App::IDocumentObject *solidObj)
 获取一个形体的体心
 
static double getSolidVolume (std::vector< App::IDocumentObject * > &solidObjs)
 获取形体的体积
 
static Base::Vector3d getStaticMoments (App::IDocumentObject *solidObj)
 获取一个形体的惯性积
 
static void getVisibleSolids (const std::vector< App::IDocumentObject * > &inputSolids, std::vector< App::IDocumentObject * > &resultObjs)
 获取某个列表中的可视对象
 
static bool isCollision (App::IDocumentObject *objA, App::IDocumentObject *objB, double precision=0.0)
 判断两个形体是否碰撞
 
static bool isCollision (App::IDocumentObject *shapeA, App::IDocumentObject *shapeB)
 判断两个形体是否碰撞
 
static bool isCollision (App::IDocumentObject *shapeA, App::IDocumentObject *shapeB, App::IDocumentObject *resultShape)
 判断两个形体是否碰撞
 

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