VGM
Version 5.5
Toggle main menu visibility
Loading...
Searching...
No Matches
packages
VGM
include
VGM
solids
IExtrudedSolid.h
Go to the documentation of this file.
1
// $Id$
2
3
// -----------------------------------------------------------------------
4
// The VGM 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
19
20
#ifndef VGM_I_EXTRUDED_SOLID_H
21
#define VGM_I_EXTRUDED_SOLID_H
22
23
#include "
VGM/common/TwoVector.h
"
24
#include "
VGM/solids/ISolid.h
"
25
26
#include <iostream>
27
28
namespace
VGM
{
29
30
class
IExtrudedSolid
:
public
virtual
ISolid
31
{
32
public
:
33
virtual
~IExtrudedSolid
() {}
34
35
// methods
36
37
virtual
SolidType
Type
()
const
= 0;
38
virtual
std::string
Name
()
const
= 0;
39
42
virtual
int
NofVertices
()
const
= 0;
45
virtual
TwoVector
Vertex
(
int
index)
const
= 0;
48
virtual
int
NofZSections
()
const
= 0;
51
virtual
double
ZPosition
(
int
iz)
const
= 0;
54
virtual
TwoVector
Offset
(
int
iz)
const
= 0;
57
virtual
double
Scale
(
int
iz)
const
= 0;
58
59
// streaming
60
virtual
std::ostream&
Put
(std::ostream& out)
const
= 0;
61
};
62
63
}
// namespace VGM
64
65
std::ostream&
operator<<
(std::ostream& out,
const
VGM::IExtrudedSolid
& xtru);
66
67
#endif
// VGM_I_EXTRUDED_SOLID_H
operator<<
std::ostream & operator<<(std::ostream &out, const VGM::IExtrudedSolid &xtru)
Definition
VExtrudedSolid.cxx:22
ISolid.h
TwoVector.h
VGM::IExtrudedSolid
The VGM interface to extruded solids.
Definition
IExtrudedSolid.h:31
VGM::IExtrudedSolid::~IExtrudedSolid
virtual ~IExtrudedSolid()
Definition
IExtrudedSolid.h:33
VGM::IExtrudedSolid::Name
virtual std::string Name() const =0
Return the name of this solid.
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::IExtrudedSolid::Type
virtual SolidType Type() const =0
Return the type of this solid.
VGM::IExtrudedSolid::Put
virtual std::ostream & Put(std::ostream &out) const =0
Put the printing of the solid parameters in the out stream.
VGM::ISolid
The VGM interface to solids.
Definition
ISolid.h:58
VGM
VGM interfaces.
Definition
VMedium.h:28
VGM::TwoVector
std::pair< double, double > TwoVector
Definition
TwoVector.h:28
VGM::SolidType
SolidType
Definition
ISolid.h:29
Generated on
for VGM by
1.17.0