Topologic  0.8.9
Aperture.h
1 // This file is part of Topologic software library.
2 // Copyright(C) 2019, Cardiff University and University College London
3 //
4 // This program is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU Affero General Public License as published by
6 // the Free Software Foundation, either version 3 of the License, or
7 // (at your option) any later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU Affero General Public License for more details.
13 //
14 // You should have received a copy of the GNU Affero General Public License
15 // along with this program. If not, see <https://www.gnu.org/licenses/>.
16 
17 #pragma once
18 
19 #include <Topology.h>
20 
21 #include <TopologicCore/include/Aperture.h>
22 
23 using namespace System::Collections::Generic;
24 
25 namespace Topologic
26 {
27  ref class Face;
28  ref class Wire;
29  ref class Context;
30 
34  public ref class Aperture : public Topology
35  {
36  public:
43  static Aperture^ ByTopologyContext(Topology^ topology, Context^ context);
44 
50  {
51  Topologic::Topology^ get();
52  }
53 
58  property Object^ BasicGeometry
59  {
60  virtual Object^ get() override;
61  }
62 
63  public protected:
64  Aperture();
65  Aperture(const std::shared_ptr<TopologicCore::Aperture>& kpCoreAperture);
66 
67  virtual std::shared_ptr<TopologicCore::TopologicalQuery> GetCoreTopologicalQuery() override;
68 
69  protected:
70  virtual ~Aperture();
71 
72  std::shared_ptr<TopologicCore::Aperture>* m_pCoreAperture;
73  };
74 }
A Topology is an abstract superclass that includes constructors, properties and methods used by other...
Definition: Topology.h:53
An Aperture is any designed opening in a building including but not limited to any door...
Definition: Aperture.h:34
Topologic is an open-source software modelling library enabling hierarchical and topological represen...
Definition: About.h:23
A Context defines a topological relationship between two otherwise independent Topologies.
Definition: Context.h:34