| 
    Open CASCADE Technology 7.8.2.dev
    
   | 
 
Algorithm to build primitives with one axis of revolution. More...
#include <BRepPrim_OneAxis.hxx>

Public Member Functions | |
| void | SetMeridianOffset (const Standard_Real MeridianOffset=0) | 
| The MeridianOffset is added to the parameters on the meridian curve and to the V values of the pcurves. This is used for the sphere for example, to give a range on the meridian edge which is not VMin, VMax.   | |
| const gp_Ax2 & | Axes () const | 
| Returns the Ax2 from <me>.   | |
| void | Axes (const gp_Ax2 &A) | 
| Standard_Real | Angle () const | 
| void | Angle (const Standard_Real A) | 
| Standard_Real | VMin () const | 
| void | VMin (const Standard_Real V) | 
| Standard_Real | VMax () const | 
| void | VMax (const Standard_Real V) | 
| virtual TopoDS_Face | MakeEmptyLateralFace () const =0 | 
| Returns a face with no edges. The surface is the lateral surface with normals pointing outward. The U parameter is the angle with the origin on the X axis. The V parameter is the parameter of the meridian.   | |
| virtual TopoDS_Edge | MakeEmptyMeridianEdge (const Standard_Real Ang) const =0 | 
| Returns an edge with a 3D curve made from the meridian in the XZ plane rotated by <Ang> around the Z-axis. Ang may be 0 or myAngle.   | |
| virtual void | SetMeridianPCurve (TopoDS_Edge &E, const TopoDS_Face &F) const =0 | 
| Sets the parametric curve of the edge <E> in the face <F> to be the 2d representation of the meridian.   | |
| virtual gp_Pnt2d | MeridianValue (const Standard_Real V) const =0 | 
| Returns the meridian point at parameter <V> in the plane XZ.   | |
| virtual Standard_Boolean | MeridianOnAxis (const Standard_Real V) const | 
| Returns True if the point of parameter <V> on the meridian is on the Axis. Default implementation is Abs(MeridianValue(V).X()) < Precision::Confusion()   | |
| virtual Standard_Boolean | MeridianClosed () const | 
| Returns True if the meridian is closed. Default implementation is MeridianValue(VMin).IsEqual(MeridianValue(VMax), Precision::Confusion())   | |
| virtual Standard_Boolean | VMaxInfinite () const | 
| Returns True if VMax is infinite. Default Precision::IsPositiveInfinite(VMax);.   | |
| virtual Standard_Boolean | VMinInfinite () const | 
| Returns True if VMin is infinite. Default Precision::IsNegativeInfinite(VMax);.   | |
| virtual Standard_Boolean | HasTop () const | 
| Returns True if there is a top face.   | |
| virtual Standard_Boolean | HasBottom () const | 
| Returns True if there is a bottom face.   | |
| virtual Standard_Boolean | HasSides () const | 
| Returns True if there are Start and End faces.   | |
| const TopoDS_Shell & | Shell () | 
| Returns the Shell containing all the Faces of the primitive.   | |
| const TopoDS_Face & | LateralFace () | 
| Returns the lateral Face. It is oriented toward the outside of the primitive.   | |
| const TopoDS_Face & | TopFace () | 
| Returns the top planar Face. It is Oriented toward the +Z axis (outside).   | |
| const TopoDS_Face & | BottomFace () | 
| Returns the Bottom planar Face. It is Oriented toward the -Z axis (outside).   | |
| const TopoDS_Face & | StartFace () | 
| Returns the Face starting the slice, it is oriented toward the exterior of the primitive.   | |
| const TopoDS_Face & | EndFace () | 
| Returns the Face ending the slice, it is oriented toward the exterior of the primitive.   | |
| const TopoDS_Wire & | LateralWire () | 
| Returns the wire in the lateral face.   | |
| const TopoDS_Wire & | LateralStartWire () | 
| Returns the wire in the lateral face with the start edge.   | |
| const TopoDS_Wire & | LateralEndWire () | 
| Returns the wire with in lateral face with the end edge.   | |
| const TopoDS_Wire & | TopWire () | 
| Returns the wire in the top face.   | |
| const TopoDS_Wire & | BottomWire () | 
| Returns the wire in the bottom face.   | |
| const TopoDS_Wire & | StartWire () | 
| Returns the wire in the start face.   | |
| const TopoDS_Wire & | AxisStartWire () | 
| Returns the wire in the start face with the AxisEdge.   | |
| const TopoDS_Wire & | EndWire () | 
| Returns the Wire in the end face.   | |
| const TopoDS_Wire & | AxisEndWire () | 
| Returns the Wire in the end face with the AxisEdge.   | |
| const TopoDS_Edge & | AxisEdge () | 
| Returns the Edge built along the Axis and oriented on +Z of the Axis.   | |
| const TopoDS_Edge & | StartEdge () | 
| Returns the Edge at angle 0.   | |
| const TopoDS_Edge & | EndEdge () | 
| Returns the Edge at angle Angle. If !HasSides() the StartEdge and the EndEdge are the same edge.   | |
| const TopoDS_Edge & | StartTopEdge () | 
| Returns the linear Edge between start Face and top Face.   | |
| const TopoDS_Edge & | StartBottomEdge () | 
| Returns the linear Edge between start Face and bottom Face.   | |
| const TopoDS_Edge & | EndTopEdge () | 
| Returns the linear Edge between end Face and top Face.   | |
| const TopoDS_Edge & | EndBottomEdge () | 
| Returns the linear Edge between end Face and bottom Face.   | |
| const TopoDS_Edge & | TopEdge () | 
| Returns the edge at VMax. If MeridianClosed() the TopEdge and the BottomEdge are the same edge.   | |
| const TopoDS_Edge & | BottomEdge () | 
| Returns the edge at VMin. If MeridianClosed() the TopEdge and the BottomEdge are the same edge.   | |
| const TopoDS_Vertex & | AxisTopVertex () | 
| Returns the Vertex at the Top altitude on the axis.   | |
| const TopoDS_Vertex & | AxisBottomVertex () | 
| Returns the Vertex at the Bottom altitude on the axis.   | |
| const TopoDS_Vertex & | TopStartVertex () | 
| Returns the vertex (0,VMax)   | |
| const TopoDS_Vertex & | TopEndVertex () | 
| Returns the vertex (angle,VMax)   | |
| const TopoDS_Vertex & | BottomStartVertex () | 
| Returns the vertex (0,VMin)   | |
| const TopoDS_Vertex & | BottomEndVertex () | 
| Returns the vertex (angle,VMax)   | |
| virtual | ~BRepPrim_OneAxis () | 
Protected Member Functions | |
| BRepPrim_OneAxis (const BRepPrim_Builder &B, const gp_Ax2 &A, const Standard_Real VMin, const Standard_Real VMax) | |
| Creates a OneAxis algorithm.  is used to build the Topology. The angle defaults to 2*PI.   | |
Protected Attributes | |
| BRepPrim_Builder | myBuilder | 
Algorithm to build primitives with one axis of revolution.
The revolution body is described by :
A coordinate system (Ax2 from gp). The Z axis is the rotational axis.
An Angle around the Axis, When the Angle is 2*PI the primitive is not limited by planar faces. The U parameter range from 0 to Angle.
A parameter range VMin, VMax on the meridian.
A meridian : The meridian is a curve described by a set of deferred methods.
The topology consists of A shell, Faces, Wires, Edges and Vertices. Methods are provided to build all the elements. Building an element implies the automatic building of all its sub-elements.
So building the shell builds everything.
There are at most 5 faces :
      
  | 
  virtual | 
      
  | 
  protected | 
