Open CASCADE Technology 6.6.0
Static Public Member Functions
AIS Class Reference

Application Interactive Services provide the means to
create links between an application GUI viewer and
the packages which are used to manage selection
and presentation. The tools AIS defined in order to
do this include different sorts of entities: both the
selectable viewable objects themselves and the
context and attribute managers to define their
selection and display.
To orient the user as he works in a modeling
environment, views and selections must be
comprehensible. There must be several different sorts
of selectable and viewable object defined. These must
also be interactive, that is, connecting graphic
representation and the underlying reference
geometry. These entities are called Interactive
Objects, and are divided into four types:
More...

#include <AIS.hxx>

Static Public Member Functions

static gp_Pnt Nearest (const TopoDS_Shape &aShape, const gp_Pnt &aPoint)
 Returns the nearest point in a shape. This is used by
several classes in calculation of dimensions.

static gp_Pnt Farest (const TopoDS_Shape &aShape, const gp_Pnt &aPoint)
static Standard_Boolean ComputeGeometry (const TopoDS_Edge &anEdge, Handle< Geom_Curve > &aCurve, gp_Pnt &FirstPnt, gp_Pnt &LastPnt)
 Used by 2d Relation only
Computes the 3d geometry of <anEdge> in the current WorkingPlane
and the extremities if any
Return TRUE if ok

static Standard_Boolean ComputeGeometry (const TopoDS_Edge &anEdge, Handle< Geom_Curve > &aCurve, gp_Pnt &FirstPnt, gp_Pnt &LastPnt, Handle< Geom_Curve > &extCurve, Standard_Boolean &isinfinite, Standard_Boolean &isOnPlane, const Handle< Geom_Plane > &aPlane)
 Used by 2d Relation only
Computes the 3d geometry of <anEdge> in the current WorkingPlane
and the extremities if any.
If <aCurve> is not in the current plane, <extCurve> contains
the not projected curve associated to <anEdge>.
If <anEdge> is infinite, <isinfinite> = true and the 2
parameters <FirstPnt> and <LastPnt> have no signification.
Return TRUE if ok

static Standard_Boolean ComputeGeometry (const TopoDS_Edge &anEdge1, const TopoDS_Edge &anEdge2, Handle< Geom_Curve > &aCurve1, Handle< Geom_Curve > &aCurve2, gp_Pnt &FirstPnt1, gp_Pnt &LastPnt1, gp_Pnt &FirstPnt2, gp_Pnt &LastPnt2, const Handle< Geom_Plane > &aPlane)
 Used by 2d Relation only
Computes the 3d geometry of <anEdge> in the current WorkingPlane
and the extremities if any
Return TRUE if ok

static Standard_Boolean ComputeGeometry (const TopoDS_Edge &anEdge1, const TopoDS_Edge &anEdge2, Standard_Integer &indexExt, Handle< Geom_Curve > &aCurve1, Handle< Geom_Curve > &aCurve2, gp_Pnt &FirstPnt1, gp_Pnt &LastPnt1, gp_Pnt &FirstPnt2, gp_Pnt &LastPnt2, Handle< Geom_Curve > &ExtCurve, Standard_Boolean &isinfinite1, Standard_Boolean &isinfinite2, const Handle< Geom_Plane > &aPlane)
 Used by 2d Relation only Computes the 3d geometry
of<anEdge1> and <anEdge2> in the current Plane and the
extremities if any. Return in ExtCurve the 3d curve
(not projected in the plane) of the first edge if
<indexExt> =1 or of the 2nd edge if <indexExt> = 2. If
<indexExt> = 0, ExtCurve is Null. if there is an edge
external to the plane, <isinfinite> is true if this
edge is infinite. So, the extremities of it are not
significant. Return TRUE if ok

static Standard_Boolean ComputeGeomCurve (Handle< Geom_Curve > &aCurve, const Standard_Real first1, const Standard_Real last1, gp_Pnt &FirstPnt1, gp_Pnt &LastPnt1, const Handle< Geom_Plane > &aPlane, Standard_Boolean &isOnPlane)
 Checks if aCurve belongs to aPlane; if not, projects aCurve in aPlane
and returns aCurve;
Return TRUE if ok

