*/
GEOM_Object MakePointWithReference (in GEOM_Object theReference,
in double theX, in double theY, in double theZ);
-
+
/*!
* Create a point, corresponding to the given parameter on the given curve.
* \param theRefCurve The referenced curve.
GEOM_Object MakePointOnCurve (in GEOM_Object theRefCurve,
in double theParameter);
+
+ /*!
+ * Create a vector, corresponding to tangent to the given parameter on the given curve.
+ * \param theRefCurve The referenced curve.
+ * \param theParameter Value of parameter on the referenced curve.This value should be have value
+ * \between 0. and 1.. Value of 0. corresponds first parameter of curve value 1. corresponds
+ * \last parameter of curve.
+ * \return New GEOM_Object, containing the created point.
+ */
+ GEOM_Object MakeTangentOnCurve (in GEOM_Object theRefCurve,
+ in double theParameter);
+
/*!
* Create a vector with the given components.
* \param theDX X component of the vector.
* \param theDZ Z component of the vector.
* \return New GEOM_Object, containing the created vector.
*/
+
GEOM_Object MakeVectorDXDYDZ (in double theDX,
in double theDY,
in double theDZ);
in long theMinDeg, in long theMaxDeg,
in double theTol2D, in double theTol3D,
in long theNbIter);
+
+ /*!
+ * Create a shell or solid passing through set of sections.Sections should be wires,edges or vertices.
+ * \param theSeqSections - set of specified sections.
+ * \param theModeSolid - mode defining building solid or shell
+ * \param thePreci - precision 3D used for smoothing by default 1.e-6
+ * \param theRuled - mode defining type of the result surfaces (ruled or smoothed).
+ * \return New GEOM_Object, containing the created shell or solid.
+ */
+ GEOM_Object MakeThruSections(in ListOfGO theSeqSections,
+ in boolean theModeSolid,
+ in double thePreci,
+ in boolean theRuled);
+
+ /*!
+ * Create a shape by extrusion of the profile shape along
+ * the path shape. The path shape can be a wire or an edge.
+ * the several profiles can be specified in the several locations of path.
+ * \param theSeqBases - list of Bases shape to be extruded.
+ * \param theLocations - list of locations on the path corresponding
+ * specified list of the Bases shapes. Number of locations
+ * should be equal to number of bases or list of locations can be empty.
+ * \param thePath - Path shape to extrude the base shape along it.
+ * \param theWithContact - the mode defining that the section is translated to be in
+ * contact with the spine.
+ * \param - WithCorrection - defining that the section is rotated to be
+ * orthogonal to the spine tangent in the correspondent point
+ * \return New GEOM_Object, containing the created pipe.
+ */
+ GEOM_Object MakePipeWithDifferentSections (in ListOfGO theSeqBases,
+ in ListOfGO theLocations,
+ in GEOM_Object thePath,
+ in boolean theWithContact ,
+ in boolean theWithCorrection );
+
};
/*!
in double theZ) ;
GEOM_Object MakePointOnCurve (in GEOM_Object theRefCurve,
in double theParameter) ;
+
+ GEOM_Object MakeTangentOnCurve (in GEOM_Object theRefCurve,
+ in double theParameter);
+
GEOM_Object MakeVectorDXDYDZ (in double theDX,
in double theDY,
in double theDZ) ;
in long theMinDeg, in long theMaxDeg,
in double theTol2D, in double theTol3D,
in long theNbIter) ;
+ GEOM_Object MakeThruSections(in ListOfGO theSeqSections,
+ in boolean theModeSolid,
+ in double thePreci,
+ in boolean theRuled);
+ GEOM_Object MakePipeWithDifferentSections (in ListOfGO theSeqBases,
+ in ListOfGO theLocations,
+ in GEOM_Object thePath,
+ in boolean theWithContact ,
+ in boolean theWithCorrection );
+
//-----------------------------------------------------------//
// BooleanOperations //
//-----------------------------------------------------------//
return myBasicOp->MakePointOnCurve(theRefCurve, theParameter);
}
+//=============================================================================
+// MakeTangentOnCurve:
+//=============================================================================
+GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
+ CORBA::Double theParameter)
+{
+ MESSAGE("GEOM_Superv_i::MakeTangentOnCurve");
+ getBasicOp();
+ return myBasicOp->MakeTangentOnCurve(theRefCurve, theParameter);
+}
+
//=============================================================================
// MakeVectorDXDYDZ:
//=============================================================================
return myBoolOp->MakeBoolean(theShape1, theShape2, theOperation);
}
+//=============================================================================
+// MakeThruSections:
+//=============================================================================
+GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeThruSections(const GEOM::ListOfGO& theSeqSections,
+ CORBA::Boolean theModeSolid,
+ CORBA::Double thePreci,
+ CORBA::Boolean theRuled)
+{
+ MESSAGE("GEOM_Superv_i::MakeThruSections");
+ get3DPrimOp();
+ return my3DPrimOp->MakeThruSections(theSeqSections, theModeSolid,thePreci,theRuled);
+}
+
+//=============================================================================
+// MakePipe:
+//=============================================================================
+GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithDifferentSections(const GEOM::ListOfGO& theBases,
+ const GEOM::ListOfGO& theLocations,
+ GEOM::GEOM_Object_ptr thePath,
+ CORBA::Boolean theWithContact,
+ CORBA::Boolean theWithCorrections)
+{
+ MESSAGE("GEOM_Superv_i::MakePipeWithDifferentSections");
+ get3DPrimOp();
+ return my3DPrimOp->MakePipeWithDifferentSections(theBases,theLocations, thePath,theWithContact,theWithCorrections);
+}
//=============================================================================
// MakeFuse:
//=============================================================================
CORBA::Double theZ);
GEOM::GEOM_Object_ptr MakePointOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
CORBA::Double theParameter);
+ GEOM::GEOM_Object_ptr MakeTangentOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
+ CORBA::Double theParameter);
GEOM::GEOM_Object_ptr MakeVectorDXDYDZ (CORBA::Double theDX,
CORBA::Double theDY,
CORBA::Double theDZ);
CORBA::Long theMinDeg, CORBA::Long theMaxDeg,
CORBA::Double theTol2D, CORBA::Double theTol3D,
CORBA::Long theNbIter);
+
+ GEOM::GEOM_Object_ptr MakeThruSections(const GEOM::ListOfGO& theSeqSections,
+ CORBA::Boolean theModeSolid,
+ CORBA::Double thePreci,
+ CORBA::Boolean theRuled);
+
+ GEOM::GEOM_Object_ptr MakePipeWithDifferentSections(const GEOM::ListOfGO& theBases,
+ const GEOM::ListOfGO& theLocations,
+ GEOM::GEOM_Object_ptr thePath,
+ CORBA::Boolean theWithContact,
+ CORBA::Boolean theWithCorrections);
//-----------------------------------------------------------//
// BooleanOperations //
print "MakePointOnCurve : ", BasicOp.GetErrorCode()
return anObj
+def MakeTangentOnCurve(theRefCurve, theParameter):
+ """
+ * Create a tangent, corresponding to the given parameter on the given curve.
+ * \param theRefCurve The referenced curve.
+ * \param theParameter Value of parameter on the referenced curve.
+ * \return New GEOM_Object, containing the created tangent.
+
+ *
+ """
+ anObj = BasicOp.MakeTangentOnCurve(theRefCurve, theParameter)
+ if BasicOp.IsDone() == 0:
+ print "MakeTangentOnCurve : ", BasicOp.GetErrorCode()
+ return anObj
+
def MakeVectorDXDYDZ(theDX, theDY, theDZ):
"""
* Create a vector with the given components.
print "MakeRevolutionAxisAngle : ", PrimOp.GetErrorCode()
return anObj
+def MakeThruSections(theSeqSections,theModeSolid,thePreci,theRuled):
+ """
+ * Create a shell or solid passing through set of sections.Sections should be wires,edges or vertices.
+ * \param theSeqSections - set of specified sections.
+ * \param theModeSolid - mode defining building solid or shell
+ * \param thePreci - precision 3D used for smoothing by default 1.e-6
+ * \param theRuled - mode defining type of the result surfaces (ruled or smoothed).
+ * \return New GEOM_Object, containing the created shell or solid.
+
+ * Example: see GEOM_TestAll.py
+ """
+ anObj = PrimOp.MakeThruSections(theSeqSections,theModeSolid,thePreci,theRuled)
+ if PrimOp.IsDone() == 0:
+ print "MakeThruSections : ", PrimOp.GetErrorCode()
+ return anObj
+
+def MakePipeWithDifferentSections(theSeqBases, theLocations,thePath,theWithContact,theWithCorrection):
+ """
+ * Create a shape by extrusion of the profile shape along
+ * the path shape. The path shape can be a wire or an edge.
+ * the several profiles can be specified in the several locations of path.
+ * \param theSeqBases - list of Bases shape to be extruded.
+ * \param theLocations - list of locations on the path corresponding
+ * specified list of the Bases shapes. Number of locations
+ * should be equal to number of bases or list of locations can be empty.
+ * \param thePath - Path shape to extrude the base shape along it.
+ * \param theWithContact - the mode defining that the section is translated to be in
+ * contact with the spine.
+ * \param - WithCorrection - defining that the section is rotated to be
+ * orthogonal to the spine tangent in the correspondent point
+ * \return New GEOM_Object, containing the created pipe.
+
+ * Example: see GEOM_TestAll.py
+ """
+ anObj = PrimOp.MakePipeWithDifferentSections(theSeqBases, theLocations,thePath,theWithContact,theWithCorrection)
+ if PrimOp.IsDone() == 0:
+ print "MakePipeWithDifferentSections : ", PrimOp.GetErrorCode()
+ return anObj
+
# -----------------------------------------------------------------------------
# Create base shapes
# -----------------------------------------------------------------------------