|
||||
File indexing completed on 2025-01-18 10:03:24
0001 // Created on: 1995-03-10 0002 // Created by: Remi LEQUETTE 0003 // Copyright (c) 1995-1999 Matra Datavision 0004 // Copyright (c) 1999-2014 OPEN CASCADE SAS 0005 // 0006 // This file is part of Open CASCADE Technology software library. 0007 // 0008 // This library is free software; you can redistribute it and/or modify it under 0009 // the terms of the GNU Lesser General Public License version 2.1 as published 0010 // by the Free Software Foundation, with special exception defined in the file 0011 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT 0012 // distribution for complete text of the license and disclaimer of any warranty. 0013 // 0014 // Alternatively, this file may be used under the terms of Open CASCADE 0015 // commercial license or contractual agreement. 0016 0017 #ifndef _Draw_Box_HeaderFile 0018 #define _Draw_Box_HeaderFile 0019 0020 #include <Standard.hxx> 0021 0022 #include <Bnd_OBB.hxx> 0023 #include <Draw_Color.hxx> 0024 #include <Draw_Drawable3D.hxx> 0025 class Draw_Display; 0026 0027 0028 class Draw_Box; 0029 DEFINE_STANDARD_HANDLE(Draw_Box, Draw_Drawable3D) 0030 0031 //! a 3d box 0032 class Draw_Box : public Draw_Drawable3D 0033 { 0034 public: 0035 0036 //! Constructor 0037 Standard_EXPORT Draw_Box(const Bnd_OBB& theOBB, 0038 const Draw_Color& theColor); 0039 0040 //! Draws myOBB 0041 Standard_EXPORT void DrawOn (Draw_Display& theDis) const Standard_OVERRIDE; 0042 0043 DEFINE_STANDARD_RTTIEXT(Draw_Box,Draw_Drawable3D) 0044 0045 protected: 0046 0047 //! Converts the point (theX, theY, theZ) in local coordinate system to WCS. 0048 void ToWCS(const Standard_Real theX, 0049 const Standard_Real theY, 0050 const Standard_Real theZ, 0051 gp_Pnt& theP) const; 0052 0053 //! Moves the point thePt along X-direction of myOBB on the distance theShift. 0054 void MoveX(const Standard_Real theShift, gp_Pnt& thePt) const; 0055 0056 //! Moves the point thePt along Y-direction of myOBB on the distance theShift. 0057 void MoveY(const Standard_Real theShift, gp_Pnt& thePt) const; 0058 0059 //! Moves the point thePt along Z-direction of myOBB on the distance theShift. 0060 void MoveZ(const Standard_Real theShift, gp_Pnt& thePt) const; 0061 0062 private: 0063 0064 //! Oriented bounding box 0065 Bnd_OBB myOBB; 0066 0067 //! Color value 0068 Draw_Color myColor; 0069 }; 0070 0071 #endif // _Draw_Box_HeaderFile
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |