C3D Toolkit
Kernel - 117982, Vision - 2.9.2.2
|
Functions for three-dimensional curves construction. More...
#include <templ_s_array.h>
#include <mb_cart_point3d.h>
#include <mb_vector3d.h>
#include <space_item.h>
#include <wire_frame.h>
#include <mb_nurbs_function.h>
#include <mb_point_mating.h>
#include <mb_operation_result.h>
#include <op_curve_parameter.h>
Functions | |
MbResultType | CalculatePipePoints (const MbCartPoint3D &origin1, const MbVector3D &direction1, double length1, double radius1, const MbCartPoint3D &origin2, const MbVector3D &direction2, double length2, double radius2, MbCartPoint3D &result1, MbCartPoint3D &result2) |
Compute the vertices of a polyline. More... | |
MbResultType | OffsetPlaneCurve (const MbCurve3D &curve, double dist, MbCurve3D *&result) |
Create an offset curve. More... | |
MbResultType | OffsetCurve (const MbCurve3D &initCurve, const MbSpatialOffsetCurveParams ¶ms, c3d::WireFrameSPtr &result) |
Create an offset curve in space. More... | |
MbResultType | OffsetCurve (const MbCurve3D &curve, const MbSurfaceOffsetCurveParams ¶ms, c3d::WireFrameSPtr &result) |
Create an offset curve on a surface. More... | |
MbResultType | CurveProjection (const MbSurface &surface, const MbCurve3D &curve, MbVector3D *direction, bool createExact, bool truncateByBounds, RPArray< MbCurve3D > &result, VERSION version=Math::DefaultMathVersion()) |
Create a curve projection onto the surface. More... | |
MbResultType | CurveProjection (const MbSurface &surface, const MbCurve3D &curve, MbVector3D *direction, bool createExact, bool truncateByBounds, c3d::SpaceCurvesSPtrVector &result, VERSION version=Math::DefaultMathVersion()) |
Create a curve projection onto the surface. More... | |
MbResultType | CurveByTwoProjections (const MbPlacement3D &place1, const MbCurve &curve1, const MbPlacement3D &place2, const MbCurve &curve2, RPArray< MbCurve3D > &result, VERSION version=Math::DefaultMathVersion()) |
Create a space curve from two planar projections. More... | |
MbResultType | ProjectionCurve (const MbCurve3D &curve, const RPArray< MbFace > &faces, const MbVector3D *dir, const bool createExact, const bool truncateByBounds, const MbSNameMaker &snMaker, RPArray< MbCurve3D > &result, SArray< uintptr_t > *resultIndices) |
Create a projection curve from a normal or from a direction. More... | |
MbResultType | ProjectionCurve (const MbWireFrame &wireFrame, const bool sameWireFrame, const MbSolid &solid, const bool same, const SArray< size_t > &faceIndices, const MbVector3D *dir, const bool createExact, const bool truncateByBounds, const MbSNameMaker &snMaker, MbWireFrame *&resFrame) |
Create a projection wireframe from a normal or from a direction. More... | |
bool | EliminateProjectionCurveOverlay (RPArray< MbCurve3D > &curves, SArray< uintptr_t > *indices) |
Eliminate the projection curve segments overlay. More... | |
MbResultType | SilhouetteCurve (const MbSurface &surface, const MbVector3D &eye, bool perspective, bool removeOnSurfaceBounds, RPArray< MbCurve3D > &result, VERSION version=Math::DefaultMathVersion()) |
Create an array of isocline curves of the surface. More... | |
MbResultType | SilhouetteCurve (const MbFace &face, const MbVector3D &eye, bool perspective, RPArray< MbCurve3D > &result, VERSION version=Math::DefaultMathVersion()) |
Create an array of isocline curves of the face. More... | |
MbResultType | SilhouetteCurve (const MbSurface &surface, const MbAxis3D &axis, bool removeOnSurfaceBounds, RPArray< MbCurve3D > &curves, VERSION version=Math::DefaultMathVersion()) |
Create an array of isocline curves of the rotated surface. More... | |
MbResultType | SilhouetteCurve (const MbFace &face, const MbAxis3D &axis, RPArray< MbCurve3D > &curves, VERSION version=Math::DefaultMathVersion()) |
Create an array of isocline curves of the rotated face. More... | |
MbResultType | IntersectionCurve (const MbSurface &surface1, const MbSurface &surface2, const MbIntCurveParams ¶ms, MbWireFrame *&result) |
Create the intersection curves of two surfaces. More... | |
MbResultType | IntersectionCurve (MbFace &face1, MbFace &face2, const MbIntCurveParams ¶ms, MbWireFrame *&result) |
Create intersection curves of two faces. More... | |
MbResultType | IntersectionCurve (MbFace &face1, MbFace &face2, const MbIntCurveParams ¶ms, MbIntCurveResults &results) |
Create intersection curves of two faces. More... | |
MbResultType | IntersectionCurve (const MbSolid &solid1, const c3d::IndicesVector &faceIndices1, const MbSolid &solid2, const c3d::IndicesVector &faceIndices2, const MbIntCurveParams ¶ms, MbWireFrame *&result) |
Create intersection curves of two shells faces. More... | |
MbResultType | IntersectionCurve (const MbSolid &solid1, const c3d::IndicesVector &faceIndices1, bool same1, const MbSolid &solid2, const c3d::IndicesVector &faceIndices2, bool same2, const MbIntCurveParams ¶ms, MbWireFrame *&result) |
Create intersection curves of two shells faces. More... | |
MbResultType | IntersectionCurve (const MbSolid &solid1, const MbSolid &solid2, const MbIntCurveShellParams ¶ms, MbIntCurveResults &results) |
Create intersection curves of two shells faces. More... | |
MbResultType | IntersectionCurve (const MbSurface &surface1, const MbSurface &surface2, const MbIntCurveParams ¶ms, MbIntCurveResults &results) |
Create an intersection curve of surfaces. More... | |
MbResultType | IntersectionCurve (const MbSurface &surface1, bool ext1, const MbCartPoint &uv1beg, const MbCartPoint &uv1end, const MbSurface &surface2, bool ext2, const MbCartPoint &uv2beg, const MbCartPoint &uv2end, const MbVector3D &dir, MbCurve *&result1, MbCurve *&result2, MbeCurveBuildType &label) |
Create an intersection curve of surfaces. More... | |
MbResultType | IntersectionCurve (const MbSurface &surf1, bool ext1, const MbCartPoint &uv1beg, const MbCartPoint &uv1end, const MbSurface &surf2, bool ext2, const MbCartPoint &uv2beg, const MbCartPoint &uv2end, const MbCurve3D *guideCurve, bool useRedetermination, bool checkPoles, MbCurve *&pCurve1, MbCurve *&pCurve2, MbeCurveBuildType &label) |
Create an intersection curve of surfaces. More... | |
MbResultType | SpaceSplineThrough (const SArray< MbCartPoint3D > &points, MbeSplineParamType paramType, size_t degree, bool closed, RPArray< c3d::PntMatingData3D > &transitions, const MbSNameMaker &snMaker, MbWireFrame *&result) |
Create a spatial spline through points and with the given derivatives. More... | |
MbResultType | SpaceSplineBy (const SArray< MbCartPoint3D > &points, size_t degree, bool closed, const SArray< double > *weights, const SArray< double > *knots, c3d::PntMatingData3D *begData, c3d::PntMatingData3D *endData, const MbSNameMaker &snMaker, MbWireFrame *&result) |
Create a spatial spline from points and derivatives. More... | |
MbResultType | SurfaceSpline (const MbSurface &surface, bool throughPoints, SArray< MbCartPoint > ¶mPnts, SArray< double > ¶mWts, bool paramClosed, RPArray< c3d::PntMatingData3D > &spaceTransitions, const MbSNameMaker &snMaker, MbWireFrame *&result) |
Create a curve on a surface. More... | |
MbResultType | IsoparametricCurve (const MbSurface &surface, double x, bool isU, const MbRect1D *yRange, MbCurve3D *&result) |
Create an isoparametric curve. More... | |
MbResultType | BridgeCurve (const MbCurve3D &curve1, double t1, bool sense1, const MbCurve3D &curve2, double t2, bool sense2, const MbSNameMaker &names, MbWireFrame *&result) |
Create a transition curve connecting curves 'curve1' and 'curve2'. More... | |
MbResultType | ConnectingCurve (const MbCurve3D &curve1, bool isBegin1, double radius1, const MbCurve3D &curve2, bool isBegin2, double radius2, const MbSNameMaker &names, MbWireFrame *&result) |
Create a composite curve smoothly connecting two curves ends. More... | |
MbResultType | ConnectingSpline (const MbCurve3D &curve1, double t1, MbeMatingType mating1, const MbCurve3D &curve2, double t2, MbeMatingType mating2, double tension1, double tension2, const MbSNameMaker &names, MbWireFrame *&result) |
Create a connecting NURBS curve for curves 'curve1' and 'curve2'. More... | |
MbResultType | FilletCurve (const MbCurve3D &curve1, double &t1, double &w1, const MbCurve3D &curve2, double &t2, double &w2, double &radius, bool sense, bool &unchanged, const MbeConnectingType type, const MbSNameMaker &names, MbElementarySurface *&surface, MbWireFrame *&result) |
Create a fillet curve for curves. More... | |
double | GetFilletRadiusDelta (const MbCurve3D &filletCurve, double radius, bool sense, double len, const MbCurve3D &curve1, double t1, const MbCurve3D &curve2, double t2) |
Determine the radius variation while translating the middle point of the fillet curve. More... | |
double | GetFilletRadiusDelta (const MbCurve3D &filletCurve, double radius, bool sense, double len) |
Determine the radius variation while translating the middle point of the fillet curve. More... | |
MbResultType | CreateContourFillets (const MbContour3D &contour, SArray< double > &radiuses, MbCurve3D *&result, const MbeConnectingType type) |
Create a curve for fillet of all the curves of a contour. More... | |
MbResultType | CurvesWrapping (const MbCurvesWrappingParams ¶meters, c3d::PlaneCurvesSPtrVector &surfaceCurves) |
Construct curves that wrap the surface. More... | |
MbResultType | CurvesWrapping (const MbCurvesWrappingParams ¶meters, c3d::SpaceCurvesSPtrVector &resultCurves) |
Construct curves that wrap the surface. More... | |
MbResultType | CurvesUnwrapping (const MbCurvesWrappingParams ¶ms, c3d::PlaneCurvesSPtrVector &surfaceCurves) |
Construct a unwrapping curve/contour. More... | |
MbResultType | CurvesUnwrapping (const MbCurvesWrappingParams ¶meters, c3d::SpaceCurvesSPtrVector &resultCurves) |
Construct a unwrapping curve/contour. More... | |
MbCurve3D * | MakeCurveOnSurface (const MbFace &face, const std::vector< const MbCurveEdge * > &edges, double accuracy) |
Construct a curve or contour on the surface of a face along the specified edges. More... | |
MbResultType | FairCurve (const MbFairCurveParams &initParams, const MbFairCurveMethod &method, const MbFairCreateData &curveData, MbFairCurveResult &result) |
Construct a fair curve of the specified type according to the specified parameters. More... | |
MbResultType | FairCurve (const MbFairCurveParams &initParams, const MbFairFilletData &curveData, MbFairCurveResult &result) |
Construct a fair fillet curve. More... | |
MbResultType | FairCurve (const MbFairCurveParams &initParams, const MbFairCurveMethod &method, const MbFairChangeData &changeData, c3d::WireFrameSPtr &result) |
Change a fair curve. More... | |
MbResultType | FairCurve (const MbClothoidParams ¶meters, const MbSNameMaker &snMaker, c3d::WireFrameSPtr &result) |
Creating a clothoid. More... | |
Functions for three-dimensional curves construction.
Edges are created on the basis of curves. Edges are used in solid and wireframe model. In addition curves are used for construction of surfaces as well as can be used as auxiliary elements of a model.