PartHitItems.h
1 //##################################################################################################
2 //
3 // Ceetron Desktop Components
4 // Component: Geometry
5 //
6 // --------------------------------------------------------------------------------------------
7 // Copyright (C) 2013, 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 "CeeGeometry/Base.h"
16 #include "CeeCore/Base.h"
17 
18 #include <vector>
19 
20 namespace cee {
21 namespace geo {
22 
23 class Part;
24 
25 //==================================================================================================
26 //
27 //
28 //
29 //==================================================================================================
30 struct CEE_GEO_EXPORT PartHitItems
31 {
32 public:
33  PartHitItems();
34  PartHitItems(const PartHitItems& other);
35  ~PartHitItems();
36 
37  PartHitItems& operator=(const PartHitItems& other);
38 
39  const Part* part() const;
40  Part* part();
41 
42  const std::vector<size_t>& itemIndexArr() const;
43  const std::vector<size_t>& vertexIndexArr() const;
44 
45  const std::vector<size_t>& polylineSubIndexArr() const;
46 
47 private:
48  CEE_PRIVATE_F(GeometryModel);
49  CEE_PRIVATE_IMPL(PartHitItems);
50 };
51 
52 } // namespace geo
53 } // namespace cee
Namespace cee contains all functionality and structures under the Core component. ...
Definition: AppComponent.cpp:26
The part and the indices of the items within the part that was hit.
Definition: PartHitItems.h:30
GeometryModel is a subclass of Model that can handle a large number of parts efficiently.
Definition: GeometryModel.h:36
Geometry part and how it is to be drawn.
Definition: Part.h:32