| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| | #include "Blending/BlendCurvePy.h"
|
| | #include "Blending/BlendCurvePy.cpp"
|
| | #include "Blending/BlendPointPy.h"
|
| |
|
| | #include <Base/VectorPy.h>
|
| | #include <Mod/Part/App/BezierCurvePy.h>
|
| |
|
| | using namespace Surface;
|
| |
|
| | std::string BlendCurvePy::representation() const
|
| | {
|
| | return "BlendCurve";
|
| | }
|
| |
|
| | PyObject* BlendCurvePy::PyMake(struct _typeobject*, PyObject*, PyObject*)
|
| | {
|
| |
|
| | return new BlendCurvePy(new BlendCurve);
|
| | }
|
| |
|
| | int BlendCurvePy::PyInit(PyObject* args, PyObject* )
|
| | {
|
| | PyObject* b1;
|
| | PyObject* b2;
|
| |
|
| | if (!PyArg_ParseTuple(
|
| | args,
|
| | "O!O!",
|
| | &(Surface::BlendPointPy::Type),
|
| | &b1,
|
| | &(Surface::BlendPointPy::Type),
|
| | &b2
|
| | )) {
|
| | return -1;
|
| | }
|
| |
|
| | std::vector<BlendPoint> bpList;
|
| | BlendPoint* geom1 = static_cast<BlendPointPy*>(b1)->getBlendPointPtr();
|
| | BlendPoint* geom2 = static_cast<BlendPointPy*>(b2)->getBlendPointPtr();
|
| | bpList.emplace_back(*geom1);
|
| | bpList.emplace_back(*geom2);
|
| | this->getBlendCurvePtr()->blendPoints = bpList;
|
| | return 0;
|
| | }
|
| |
|
| | PyObject* BlendCurvePy::compute(PyObject* args)
|
| | {
|
| | if (!PyArg_ParseTuple(args, "")) {
|
| | return nullptr;
|
| | }
|
| |
|
| | BlendCurve* bc = getBlendCurvePtr();
|
| | Handle(Geom_BezierCurve) gc = bc->compute();
|
| | return new Part::BezierCurvePy(new Part::GeomBezierCurve(gc));
|
| | }
|
| |
|
| | PyObject* BlendCurvePy::setSize(PyObject* args)
|
| | {
|
| | int i;
|
| | double size;
|
| | PyObject* relative = Py_True;
|
| | if (!PyArg_ParseTuple(args, "idO!", &i, &size, &PyBool_Type, &relative)) {
|
| | return nullptr;
|
| | }
|
| | try {
|
| | getBlendCurvePtr()->setSize(i, size, Base::asBoolean(relative));
|
| | Py_Return;
|
| | }
|
| | catch (Standard_Failure& e) {
|
| | PyErr_SetString(Base::PyExc_FC_CADKernelError, e.GetMessageString());
|
| | return nullptr;
|
| | }
|
| | }
|
| |
|
| | PyObject* BlendCurvePy::getCustomAttributes(const char* ) const
|
| | {
|
| | return nullptr;
|
| | }
|
| |
|
| | int BlendCurvePy::setCustomAttributes(const char* , PyObject* )
|
| | {
|
| | return 0;
|
| | }
|
| |
|