File indexing completed on 2025-01-18 10:02:55
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _AIS_Point_HeaderFile
0018 #define _AIS_Point_HeaderFile
0019
0020 #include <AIS_InteractiveObject.hxx>
0021
0022 class Geom_Point;
0023 class TopoDS_Vertex;
0024
0025
0026
0027 class AIS_Point : public AIS_InteractiveObject
0028 {
0029 DEFINE_STANDARD_RTTIEXT(AIS_Point, AIS_InteractiveObject)
0030 public:
0031
0032
0033
0034 Standard_EXPORT AIS_Point(const Handle(Geom_Point)& aComponent);
0035
0036
0037 virtual Standard_Integer Signature() const Standard_OVERRIDE { return 1; }
0038
0039
0040 virtual AIS_KindOfInteractive Type() const Standard_OVERRIDE { return AIS_KindOfInteractive_Datum; }
0041
0042
0043 Standard_EXPORT Handle(Geom_Point) Component();
0044
0045
0046 Standard_EXPORT void SetComponent (const Handle(Geom_Point)& aComponent);
0047
0048
0049 Standard_EXPORT Standard_Boolean AcceptDisplayMode (const Standard_Integer aMode) const Standard_OVERRIDE;
0050
0051
0052 Standard_EXPORT virtual void SetColor (const Quantity_Color& theColor) Standard_OVERRIDE;
0053
0054
0055 Standard_EXPORT virtual void UnsetColor() Standard_OVERRIDE;
0056
0057
0058
0059
0060
0061 Standard_EXPORT void SetMarker (const Aspect_TypeOfMarker aType);
0062
0063
0064 Standard_EXPORT void UnsetMarker();
0065
0066
0067 Standard_Boolean HasMarker() const { return myHasTOM; }
0068
0069
0070 Standard_EXPORT TopoDS_Vertex Vertex() const;
0071
0072 protected:
0073
0074 Standard_EXPORT virtual void Compute (const Handle(PrsMgr_PresentationManager)& thePrsMgr,
0075 const Handle(Prs3d_Presentation)& thePrs,
0076 const Standard_Integer theMode) Standard_OVERRIDE;
0077
0078 private:
0079
0080 Standard_EXPORT void ComputeSelection (const Handle(SelectMgr_Selection)& aSelection, const Standard_Integer aMode) Standard_OVERRIDE;
0081
0082 Standard_EXPORT void UpdatePointValues();
0083
0084
0085 void replaceWithNewPointAspect (const Handle(Prs3d_PointAspect)& theAspect);
0086
0087 private:
0088
0089 Handle(Geom_Point) myComponent;
0090 Standard_Boolean myHasTOM;
0091 Aspect_TypeOfMarker myTOM;
0092
0093 };
0094
0095 DEFINE_STANDARD_HANDLE(AIS_Point, AIS_InteractiveObject)
0096
0097 #endif