2D 约束求解
约束元素类型
约束元素类型包括:点,线段,圆,椭圆,椭圆弧,抛物线弧。接下来,我们将介绍如何创建这些约束元素。
点
AMCAX::GCS::Status status1 = gcsSystem.
Create2dPoint(handlePoint1, p1);
std::cout << status1 << std::endl;
GCSSystem 的包装器
定义 AMCAXGCS.h:288
Status Create2dPoint(GCSWVarGeomHandle &h, const Point2d &point)
在二维空间中创建一个点
GCSVarGeomHandle 的包装器
定义 AMCAXGCS.h:210
线段
AMCAX::GCS::Status status1 = gcsSystem.
Create2dPoint(handlePoint1, p1);
AMCAX::GCS::Status status2 = gcsSystem.
Create2dLine(handleLine, handlePoint1, handlePoint2);
std::cout << status2 << std::endl;
Status Create2dLine(GCSWVarGeomHandle &h, const GCSWVarGeomHandle &point0, const GCSWVarGeomHandle &point1)
在二维空间中创建线段
圆
AMCAX::GCS::Status status3 = gcsSystem.
Create2dCircle(handleCircle, handlecenter, 2.);
std::cout << status3 << std::endl;
Status Create2dCircle(GCSWVarGeomHandle &h, const GCSWVarGeomHandle ¢er, double radius)
在二维空间中创建圆
椭圆
AMCAX::GCS::Status status4 = gcsSystem.
Create2dEllipse(handleEllipse, h_center, majorAxis, 2., minorAxis, 1.);
std::cout << status4 << std::endl;
Status Create2dEllipse(GCSWVarGeomHandle &h, const GCSWVarGeomHandle ¢er, const Vector2d &majorAxis, double majorRadius, const Vector2d &minorAxis, double minorRadius)
在二维空间中创建椭圆
椭圆弧
double range = M_PI;
AMCAX::GCS::Status status5 = gcsSystem.
Create2dArcOfEllipse(handleArcOfEllipse, h_center1, majorAxis, 2., minorAxis, 1., handleArcOfEllipsestart, handleArcOfEllipseend, range);
std::cout << status5 << std::endl;
Status Create2dArcOfEllipse(GCSWVarGeomHandle &h, const GCSWVarGeomHandle ¢er, const Vector2d &majorAxis, double majorRadius, const Vector2d &minorAxis, double minorRadius, const GCSWVarGeomHandle &start, const GCSWVarGeomHandle &end, double range=0)
在二维空间中创建椭圆弧
抛物线弧
AMCAX::GCS::Status status6 = gcsSystem.
Create2dArcOfParabola(handleArcOfParabola, handleArcOfParabolafocus, vertex, handleArcOfParabolastart, handleArcOfParabolaend);
std::cout << status6 << std::endl;
Status Create2dArcOfParabola(GCSWVarGeomHandle &h, const GCSWVarGeomHandle &focus, const Point2d &vertex, const GCSWVarGeomHandle &start, const GCSWVarGeomHandle &end)
在二维空间中创建抛物线弧
约束种类
约束种类包括平行、垂直、角度、距离、同心、对称、相等。
建设中。
支持检测冗余约束条件
建设中。
3D约束求解
约束元素类型
约束元素类型包括点、线、平面。
建设中。
约束种类
约束类型包括平行、角度、距离。
建设中。