/usr/include/oce/Select3D_SensitiveCircle.hxx is in liboce-visualization-dev 0.17.1-1.
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 | // 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 _Select3D_SensitiveCircle_HeaderFile
#define _Select3D_SensitiveCircle_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineHandle.hxx>
#include <Handle_Select3D_SensitiveCircle.hxx>
#include <Standard_Boolean.hxx>
#include <Select3D_Pnt2d.hxx>
#include <Select3D_Pnt.hxx>
#include <Handle_Geom_Circle.hxx>
#include <Standard_Real.hxx>
#include <Select3D_SensitivePoly.hxx>
#include <Handle_SelectBasics_EntityOwner.hxx>
#include <Standard_Integer.hxx>
#include <Handle_TColgp_HArray1OfPnt.hxx>
#include <SelectBasics_PickArgs.hxx>
#include <Standard_OStream.hxx>
#include <Handle_Select3D_SensitiveEntity.hxx>
#include <Handle_Select3D_Projector.hxx>
class Geom_Circle;
class Standard_ConstructionError;
class Standard_OutOfRange;
class SelectBasics_EntityOwner;
class TColgp_HArray1OfPnt;
class TColgp_Array1OfPnt;
class TColgp_Array1OfPnt2d;
class Bnd_Box2d;
class gp_Lin;
class gp_Pnt;
class Select3D_SensitiveEntity;
class TopLoc_Location;
class Select3D_Projector;
//! A framework to define sensitive 3D arcs and circles.
//! In some cases this class can raise Standard_ConstructionError and
//! Standard_OutOfRange exceptions. For more details see Select3D_SensitivePoly.
class Select3D_SensitiveCircle : public Select3D_SensitivePoly
{
public:
//! Constructs the sensitive circle object defined by the
//! owner OwnerId, the circle Circle, the Boolean
//! FilledCircle and the number of points NbOfPoints.
Standard_EXPORT Select3D_SensitiveCircle(const Handle(SelectBasics_EntityOwner)& OwnerId, const Handle(Geom_Circle)& TheCircle, const Standard_Boolean FilledCircle = Standard_False, const Standard_Integer NbOfPoints = 6);
//! Constructs the sensitive arc object defined by the
//! owner OwnerId, the circle Circle, the parameters u1
//! and u2, the Boolean FilledCircle and the number of points NbOfPoints.
//! u1 and u2 define the first and last points of the arc on Circle.
Standard_EXPORT Select3D_SensitiveCircle(const Handle(SelectBasics_EntityOwner)& OwnerId, const Handle(Geom_Circle)& TheCircle, const Standard_Real u1, const Standard_Real u2, const Standard_Boolean FilledCircle = Standard_False, const Standard_Integer NbOfPoints = 6);
//! Constructs the sensitive circle object defined by the
//! owner OwnerId, the array of triangles apolyg3d, and the Boolean FilledCircle.
//! apolyg3d is an array of consecutive triangles on the
//! circle. The triangle i+1 lies on the intersection of the
//! tangents to the circle of i and i+2. Note, that the first point of apolyg3d
//! must be equal to the last point of apolyg3d.
Standard_EXPORT Select3D_SensitiveCircle(const Handle(SelectBasics_EntityOwner)& OwnerId, const Handle(TColgp_HArray1OfPnt)& apolyg3d, const Standard_Boolean FilledCircle = Standard_False);
//! Constructs the sensitive circle object defined by the
//! owner OwnerId, the array of points apolyg3d, and the Boolean FilledCircle.
//! If the length of apolyg3d is more then 1, the first point of apolyg3d
//! must be equal to the last point of apolyg3d.
Standard_EXPORT Select3D_SensitiveCircle(const Handle(SelectBasics_EntityOwner)& OwnerId, const TColgp_Array1OfPnt& apolyg3d, const Standard_Boolean FilledCircle = Standard_False);
//! Checks whether the sensitive entity matches the picking
//! detection area (close to the picking line).
//! For details please refer to base class declaration.
Standard_EXPORT Standard_Boolean Matches (const SelectBasics_PickArgs& thePickArgs, Standard_Real& theMatchDMin, Standard_Real& theMatchDepth) ;
Standard_EXPORT Standard_Boolean Matches (const Standard_Real XMin, const Standard_Real YMin, const Standard_Real XMax, const Standard_Real YMax, const Standard_Real aTol) ;
Standard_EXPORT virtual Standard_Boolean Matches (const TColgp_Array1OfPnt2d& Polyline, const Bnd_Box2d& aBox, const Standard_Real aTol) ;
//! Compute depth of sensitive circle for the detected sub-part.
//! @param thePickLine [in] the picking line.
//! @param theDetectedIndex [in] index of the detected sub-part.
//! @return depth on the picking line.
Standard_EXPORT Standard_Real ComputeDepth (const gp_Lin& thePickLine, const Standard_Integer theDetectedIndex) const;
Standard_EXPORT void ArrayBounds (Standard_Integer& Low, Standard_Integer& Up) const;
Standard_EXPORT gp_Pnt GetPoint3d (const Standard_Integer rank) const;
Standard_EXPORT virtual void Dump (Standard_OStream& S, const Standard_Boolean FullDump = Standard_True) const;
//! Returns the copy of this.
Standard_EXPORT virtual Handle(Select3D_SensitiveEntity) GetConnected (const TopLoc_Location& theLocation) ;
Standard_EXPORT virtual void Project (const Handle(Select3D_Projector)& aProjector) ;
DEFINE_STANDARD_RTTI(Select3D_SensitiveCircle)
protected:
private:
//! Computes myCenter3D as the barycenter of points from mypolyg3d
Standard_EXPORT void ComputeCenter3D() ;
Standard_Boolean myFillStatus;
Select3D_Pnt2d myCenter2D;
Select3D_Pnt myCenter3D;
Handle(Geom_Circle) myCircle;
Standard_Real mystart;
Standard_Real myend;
};
#endif // _Select3D_SensitiveCircle_HeaderFile
|