1 -- Created on: 1991-11-21
2 -- Created by: NW,JPB,CAL
3 -- Copyright (c) 1991-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
6 -- This file is part of Open CASCADE Technology software library.
8 -- This library is free software; you can redistribute it and/or modify it under
9 -- the terms of the GNU Lesser General Public License version 2.1 as published
10 -- by the Free Software Foundation, with special exception defined in the file
11 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 -- distribution for complete text of the license and disclaimer of any warranty.
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
17 class PickDescriptor from Visual3d
21 ---Purpose: This class contains the pick information.
22 -- It contains a certain number of PickPaths.
24 ---Keywords: Pick Descriptor, Path, Structure, PickId
31 Structure from Graphic3d,
32 ContextPick from Visual3d,
33 PickPath from Visual3d,
34 HSequenceOfPickPath from Visual3d
38 PickError from Visual3d
42 Create ( CTX : ContextPick from Visual3d )
43 returns PickDescriptor from Visual3d;
45 ---Purpose: Creates a PickDescriptor <me>.
47 ---------------------------------------------------
48 -- Category: Methods to modify the class definition
49 ---------------------------------------------------
51 AddPickPath ( me : in out;
52 APickPath : PickPath from Visual3d )
55 ---Purpose: Adds a PickPath to PickDescriptor <me>.
56 ---Category: Methods to modify the class definition
61 ---Purpose: Erases all the information in <me>.
62 ---Category: Methods to modify the class definition
64 ----------------------------
65 -- Category: Inquire methods
66 ----------------------------
69 returns Integer from Standard
72 ---Purpose: Returns the pick depth, that is the
73 -- number of PickPaths available in the PickDescriptor.
74 ---Category: Inquire methods
77 returns HSequenceOfPickPath from Visual3d
80 ---Purpose: Returns the group of PickPaths of <me>.
81 ---Category: Inquire methods
84 returns Structure from Graphic3d
86 ---Purpose: Returns the root structure.
87 -- If the pick order was of the type TOO_TOPFIRST
88 -- then it's the first structure.
89 -- If the pick order was of the type TOO_BOTTOMFIRST
90 -- Then it's the last structure.
91 -- The pick order is set by the method SetOrder
93 -- Category: Inquire methods
94 -- Warning: Raises PickError if Depth == 0 (no picked structure).
95 raises PickError from Visual3d is static;
98 returns Integer from Standard
100 ---Purpose: Returns the root structure pickid.
101 -- If the pick order was of the type TOO_TOPFIRST
102 -- then it's the first pickid.
103 -- If the pick order was of the type TOO_BOTTOMFIRST
104 -- then it's the last pickid.
105 -- The pick order is set by the method SetOrder
107 -- Category: Inquire methods
108 -- Warning: Raises PickError if Depth == 0 (no picked structure).
109 raises PickError from Visual3d is static;
111 TopElementNumber ( me )
112 returns Integer from Standard
114 ---Purpose: Returns the root structure element number.
115 -- If the pick order was of the type TOO_TOPFIRST
116 -- then it's the first element number.
117 -- If the pick order was of the type TOO_BOTTOMFIRST
118 -- then it's the last element number.
119 -- The pick order is set by the method SetOrder
121 -- Category: Inquire methods
122 -- Warning: Raises PickError if Depth == 0 (no picked structure).
123 raises PickError from Visual3d is static;
130 -- Class : Visual3d_PickDescriptor
132 -- Purpose : Declaration of variables specific to the class
133 -- describing a pick.
135 -- Reminders : A pick return is defined by:
136 -- - a sequence of (Elem_number, Pick_Id, Struct_Id)
140 MyPickPathSequence : HSequenceOfPickPath from Visual3d;
142 -- context associated to a pick
143 MyContext : ContextPick from Visual3d;