Creates a OneAxis algorithm. is used to build the Topology. The angle defaults to 2*PI.
| Standard_Real BRepPrim_OneAxis::Angle | ( | ) | const | 
| void BRepPrim_OneAxis::Angle | ( | const Standard_Real | A | ) | 
| const TopoDS_Vertex & BRepPrim_OneAxis::AxisBottomVertex | ( | ) | 
Returns the Vertex at the Bottom altitude on the axis.
| const TopoDS_Edge & BRepPrim_OneAxis::AxisEdge | ( | ) | 
Returns the Edge built along the Axis and oriented on +Z of the Axis.
| const TopoDS_Wire & BRepPrim_OneAxis::AxisEndWire | ( | ) | 
Returns the Wire in the end face with the AxisEdge.
| const TopoDS_Wire & BRepPrim_OneAxis::AxisStartWire | ( | ) | 
Returns the wire in the start face with the AxisEdge.
| const TopoDS_Vertex & BRepPrim_OneAxis::AxisTopVertex | ( | ) | 
Returns the Vertex at the Top altitude on the axis.
| const TopoDS_Edge & BRepPrim_OneAxis::BottomEdge | ( | ) | 
Returns the edge at VMin. If MeridianClosed() the TopEdge and the BottomEdge are the same edge.
| const TopoDS_Vertex & BRepPrim_OneAxis::BottomEndVertex | ( | ) | 
Returns the vertex (angle,VMax)
| const TopoDS_Face & BRepPrim_OneAxis::BottomFace | ( | ) | 
Returns the Bottom planar Face. It is Oriented toward the -Z axis (outside).
| const TopoDS_Vertex & BRepPrim_OneAxis::BottomStartVertex | ( | ) | 
Returns the vertex (0,VMin)
| const TopoDS_Wire & BRepPrim_OneAxis::BottomWire | ( | ) | 
Returns the wire in the bottom face.
| const TopoDS_Edge & BRepPrim_OneAxis::EndBottomEdge | ( | ) | 
Returns the linear Edge between end Face and bottom Face.
| const TopoDS_Edge & BRepPrim_OneAxis::EndEdge | ( | ) | 
Returns the Edge at angle Angle. If !HasSides() the StartEdge and the EndEdge are the same edge.
| const TopoDS_Face & BRepPrim_OneAxis::EndFace | ( | ) | 
Returns the Face ending the slice, it is oriented toward the exterior of the primitive.
| const TopoDS_Edge & BRepPrim_OneAxis::EndTopEdge | ( | ) | 
Returns the linear Edge between end Face and top Face.
| const TopoDS_Wire & BRepPrim_OneAxis::EndWire | ( | ) | 
Returns the Wire in the end face.
      
  | 
  virtual | 
