/usr/include/oce/gp_Lin.hxx is in liboce-foundation-dev 0.18.2-2build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 | // This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to
// this header file considered to be the "object code" form of the original source.
#ifndef _gp_Lin_HeaderFile
#define _gp_Lin_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Macro.hxx>
#include <gp_Ax1.hxx>
#include <Standard_Storable.hxx>
#include <Standard_Real.hxx>
#include <Standard_Boolean.hxx>
#include <Standard_PrimitiveTypes.hxx>
class Standard_ConstructionError;
class gp_Ax1;
class gp_Pnt;
class gp_Dir;
class gp_Ax2;
class gp_Trsf;
class gp_Vec;
Standard_EXPORT const Handle(Standard_Type)& STANDARD_TYPE(gp_Lin);
//! Describes a line in 3D space.
//! A line is positioned in space with an axis (a gp_Ax1
//! object) which gives it an origin and a unit vector.
//! A line and an axis are similar objects, thus, we can
//! convert one into the other. A line provides direct access
//! to the majority of the edit and query functions available
//! on its positioning axis. In addition, however, a line has
//! specific functions for computing distances and positions.
//! See Also
//! gce_MakeLin which provides functions for more complex
//! line constructions
//! Geom_Line which provides additional functions for
//! constructing lines and works, in particular, with the
//! parametric equations of lines
class gp_Lin
{
public:
DEFINE_STANDARD_ALLOC
//! Creates a Line corresponding to Z axis of the
//! reference coordinate system.
gp_Lin();
//! Creates a line defined by axis A1.
gp_Lin(const gp_Ax1& A1);
//! Creates a line passing through point P and parallel to
//! vector V (P and V are, respectively, the origin and
//! the unit vector of the positioning axis of the line).
Standard_EXPORT gp_Lin(const gp_Pnt& P, const gp_Dir& V);
void Reverse() ;
//! Reverses the direction of the line.
//! Note:
//! - Reverse assigns the result to this line, while
//! - Reversed creates a new one.
gp_Lin Reversed() const;
//! Changes the direction of the line.
void SetDirection (const gp_Dir& V) ;
//! Changes the location point (origin) of the line.
void SetLocation (const gp_Pnt& P) ;
//! Complete redefinition of the line.
//! The "Location" point of <A1> is the origin of the line.
//! The "Direction" of <A1> is the direction of the line.
void SetPosition (const gp_Ax1& A1) ;
//! Returns the direction of the line.
const gp_Dir& Direction() const;
//! Returns the location point (origin) of the line.
const gp_Pnt& Location() const;
//! Returns the axis placement one axis whith the same
//! location and direction as <me>.
const gp_Ax1& Position() const;
//! Computes the angle between two lines in radians.
Standard_Real Angle (const gp_Lin& Other) const;
//! Returns true if this line contains the point P, that is, if the
//! distance between point P and this line is less than or
//! equal to LinearTolerance..
Standard_Boolean Contains (const gp_Pnt& P, const Standard_Real LinearTolerance) const;
//! Computes the distance between <me> and the point P.
Standard_Real Distance (const gp_Pnt& P) const;
//! Computes the distance between two lines.
Standard_EXPORT Standard_Real Distance (const gp_Lin& Other) const;
//! Computes the square distance between <me> and the point P.
Standard_Real SquareDistance (const gp_Pnt& P) const;
//! Computes the square distance between two lines.
Standard_Real SquareDistance (const gp_Lin& Other) const;
//! Computes the line normal to the direction of <me>, passing
//! through the point P. Raises ConstructionError
//! if the distance between <me> and the point P is lower
//! or equal to Resolution from gp because there is an infinity of
//! solutions in 3D space.
gp_Lin Normal (const gp_Pnt& P) const;
Standard_EXPORT void Mirror (const gp_Pnt& P) ;
//! Performs the symmetrical transformation of a line
//! with respect to the point P which is the center of
//! the symmetry.
Standard_EXPORT gp_Lin Mirrored (const gp_Pnt& P) const;
Standard_EXPORT void Mirror (const gp_Ax1& A1) ;
//! Performs the symmetrical transformation of a line
//! with respect to an axis placement which is the axis
//! of the symmetry.
Standard_EXPORT gp_Lin Mirrored (const gp_Ax1& A1) const;
Standard_EXPORT void Mirror (const gp_Ax2& A2) ;
//! Performs the symmetrical transformation of a line
//! with respect to a plane. The axis placement <A2>
//! locates the plane of the symmetry :
//! (Location, XDirection, YDirection).
Standard_EXPORT gp_Lin Mirrored (const gp_Ax2& A2) const;
void Rotate (const gp_Ax1& A1, const Standard_Real Ang) ;
//! Rotates a line. A1 is the axis of the rotation.
//! Ang is the angular value of the rotation in radians.
gp_Lin Rotated (const gp_Ax1& A1, const Standard_Real Ang) const;
void Scale (const gp_Pnt& P, const Standard_Real S) ;
//! Scales a line. S is the scaling value.
//! The "Location" point (origin) of the line is modified.
//! The "Direction" is reversed if the scale is negative.
gp_Lin Scaled (const gp_Pnt& P, const Standard_Real S) const;
void Transform (const gp_Trsf& T) ;
//! Transforms a line with the transformation T from class Trsf.
gp_Lin Transformed (const gp_Trsf& T) const;
void Translate (const gp_Vec& V) ;
//! Translates a line in the direction of the vector V.
//! The magnitude of the translation is the vector's magnitude.
gp_Lin Translated (const gp_Vec& V) const;
void Translate (const gp_Pnt& P1, const gp_Pnt& P2) ;
//! Translates a line from the point P1 to the point P2.
gp_Lin Translated (const gp_Pnt& P1, const gp_Pnt& P2) const;
const gp_Ax1& _CSFDB_Getgp_Linpos() const { return pos; }
protected:
private:
gp_Ax1 pos;
};
#include <gp_Lin.lxx>
#endif // _gp_Lin_HeaderFile
|