source: trunk/source/geometry/solids/specific/include/G4GenericTrap.icc @ 1324

Last change on this file since 1324 was 1316, checked in by garnier, 14 years ago

update geant4-09-04-beta-cand-01 interfaces-V09-03-09 vis-V09-03-08

File size: 4.7 KB
Line 
1//
2// ********************************************************************
3// * License and Disclaimer                                           *
4// *                                                                  *
5// * The  Geant4 software  is  copyright of the Copyright Holders  of *
6// * the Geant4 Collaboration.  It is provided  under  the terms  and *
7// * conditions of the Geant4 Software License,  included in the file *
8// * LICENSE and available at  http://cern.ch/geant4/license .  These *
9// * include a list of copyright holders.                             *
10// *                                                                  *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work  make  any representation or  warranty, express or implied, *
14// * regarding  this  software system or assume any liability for its *
15// * use.  Please see the license in the file  LICENSE  and URL above *
16// * for the full disclaimer and the limitation of liability.         *
17// *                                                                  *
18// * This  code  implementation is the result of  the  scientific and *
19// * technical work of the GEANT4 collaboration.                      *
20// * By using,  copying,  modifying or  distributing the software (or *
21// * any work based  on the software)  you  agree  to acknowledge its *
22// * use  in  resulting  scientific  publications,  and indicate your *
23// * acceptance of all terms of the Geant4 Software license.          *
24// ********************************************************************
25//
26//
27// $Id: G4GenericTrap.icc,v 1.4 2010/06/09 07:39:31 gcosmo Exp $
28// GEANT4 tag $Name: geant4-09-04-beta-cand-01 $
29//
30// --------------------------------------------------------------------
31// GEANT 4 inline definitions file
32//
33// G4GenericTrap.icc
34//
35// Implementation of inline methods of G4GenericTrap
36// --------------------------------------------------------------------
37
38inline
39G4double G4GenericTrap::GetZHalfLength() const
40{
41  return fDz;
42}
43
44// --------------------------------------------------------------------
45
46inline
47G4int G4GenericTrap::GetNofVertices() const
48{
49  return fVertices.size();
50
51
52// --------------------------------------------------------------------
53
54inline
55G4TwoVector G4GenericTrap::GetVertex(G4int index) const
56{
57  if ( index<0 || index >= G4int(fVertices.size()) )
58  {
59    G4Exception ("G4GenericTrap::GetVertex()", "InvalidInput",
60                 FatalException, "Index outside range.");
61    return G4TwoVector();
62  }
63  return fVertices[index];
64
65
66// --------------------------------------------------------------------
67
68inline
69const std::vector<G4TwoVector>& G4GenericTrap::GetVertices() const
70{
71  return fVertices;
72
73
74// --------------------------------------------------------------------
75
76inline
77G4double G4GenericTrap::GetTwistAngle(G4int index) const
78{
79  if ( (index<0) || (index >= G4int(fVertices.size())) )
80  {
81    G4Exception ("G4GenericTrap::GetTwistAngle()", "InvalidInput",
82                 FatalException, "Index outside range.");
83    return 0.;
84  }
85  return fTwist[index];
86}
87
88// --------------------------------------------------------------------
89
90inline
91G4bool G4GenericTrap::IsTwisted() const
92{
93  return fIsTwisted;
94}
95
96// --------------------------------------------------------------------
97
98inline
99void G4GenericTrap::SetTwistAngle(G4int index, G4double twist)
100{
101  if ( (index<0) || (index >= G4int(fVertices.size())) )
102  {
103    G4Exception ("G4GenericTrap::SetTwistAngle()", "InvalidInput",
104                 FatalException, "Index outside range.");
105  }
106  else
107  {
108    fTwist[index]=twist;
109  }
110}
111
112// --------------------------------------------------------------------
113
114inline
115G4GeometryType G4GenericTrap::GetEntityType() const
116{
117  return G4String("G4GenericTrap");
118}
119 
120// --------------------------------------------------------------------
121
122inline
123G4double G4GenericTrap::GetCubicVolume()
124{
125  if(fCubicVolume != 0.) {;}
126  else   { fCubicVolume = G4VSolid::GetCubicVolume(); }
127  return fCubicVolume;
128}
129
130// --------------------------------------------------------------------
131
132inline
133G4int G4GenericTrap::GetVisSubdivisions()const
134{
135  return fVisSubdivisions;
136}
137
138// --------------------------------------------------------------------
139
140inline
141void G4GenericTrap::SetVisSubdivisions(G4int subdiv)
142{
143  fVisSubdivisions=subdiv;
144}
145
146// --------------------------------------------------------------------
147
148inline
149G4ThreeVector G4GenericTrap::GetMinimumBBox() const
150{
151  return fMinBBoxVector;
152}
153
154// --------------------------------------------------------------------
155
156inline
157G4ThreeVector G4GenericTrap::GetMaximumBBox() const
158{
159  return fMaxBBoxVector;
160}
161
162// --------------------------------------------------------------------
163
Note: See TracBrowser for help on using the repository browser.