-- Created on: 1995-01-24
-- Created by: Rob
-- Copyright (c) 1995-1999 Matra Datavision
--- Copyright (c) 1999-2012 OPEN CASCADE SAS
+-- Copyright (c) 1999-2014 OPEN CASCADE SAS
--
--- The content of this file is subject to the Open CASCADE Technology Public
--- License Version 6.5 (the "License"). You may not use the content of this file
--- except in compliance with the License. Please obtain a copy of the License
--- at http://www.opencascade.org and read it completely before using this file.
+-- This file is part of Open CASCADE Technology software library.
--
--- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
--- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
+-- This library is free software; you can redistribute it and/or modify it under
+-- the terms of the GNU Lesser General Public License version 2.1 as published
+-- by the Free Software Foundation, with special exception defined in the file
+-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+-- distribution for complete text of the license and disclaimer of any warranty.
--
--- The Original Code and all software distributed under the License is
--- distributed on an "AS IS" basis, without warranty of any kind, and the
--- Initial Developer hereby disclaims all such warranties, including without
--- limitation, any warranties of merchantability, fitness for a particular
--- purpose or non-infringement. Please see the License for the specific terms
--- and conditions governing the rights and limitations under the License.
+-- Alternatively, this file may be used under the terms of Open CASCADE
+-- commercial license or contractual agreement.
-- modified by rob jul/ 21/ 97 : inserting locations ...
-- modified by rob jan/ 29/ 98 : Sort by deph-> add a field to be able
Is3D(me) returns Boolean from Standard is redefined static;
---Purpose: Returns true if this framework provides 3D information.
- Project (me:mutable;aProjector : Projector from Select3D) is virtual;
+ Project (me:mutable;aProjector : Projector from Select3D) is deferred;
---Level: Public
- ---Purpose:Returns the projector aProjector.
- -- In classes inheriting this framework, you must
- -- redefine this function in order to get a sensitive 2D
- -- rectangle from a 3D entity. This rectangle is the
- -- sensitive zone which makes the 3D entity selectable.
-
+ ---Purpose: In classes inheriting this framework, you must
+ -- redefine this function in order to get a sensitive 2D
+ -- rectangle from a 3D entity. This rectangle is the
+ -- sensitive zone which makes the 3D entity selectable.
MaxBoxes(me) returns Integer is redefined virtual;
---Level: Public
-- sensitive entity which can accept another connected
-- sensitive entity.//can be connected to another sensitive entity.
- Matches(me :mutable;
- X,Y : Real from Standard;
- aTol: Real from Standard;
- DMin: out Real from Standard)
- returns Boolean is redefined virtual;
- ---Purpose: Matches the coordinates X, Y with the entity found at
- -- that point within the tolerance aTol and the minimum depth DMin.
- -- You must redefine this function for every inheriting entity.
- -- You will have to call this framework inside the redefined function.
-
Matches (me :mutable;
XMin,YMin,XMax,YMax : Real from Standard;
aTol: Real from Standard)
returns Boolean from Standard is redefined virtual;
---Purpose: prevents from hiding virtual methods...
-
- GetEyeLine(me; X,Y : Real from Standard) returns Lin from gp;
- ---Purpose: Returns the eye line for the point defined by the coordinates X,Y.
-
- ComputeDepth(me;EyeLine : Lin from gp) returns Real from Standard
- is deferred;
- ---Purpose: Returns the depth of this object on the line EyeLine.
- -- EyeLine goes through the eye towards a point
- -- defined by the coordinates X,Y in the function GetEyeLine.
- ---Purpose: gives an abcissa on <aLin> .
- -- <aLin> represents the line going through
- -- the eye towards an X,Y point on the screen. This Method
- -- must return a mean Depth on this line.
-
-
- Depth(me) returns Real from Standard is redefined;
-
---Category: Location of sensitive entities...
-- Default implementations of HasLocation() and Location() rely on
-- location obtained from the entity owner, to minimize memory usage.
---Purpose: Returns true if this framework has a location defined.
Location(me) returns Location from TopLoc is virtual;
- ---C++: return const&
+ ---C++: return const
ResetLocation(me:mutable) is virtual;
---Purpose: sets the location to Identity
UpdateLocation(me:mutable;aLoc:Location from TopLoc);
-
- SetLastPrj(me:mutable;aPrj:Projector from Select3D) is virtual;
-
- SetLastDepth(me:mutable; aDepth: Real from Standard) is protected;
-
-fields
-
- mylastprj : Projector from Select3D is protected;
- mylastdepth : ShortReal from Standard;
end SensitiveEntity;