static Standard_Boolean ComputeGeometry (const TopoDS_Vertex &aVertex, gp_Pnt &point, const Handle< Geom_Plane > &aPlane, Standard_Boolean &isOnPlane)
static Standard_Boolean GetPlaneFromFace (const TopoDS_Face &aFace, gp_Pln &aPlane, Handle< Geom_Surface > &aSurf, AIS_KindOfSurface &aSurfType, Standard_Real &Offset)
 Tryes to get Plane from Face. Returns Surface of Face
in aSurf. Returns Standard_True and Plane of Face in
aPlane in following cases:
Face is Plane, Offset of Plane,
Extrusion of Line and Offset of Extrusion of Line
Returns pure type of Surface which can be:
Plane, Cylinder, Cone, Sphere, Torus,
SurfaceOfRevolution, SurfaceOfExtrusion

static void InitFaceLength (const TopoDS_Face &aFace, gp_Pln &aPlane, Handle< Geom_Surface > &aSurface, AIS_KindOfSurface &aSurfaceType, Standard_Real &anOffset)
static void ComputeLengthBetweenPlanarFaces (const TopoDS_Face &FirstFace, const TopoDS_Face &SecondFace, const gp_Pln &Plane1, const gp_Pln &Plane2, Standard_Real &Value, gp_Pnt &FirstAttach, gp_Pnt &SecondAttach, gp_Dir &DirAttach, const Standard_Boolean AutomaticPos, gp_Pnt &Position)
static void ComputeLengthBetweenCurvilinearFaces (const TopoDS_Face &FirstFace, const TopoDS_Face &SecondFace, Handle< Geom_Surface > &FirstSurf, Handle< Geom_Surface > &SecondSurf, const Standard_Boolean AutomaticPos, Standard_Real &Value, gp_Pnt &Position, gp_Pnt &FirstAttach, gp_Pnt &SecondAttach, gp_Dir &DirAttach)
static void ComputeAngleBetweenPlanarFaces (const TopoDS_Face &FirstFace, const TopoDS_Face &SecondFace, const Handle< Geom_Surface > &Surf2, const gp_Ax1 &Axis, const Standard_Real Value, const Standard_Boolean AutomaticPos, gp_Pnt &Position, gp_Pnt &Center, gp_Pnt &FirstAttach, gp_Pnt &SecondAttach, gp_Dir &FirstDir, gp_Dir &SecondDir)
 Computes geometric parameters for planar faces for
Angular dimensions

static void ComputeAngleBetweenCurvilinearFaces (const TopoDS_Face &FirstFace, const TopoDS_Face &SecondFace, const Handle< Geom_Surface > &FirstSurf, const Handle< Geom_Surface > &SecondSurf, const AIS_KindOfSurface FirstSurfType, const AIS_KindOfSurface SecondSurfType, const gp_Ax1 &Axis, const Standard_Real Value, const Standard_Boolean AutomaticPos, gp_Pnt &Position, gp_Pnt &Center, gp_Pnt &FirstAttach, gp_Pnt &SecondAttach, gp_Dir &FirstDir, gp_Dir &SecondDir, Handle< Geom_Plane > &Plane)
 Computes geometric parameters for curvilinear faces for
Angular dimensions

static gp_Pnt ProjectPointOnPlane (const gp_Pnt &aPoint, const gp_Pln &aPlane)
static gp_Pnt ProjectPointOnLine (const gp_Pnt &aPoint, const gp_Lin &aLine)
static gp_Pnt TranslatePointToBound (const gp_Pnt &aPoint, const gp_Dir &aDir, const Bnd_Box &aBndBox)
static Standard_Boolean InDomain (const Standard_Real aFirstPar, const Standard_Real aLastPar, const Standard_Real anAttachPar)
 returns True if point with anAttachPar is
in domain of arc

static gp_Pnt NearestApex (const gp_Elips &elips, const gp_Pnt &pApex, const gp_Pnt &nApex, const Standard_Real fpara, const Standard_Real lpara, Standard_Boolean &IsInDomain)
 computes nearest to ellipse arc apex

static Standard_Real DistanceFromApex (const gp_Elips &elips, const gp_Pnt &Apex, const Standard_Real par)
 computes length of ellipse arc in parametric units

static void ComputeProjEdgePresentation (const Handle< Prs3d_Presentation > &aPres, const Handle< AIS_Drawer > &aDrawer, const TopoDS_Edge &anEdge, const Handle< Geom_Curve > &ProjCurve, const gp_Pnt &FirstP, const gp_Pnt &LastP, const Quantity_NameOfColor aColor=Quantity_NOC_PURPLE, const Standard_Real aWidth=2, const Aspect_TypeOfLine aProjTOL=Aspect_TOL_DASH, const Aspect_TypeOfLine aCallTOL=Aspect_TOL_DOT)
static void ComputeProjVertexPresentation (const Handle< Prs3d_Presentation > &aPres, const Handle< AIS_Drawer > &aDrawer, const TopoDS_Vertex &aVertex, const gp_Pnt &ProjPoint, const Quantity_NameOfColor aColor=Quantity_NOC_PURPLE, const Standard_Real aWidth=2, const Aspect_TypeOfMarker aProjTOM=Aspect_TOM_PLUS, const Aspect_TypeOfLine aCallTOL=Aspect_TOL_DOT)

Detailed Description


Member Function Documentation

static void AIS::ComputeAngleBetweenCurvilinearFaces ( const TopoDS_Face FirstFace,
const TopoDS_Face SecondFace,
const Handle< Geom_Surface > &  FirstSurf,
const Handle< Geom_Surface > &  SecondSurf,
const AIS_KindOfSurface  FirstSurfType,
const AIS_KindOfSurface  SecondSurfType,
const gp_Ax1 Axis,
const Standard_Real  Value,
const Standard_Boolean  AutomaticPos,
gp_Pnt Position,
gp_Pnt Center,
gp_Pnt FirstAttach,
gp_Pnt SecondAttach,
gp_Dir FirstDir,
gp_Dir SecondDir,
Handle< Geom_Plane > &  Plane 
) [static]
static void AIS::ComputeAngleBetweenPlanarFaces ( const TopoDS_Face FirstFace,
const TopoDS_Face SecondFace,
const Handle< Geom_Surface > &  Surf2,
const gp_Ax1 Axis,
const Standard_Real  Value,
const Standard_Boolean  AutomaticPos,
gp_Pnt Position,
gp_Pnt Center,
gp_Pnt FirstAttach,
gp_Pnt SecondAttach,
gp_Dir FirstDir,
gp_Dir SecondDir 
) [static]
static Standard_Boolean AIS::ComputeGeomCurve ( Handle< Geom_Curve > &  aCurve,
const Standard_Real  first1,
const Standard_Real  last1,
gp_Pnt FirstPnt1,
gp_Pnt LastPnt1,
const Handle< Geom_Plane > &  aPlane,
Standard_Boolean isOnPlane 
) [static]
static Standard_Boolean AIS::ComputeGeometry ( const TopoDS_Edge anEdge,
Handle< Geom_Curve > &  aCurve,
gp_Pnt FirstPnt,
gp_Pnt LastPnt,
Handle< Geom_Curve > &  extCurve,
Standard_Boolean isinfinite,
Standard_Boolean isOnPlane,
const Handle< Geom_Plane > &  aPlane 
) [static]
static Standard_Boolean AIS::ComputeGeometry ( const TopoDS_Vertex aVertex,
gp_Pnt point,
const Handle< Geom_Plane > &  aPlane,
Standard_Boolean isOnPlane 
) [static]
static Standard_Boolean AIS::ComputeGeometry ( const TopoDS_Edge anEdge1,
const TopoDS_Edge anEdge2,
Handle< Geom_Curve > &  aCurve1,
Handle< Geom_Curve > &  aCurve2,
gp_Pnt FirstPnt1,
gp_Pnt LastPnt1,
gp_Pnt FirstPnt2,
gp_Pnt LastPnt2,
const Handle< Geom_Plane > &  aPlane 
) [static]
static Standard_Boolean AIS::ComputeGeometry ( const TopoDS_Edge anEdge,
Handle< Geom_Curve > &  aCurve,
gp_Pnt FirstPnt,
gp_Pnt LastPnt 
) [static]
static Standard_Boolean AIS::ComputeGeometry ( const TopoDS_Edge anEdge1,
const TopoDS_Edge anEdge2,
Standard_Integer indexExt,
Handle< Geom_Curve > &  aCurve1,
Handle< Geom_Curve > &  aCurve2,
gp_Pnt FirstPnt1,
gp_Pnt LastPnt1,
gp_Pnt FirstPnt2,
gp_Pnt LastPnt2,
Handle< Geom_Curve > &  ExtCurve,
Standard_Boolean isinfinite1,
Standard_Boolean isinfinite2,
const Handle< Geom_Plane > &  aPlane 
) [static]
static void AIS::ComputeLengthBetweenCurvilinearFaces ( const TopoDS_Face FirstFace,
const TopoDS_Face SecondFace,
Handle< Geom_Surface > &  FirstSurf,
Handle< Geom_Surface > &  SecondSurf,
const Standard_Boolean  AutomaticPos,
Standard_Real Value,
gp_Pnt Position,
gp_Pnt FirstAttach,
gp_Pnt SecondAttach,
gp_Dir DirAttach 
) [static]
static void AIS::ComputeLengthBetweenPlanarFaces ( const TopoDS_Face FirstFace,
const TopoDS_Face SecondFace,
const gp_Pln Plane1,
const gp_Pln Plane2,
Standard_Real Value,
gp_Pnt FirstAttach,
gp_Pnt SecondAttach,
gp_Dir DirAttach,
const Standard_Boolean  AutomaticPos,
gp_Pnt Position 
) [static]
static void AIS::ComputeProjEdgePresentation ( const Handle< Prs3d_Presentation > &  aPres,
const Handle< AIS_Drawer > &  aDrawer,
const TopoDS_Edge anEdge,
const Handle< Geom_Curve > &  ProjCurve,
const gp_Pnt FirstP,
const gp_Pnt LastP,
const Quantity_NameOfColor  aColor = Quantity_NOC_PURPLE,
const Standard_Real  aWidth = 2,
const Aspect_TypeOfLine  aProjTOL = Aspect_TOL_DASH,
const Aspect_TypeOfLine  aCallTOL = Aspect_TOL_DOT 
) [static]
static void AIS::ComputeProjVertexPresentation ( const Handle< Prs3d_Presentation > &  aPres,
const Handle< AIS_Drawer > &  aDrawer,
const TopoDS_Vertex aVertex,
const gp_Pnt ProjPoint,
const Quantity_NameOfColor  aColor = Quantity_NOC_PURPLE,
const Standard_Real  aWidth = 2,
const Aspect_TypeOfMarker  aProjTOM = Aspect_TOM_PLUS,
const Aspect_TypeOfLine  aCallTOL = Aspect_TOL_DOT 
) [static]
static Standard_Real AIS::DistanceFromApex ( const gp_Elips elips,
const gp_Pnt Apex,
const Standard_Real  par 
) [static]
static gp_Pnt AIS::Farest ( const TopoDS_Shape aShape,
const gp_Pnt aPoint 
) [static]
static Standard_Boolean AIS::GetPlaneFromFace ( const TopoDS_Face aFace,
gp_Pln aPlane,
Handle< Geom_Surface > &  aSurf,
AIS_KindOfSurface aSurfType,
Standard_Real Offset 
) [static]
static Standard_Boolean AIS::InDomain ( const Standard_Real  aFirstPar,
const Standard_Real  aLastPar,
const Standard_Real  anAttachPar 
) [static]
static void AIS::InitFaceLength ( const TopoDS_Face aFace,
gp_Pln aPlane,
Handle< Geom_Surface > &  aSurface,
AIS_KindOfSurface aSurfaceType,
Standard_Real anOffset 
) [static]
static gp_Pnt AIS::Nearest ( const TopoDS_Shape aShape,
const gp_Pnt aPoint 
) [static]
static gp_Pnt AIS::NearestApex ( const gp_Elips elips,
const gp_Pnt pApex,
const gp_Pnt nApex,
const Standard_Real  fpara,
const Standard_Real  lpara,
Standard_Boolean IsInDomain 
) [static]
static gp_Pnt AIS::ProjectPointOnLine ( const gp_Pnt aPoint,
const gp_Lin aLine 
) [static]
static gp_Pnt AIS::ProjectPointOnPlane ( const gp_Pnt aPoint,
const gp_Pln aPlane 
) [static]
static gp_Pnt AIS::TranslatePointToBound ( const gp_Pnt aPoint,
const gp_Dir aDir,
const Bnd_Box aBndBox 
) [static]

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines