VGM
Version 5.5
Toggle main menu visibility
Loading...
Searching...
No Matches
packages
BaseVGM
source
solids
VExtrudedSolid.cxx
Go to the documentation of this file.
1
// $Id$
2
3
// -----------------------------------------------------------------------
4
// The BaseVGM package of the Virtual Geometry Model
5
// Copyright (C) 2007, Ivana Hrivnacova
6
// All rights reserved.
7
//
8
// For the licensing terms see vgm/LICENSE.
9
// Contact: ivana@ipno.in2p3.fr
10
// -----------------------------------------------------------------------
11
12
//
13
// Class VExtrudedSolid
14
// ---------------------
15
// The ABC for ExtrudedSolid solids.
16
//
17
// Author: Ivana Hrivnacova; IPN Orsay
18
19
#include "
BaseVGM/solids/VExtrudedSolid.h
"
20
21
//_____________________________________________________________________________
22
std::ostream&
operator<<
(std::ostream& out,
const
VGM::IExtrudedSolid
& xtru)
23
{
24
const
VGM::ISolid
& xtruSolid = xtru;
25
out << xtruSolid;
26
return
out;
27
}
28
29
//_____________________________________________________________________________
30
BaseVGM::VExtrudedSolid::VExtrudedSolid
() :
VGM
::IExtrudedSolid()
31
{
33
}
34
35
//_____________________________________________________________________________
36
BaseVGM::VExtrudedSolid::~VExtrudedSolid
()
37
{
38
//
39
}
40
41
//_____________________________________________________________________________
42
std::ostream&
BaseVGM::VExtrudedSolid::Put
(std::ostream& out)
const
43
{
44
out << std::endl;
45
out <<
"Polygon, "
<<
NofVertices
() <<
" vertices:"
<< std::endl;
46
for
(
int
i = 0; i <
NofVertices
(); i++) {
47
out <<
" ("
<<
Vertex
(i).first <<
", "
<<
Vertex
(i).second <<
")"
;
48
}
49
out <<
" mm"
<< std::endl;
50
51
out <<
"Planes:"
<< std::endl;
52
for
(
int
i = 0; i <
NofZSections
(); i++) {
53
out <<
" z = "
<<
ZPosition
(i) <<
" mm "
54
<<
" x0 = "
<<
Offset
(i).first <<
" mm "
55
<<
" y0 = "
<<
Offset
(i).second <<
" mm "
56
<<
" scale= "
<<
Scale
(i) << std::endl;
57
}
58
59
return
out;
60
}
operator<<
std::ostream & operator<<(std::ostream &out, const VGM::IExtrudedSolid &xtru)
Definition
VExtrudedSolid.cxx:22
VExtrudedSolid.h
BaseVGM::VExtrudedSolid::VExtrudedSolid
VExtrudedSolid()
Definition
VExtrudedSolid.cxx:30
BaseVGM::VExtrudedSolid::Put
virtual std::ostream & Put(std::ostream &out) const
Put the printing of the solid parameters in the out stream.
Definition
VExtrudedSolid.cxx:42
BaseVGM::VExtrudedSolid::~VExtrudedSolid
virtual ~VExtrudedSolid()
Definition
VExtrudedSolid.cxx:36
VGM::IExtrudedSolid
The VGM interface to extruded solids.
Definition
IExtrudedSolid.h:31
VGM::IExtrudedSolid::Offset
virtual TwoVector Offset(int iz) const =0
Return the polygon offset in iz-th side.
VGM::IExtrudedSolid::NofZSections
virtual int NofZSections() const =0
Return the number of planes perpendicular to the z axis.
VGM::IExtrudedSolid::ZPosition
virtual double ZPosition(int iz) const =0
Return the z position of the iz-th plane in mm.
VGM::IExtrudedSolid::NofVertices
virtual int NofVertices() const =0
Return the number of vertices of outline polygon.
VGM::IExtrudedSolid::Vertex
virtual TwoVector Vertex(int index) const =0
Return the index-th vertex of outline polygon.
VGM::IExtrudedSolid::Scale
virtual double Scale(int iz) const =0
Return the polygon scale in iz-th side.
VGM::ISolid
The VGM interface to solids.
Definition
ISolid.h:58
VGM
VGM interfaces.
Definition
VMedium.h:28
Generated on
for VGM by
1.17.0