Open CASCADE Technology 6.6.0
|
#include <Standard.hxx>
#include <Standard_DefineHandle.hxx>
#include <Handle_Geom_OffsetCurve.hxx>
#include <Handle_Geom_Curve.hxx>
#include <gp_Dir.hxx>
#include <Standard_Real.hxx>
#include <Geom_Curve.hxx>
#include <GeomAbs_Shape.hxx>
#include <Standard_Integer.hxx>
#include <Standard_Boolean.hxx>
#include <Handle_Geom_Geometry.hxx>
Data Structures | |
class | Geom_OffsetCurve |
This class implements the basis services for an offset curve in 3D space. The Offset curve in this package can be a self intersecting curve even if the basis curve does not self-intersect. The self intersecting portions are not deleted at the construction time. An offset curve is a curve at constant distance (Offset) from a basis curve in a reference direction V. The offset curve takes its parametrization from the basis curve. The Offset curve is in the direction of of the normal N defined with the cross product V^T where the vector T is given by the first derivative on the basis curve with non zero length. The distance offset may be positive or negative to indicate the preferred side of the curve : . distance offset >0 => the curve is in the direction of N . distance offset >0 => the curve is in the direction of - N On the Offset curve : Value (U) = BasisCurve.Value(U) + (Offset * (T ^ V)) / ||T ^ V|| At any point the Offset direction V must not be parallel to the vector T and the vector T must not have null length else the offset curve is not defined. So the offset curve has not the same continuity as the basis curve. Warnings : In this package we suppose that the continuity of the offset curve is one degree less than the continuity of the basis curve and we don't check that at any point ||T^V|| != 0.0 So to evaluate the curve it is better to check that the offset curve is well defined at any point because an exception could be raised. The check is not done in this package at the creation of the offset curve because the control needs the use of an algorithm which cannot be implemented in this package. The OffsetCurve is closed if the first point and the last point are the same (The distance between these two points is lower or equal to the Resolution sea package gp) . The OffsetCurve can be closed even if the basis curve is not closed. More... |