PartHitItems.h
1 //##################################################################################################
2 //
3 // Ceetron Desktop Components
4 // Component: UnstructGrid
5 //
6 // --------------------------------------------------------------------------------------------
7 // Copyright (C) 2014, Ceetron AS
8 // This is UNPUBLISHED PROPRIETARY SOURCE CODE of Ceetron AS. The contents of this file may
9 // not be disclosed to third parties, copied or duplicated in any form, in whole or in part,
10 // without the prior written permission of Ceetron AS.
11 //##################################################################################################
12 
13 #pragma once
14 
15 #include "CeeUnstructGrid/Base.h"
16 #include "CeeCore/Vec3d.h"
17 #include "CeeUnstructGrid/HitItem.h"
18 
19 #include <vector>
20 
21 namespace cee {
22 namespace ug {
23 
24 
25 //==================================================================================================
26 //
27 //
28 //
29 //==================================================================================================
30 class CEE_UG_EXPORT PartHitItems
31 {
32 public:
33  PartHitItems();
34  PartHitItems(const PartHitItems& other);
35  ~PartHitItems();
36 
37  PartHitItems& operator=(const PartHitItems& other);
38 
39  int stateId() const;
40  void setStateId(int stateId);
41 
42  size_t frameIndex() const;
43  void setFrameIndex(size_t frameIndex);
44 
45  size_t geometryIndex() const;
46  void setGeometryIndex(size_t geometryIndex);
47 
48  int partId() const;
49  void setPartId(int itemId);
50 
51  size_t partIndex() const;
52  void setPartIndex(size_t partIndex);
53 
54  const std::vector<unsigned int>& elementIndices() const;
55  void setElementIndices(const std::vector<unsigned int>& indices);
56 
57  size_t elementCount() const;
58  HitItem elementHitItem(size_t elementIndex) const;
59 
60 private:
61  CEE_PRIVATE_IMPL(PartHitItems);
62 };
63 
64 
65 } // namespace ug
66 } // namespace cee
Namespace cee contains all functionality and structures under the Core component. ...
Definition: AppComponent.cpp:26
Class for storing identifier for a part (state id, geometry id, part id/index) and optionally also a ...
Definition: PartHitItems.h:30
Small class containing the data for a hit of an intersection between a ray and a part in an UnstructG...
Definition: HitItem.h:26