Returns True if there is a bottom face.
That is neither : VMinInfinite() MeridianClosed() MeridianOnAxis(VMin)
      
  | 
  virtual | 
Returns True if there are Start and End faces.
That is : 2*PI - Angle > Precision::Angular()
      
  | 
  virtual | 
Returns True if there is a top face.
That is neither : VMaxInfinite() MeridianClosed() MeridianOnAxis(VMax)
| const TopoDS_Wire & BRepPrim_OneAxis::LateralEndWire | ( | ) | 
Returns the wire with in lateral face with the end edge.
| const TopoDS_Face & BRepPrim_OneAxis::LateralFace | ( | ) | 
Returns the lateral Face. It is oriented toward the outside of the primitive.
| const TopoDS_Wire & BRepPrim_OneAxis::LateralStartWire | ( | ) | 
Returns the wire in the lateral face with the start edge.
| const TopoDS_Wire & BRepPrim_OneAxis::LateralWire | ( | ) | 
Returns the wire in the lateral face.
      
  | 
  pure virtual | 
Returns a face with no edges. The surface is the lateral surface with normals pointing outward. The U parameter is the angle with the origin on the X axis. The V parameter is the parameter of the meridian.
Implemented in BRepPrim_Revolution, BRepPrim_Cone, BRepPrim_Cylinder, BRepPrim_Sphere, and BRepPrim_Torus.
      
  | 
  pure virtual | 
Returns an edge with a 3D curve made from the meridian in the XZ plane rotated by <Ang> around the Z-axis. Ang may be 0 or myAngle.
Implemented in BRepPrim_Revolution.
      
  | 
  virtual | 
Returns True if the meridian is closed. Default implementation is MeridianValue(VMin).IsEqual(MeridianValue(VMax), Precision::Confusion())
      
  | 
  virtual | 
Returns True if the point of parameter <V> on the meridian is on the Axis. Default implementation is Abs(MeridianValue(V).X()) < Precision::Confusion()
      
  | 
  pure virtual | 
Returns the meridian point at parameter <V> in the plane XZ.
Implemented in BRepPrim_Revolution.
| void BRepPrim_OneAxis::SetMeridianOffset | ( | const Standard_Real | MeridianOffset = 0 | ) | 
The MeridianOffset is added to the parameters on the meridian curve and to the V values of the pcurves. This is used for the sphere for example, to give a range on the meridian edge which is not VMin, VMax.
      
  | 
  pure virtual | 
Sets the parametric curve of the edge <E> in the face <F> to be the 2d representation of the meridian.
Implemented in BRepPrim_Revolution.
| const TopoDS_Shell & BRepPrim_OneAxis::Shell | ( | ) | 
Returns the Shell containing all the Faces of the primitive.
| const TopoDS_Edge & BRepPrim_OneAxis::StartBottomEdge | ( | ) | 
Returns the linear Edge between start Face and bottom Face.
| const TopoDS_Edge & BRepPrim_OneAxis::StartEdge | ( | ) | 
Returns the Edge at angle 0.
| const TopoDS_Face & BRepPrim_OneAxis::StartFace | ( | ) | 
Returns the Face starting the slice, it is oriented toward the exterior of the primitive.
| const TopoDS_Edge & BRepPrim_OneAxis::StartTopEdge | ( | ) | 
Returns the linear Edge between start Face and top Face.
| const TopoDS_Wire & BRepPrim_OneAxis::StartWire | ( | ) | 
Returns the wire in the start face.
| const TopoDS_Edge & BRepPrim_OneAxis::TopEdge | ( | ) | 
Returns the edge at VMax. If MeridianClosed() the TopEdge and the BottomEdge are the same edge.
| const TopoDS_Vertex & BRepPrim_OneAxis::TopEndVertex | ( | ) | 
Returns the vertex (angle,VMax)
| const TopoDS_Face & BRepPrim_OneAxis::TopFace | ( | ) | 
Returns the top planar Face. It is Oriented toward the +Z axis (outside).
| const TopoDS_Vertex & BRepPrim_OneAxis::TopStartVertex | ( | ) | 
Returns the vertex (0,VMax)
| const TopoDS_Wire & BRepPrim_OneAxis::TopWire | ( | ) | 
Returns the wire in the top face.
| Standard_Real BRepPrim_OneAxis::VMax | ( | ) | const | 
| void BRepPrim_OneAxis::VMax | ( | const Standard_Real | V | ) | 
      
  | 
  virtual | 
Returns True if VMax is infinite. Default Precision::IsPositiveInfinite(VMax);.
| Standard_Real BRepPrim_OneAxis::VMin | ( | ) | const | 
| void BRepPrim_OneAxis::VMin | ( | const Standard_Real | V | ) | 
      
  | 
  virtual | 
Returns True if VMin is infinite. Default Precision::IsNegativeInfinite(VMax);.
      
  | 
  protected |