OpenLexocad  27.1
OpenLxApp::OpeningElement Class Reference

The opening element stands for opening, recess or chase, all reflecting voids. It represents a void within any element that has physical manifestation. Openings can be inserted into walls, slabs, beams, columns, or other elements. More...

#include <OpeningElement.h>

Inheritance diagram for OpenLxApp::OpeningElement:
OpenLxApp::Element OpenLxApp::Product OpenLxApp::Object Core::DocObjectObserver OpenLxApp::ObjectDefinition OpenLxApp::Root OpenLxApp::DocObject OpenLxApp::OpeningStandardCase

Public Types

enum  OpeningElementTypeEnum { OpeningElementTypeEnum::OPENING, OpeningElementTypeEnum::RECESS, OpeningElementTypeEnum::USERDEFINED, OpeningElementTypeEnum::NOTDEFINED }
 

Public Member Functions

void setPredefinedType (OpeningElementTypeEnum aType)
 
OpeningElementTypeEnum getPredefinedType () const
 
void addFilling (std::shared_ptr< Element > aFilling)
 
std::vector< std::shared_ptr< Element > > getFillings () const
 
void removeFilling (std::shared_ptr< Element > aFilling)
 
void removeFillings ()
 
std::shared_ptr< ElementgetVoidedElement () const
 
virtual ~OpeningElement (void)
 
- Public Member Functions inherited from OpenLxApp::Element
virtual ~Element ()=default
 
void setPlacementRelativeTo (std::shared_ptr< Element > other)
 
void setPlacementRelativeTo (std::shared_ptr< Element > other, bool keepGlobalPosition)
 
std::shared_ptr< ElementgetPlacementRelativeTo () const
 
bool setLayer (int layernumber)
 
int getLayer () const
 
void addOpeningElement (std::shared_ptr< OpeningElement > aOpening)
 
void removeOpeningElement (std::shared_ptr< OpeningElement > aOpening)
 
void removeOpeningElements ()
 
std::vector< std::shared_ptr< OpeningElement > > getOpeningElements () const
 
void addParamCutHardElement (std::shared_ptr< Element > aElement)
 
void addParamCutSoftElement (std::shared_ptr< Element > aElement)
 
void removeParamCutHardElement (std::shared_ptr< Element > aElement)
 
void removeParamCutSoftElement (std::shared_ptr< Element > aElement)
 
std::vector< std::shared_ptr< Element > > getParamCutHardElements (bool includeAggregatedElements=false) const
 
std::vector< std::shared_ptr< Element > > getParamCutSoftElements () const
 
bool isParamCutHardElement () const
 
bool isParamCutSoftElement () const
 
void addSubElement (std::shared_ptr< SubElement > aSubElement)
 
std::vector< std::shared_ptr< SubElement > > getSubElements () const
 
void removeSubElement (std::shared_ptr< SubElement > aSubElement)
 
void removeSubElements ()
 
std::shared_ptr< OpeningElementgetFilledOpeningElement () const
 
void setAssociatedMaterial (std::shared_ptr< MaterialDefinition > aMaterialDefinition)
 
void removeAssociatedMaterial ()
 
std::shared_ptr< MaterialSelectgetAssociatedMaterial () const
 
bool isTemporary () const
 
void setTemporary (bool on)
 
std::shared_ptr< GroupgetGroup () const
 
std::shared_ptr< Elementcopy () const
 
Topo::Cdwk_SAT_Attributes get_Cdwk_SAT_Attributes () const
 
Base::String getTag () const
 
void setTag (const Base::String &aTag)
 
void setCdwkAttributeData (const CdwkAttributeData &aData)
 
std::string getCadworkGroup () const
 
void setBoundingBoxEnabled (bool enabled)
 
std::shared_ptr< OpenLxApp::GeometrygetAxisRepresentation () const
 
bool setAxisRepresentation (std::shared_ptr< OpenLxApp::Geometry > aGeometry) const
 
std::shared_ptr< OpenLxApp::GeometrygetSolidModelRepresentation () const
 
bool setSolidModelRepresentation (std::shared_ptr< OpenLxApp::Geometry > aGeometry) const
 
void showAxisRepresentation () const
 
void showSolidModelRepresentation () const
 
- Public Member Functions inherited from OpenLxApp::Product
virtual ~Product (void)
 
virtual bool setGeometry (std::shared_ptr< Geometry > geo)
 
std::shared_ptr< GeometrygetGeometry () const
 
Geom::Trsf getGeometryToWorldTransform () const
 
Geom::Bnd_Box getBoundingBox () const
 
Geom::Ax2 getLocalPlacement () const
 
void setLocalPlacement (const Geom::Ax2 &pos)
 
Geom::Trsf getTransform () const
 
Geom::Trsf getLocalToWorldTransform () const
 
void setTransform (const Geom::Trsf &t)
 
void translate (const Geom::Vec &aVec, Geom::CoordSpace aCoordSpace=Geom::CoordSpace::WCS)
 
void rotate (const Geom::Ax1 &axis, double angle, Geom::CoordSpace aCoordSpace=Geom::CoordSpace::WCS)
 
bool getLocalAxes (Geom::Ax2 &localAxes)
 
void setLocalAxes (const Geom::Dir &zHeight, const Geom::Dir &xLength)
 
pConstShape getShape () const
 
pConstShape getLocalShape () const
 
void setOglMaterial (const Draw::OglMaterial &mat, int faceIndex=-1)
 
Draw::OglMaterial getOglMaterial () const
 
void setAmbientColor (const Base::Color &aCol)
 
void setDiffuseColor (const Base::Color &aCol)
 
void setSpecularColor (const Base::Color &aCol)
 
void setEmissiveColor (const Base::Color &aCol)
 
void setReflectiveColor (const Base::Color &aCol)
 
void setShininess (int aVal)
 
void setTransparency (int aVal)
 
void setDrawStyle (const Draw::DrawStyle &ds)
 
Draw::DrawStyle getDrawStyle () const
 
void setLineWidth (float width)
 
void setTexture (const Draw::Texture2 &tex, int faceIndex=-1)
 
void setLengthAndCrossTexture (const Draw::Texture2 &lengthTexture, const Draw::Texture2 &crossTexture, const Draw::Texture2Transform &lengthTextureTrsf=Draw::Texture2Transform(), const Draw::Texture2Transform &crossTextureTrsf=Draw::Texture2Transform())
 
std::shared_ptr< SpatialStructureElementgetSpatialStructure () const
 
void setSpatialStructure (std::shared_ptr< SpatialStructureElement > aSpatialStructureElement)
 
void setPositionNb (long value)
 
long getPositionNb () const
 
bool isVisible () const
 
void setVisible (bool onoff)
 
bool registerPythonClass (const std::string &aClassName, const std::string &aParentClassName)
 
virtual Base::GlobalId getGlobalClassId () const
 
std::shared_ptr< PropertyIntegerregisterPropertyInteger (const std::string &aName, int aDefaultValue, Property::Visible aVisible=Property::VISIBLE, Property::Editable aEditable=Property::EDITABLE, int aTranslationId=-1)
 
std::shared_ptr< PropertyEnumregisterPropertyEnum (const std::string &aName, int aDefaultValue, Property::Visible aVisible=Property::VISIBLE, Property::Editable aEditable=Property::EDITABLE, int aTranslationId=-1)
 
std::shared_ptr< PropertyDoubleregisterPropertyDouble (const std::string &aName, double aDefaultValue, Property::Visible aVisible=Property::VISIBLE, Property::Editable aEditable=Property::EDITABLE, int aTranslationId=-1)
 
std::shared_ptr< PropertyButtonregisterPropertyButton (const std::string &aName, Property::Visible aVisible=Property::VISIBLE, Property::Editable aEditable=Property::EDITABLE, int aTranslationId=-1)
 
std::shared_ptr< PropertyBoolregisterPropertyBool (const std::string &aName, bool aDefaultValue, Property::Visible aVisible=Property::VISIBLE, Property::Editable aEditable=Property::EDITABLE, int aTranslationId=-1)
 
std::shared_ptr< PropertyStringregisterPropertyString (const std::string &aName, Base::String aDefaultValue, Property::Visible aVisible=Property::VISIBLE, Property::Editable aEditable=Property::EDITABLE, int aTranslationId=-1)
 
std::shared_ptr< PropertyColorregisterPropertyColor (const std::string &aName, Base::Color aDefaultValue, Property::Visible aVisible=Property::VISIBLE, Property::Editable aEditable=Property::EDITABLE, int aTranslationId=-1)
 
std::shared_ptr< OpenLxApp::PropertygetProperty (const std::string &aName) const
 
std::map< std::string, std::shared_ptr< Property > > getPropertyMap () const
 
std::shared_ptr< PropertyIntegergetPropertyInteger (const std::string &aName) const
 
std::shared_ptr< PropertyEnumgetPropertyEnum (const std::string &aName) const
 
std::shared_ptr< PropertyDoublegetPropertyDouble (const std::string &aName) const
 
std::shared_ptr< PropertyButtongetPropertyButton (const std::string &aName) const
 
std::shared_ptr< PropertyBoolgetPropertyBool (const std::string &aName) const
 
std::shared_ptr< PropertyStringgetPropertyString (const std::string &aName) const
 
std::shared_ptr< PropertyColorgetPropertyColor (const std::string &aName) const
 
bool isRegisteredProperty (const std::string &aName) const
 
virtual void onPropertyChanged (const std::string &aPropertyName)
 
virtual void onScaling (const Geom::Vec &aVec, const Geom::Pnt &aScaleBasePnt)
 
virtual void translateAfterScaled (const Geom::Vec &aVec, const Geom::Pnt &aScaleBasePnt)
 
void setStandardManipulatorPolicy (const Core::StandardManipulatorPolicy &aPolicy)
 
void setPropertyHeader (const Base::String &aDefaultName, int aTranslationId)
 
void setPropertyHeader (const Base::String &aDefaultName)
 
void setPropertyGroupName (const Base::String &aDefaultName, int aTranslationId)
 
void setPropertyGroupName (const Base::String &aDefaultName)
 
Base::String getPropertyHeader () const
 
Base::String getPropertyGroupName () const
 
std::shared_ptr< PropertyUsergetPropertyUser (const std::string &aName) const
 
std::vector< std::shared_ptr< PropertyUser > > getPropertyUser () const
 
std::vector< Base::StringgetPropertySetNames () const
 
std::shared_ptr< PropertySetgetPropertySetByName (const Base::String &aName) const
 
ExternalPythonTypeObjectgetExternalPythonTypeObject () const
 
void setExternalPythonTypeObject (ExternalPythonTypeObject *aObj)
 
void removeExternalTypeObject ()
 
- Public Member Functions inherited from OpenLxApp::Object
virtual ~Object (void)
 
- Public Member Functions inherited from OpenLxApp::ObjectDefinition
virtual ~ObjectDefinition (void)
 
std::vector< std::shared_ptr< ObjectDefinition > > getDecompositionObjects () const
 
std::vector< std::shared_ptr< ObjectDefinition > > getAllDecompositionObjects () const
 
std::shared_ptr< ObjectDefinitiongetDecomposedObject () const
 
std::vector< std::shared_ptr< ObjectDefinition > > getAllDecomposedObjects () const
 
void addAggregationObject (std::shared_ptr< ObjectDefinition > aObject)
 
void addAggregationObjects (const std::vector< std::shared_ptr< ObjectDefinition >> &aObjects)
 
void removeAggregationObject (std::shared_ptr< ObjectDefinition > aObject)
 
void removeAggregationObjects ()
 
std::vector< std::shared_ptr< ObjectDefinition > > getAggregationObjects () const
 
std::vector< std::shared_ptr< ObjectDefinition > > getAllAggregationObjects () const
 
std::shared_ptr< ObjectDefinitiongetAggregatedObject () const
 
std::vector< std::shared_ptr< ObjectDefinition > > getAllAggregatedObjects () const
 
void addAssociationObject (std::shared_ptr< Root > aObject)
 
std::vector< std::shared_ptr< Root > > getAssociationObjects () const
 
std::shared_ptr< LxIfcBase::LxIfcProperty > getIfcPropertySets () const
 
- Public Member Functions inherited from OpenLxApp::Root
void setUserName (const Base::String &aName)
 
Base::String getUserName () const
 
virtual ~Root (void)
 
Base::GlobalId getGlobalId () const
 
bool setGlobalId (const Base::GlobalId &aGlobalId)
 
- Public Member Functions inherited from OpenLxApp::DocObject
std::shared_ptr< DocumentgetDocument () const
 
bool isNew () const
 
bool isUpdated () const
 
bool isValid () const
 
bool hasErrors () const
 
void touch ()
 
LxIfc4::LxIfc4EntityEnum getEntityType () const
 
std::string getEntityTypeAsString () const
 
std::shared_ptr< Core::DbgInfogetDbgInfo () const
 
 DocObject (Core::DocObject *aObject)
 
virtual ~DocObject (void)
 
Core::DocObject__getObj__ () const
 
- Public Member Functions inherited from Core::DocObjectObserver
virtual ~DocObjectObserver ()
 

Protected Member Functions

 OpeningElement ()
 
- Protected Member Functions inherited from OpenLxApp::Element
 Element ()=default
 
void _copySubElems (App::Element *fromElem, std::shared_ptr< Element > toElem) const
 
- Protected Member Functions inherited from OpenLxApp::Product
void onChange (Core::DocObject *aCaller, const Core::DocObjectObserverMsg &aReason) override
 
 Product ()
 
- Protected Member Functions inherited from OpenLxApp::Object
 Object ()
 
- Protected Member Functions inherited from OpenLxApp::ObjectDefinition
 ObjectDefinition ()
 
- Protected Member Functions inherited from OpenLxApp::Root
 Root ()
 
- Protected Member Functions inherited from OpenLxApp::DocObject
 DocObject ()
 

Additional Inherited Members

- Protected Attributes inherited from OpenLxApp::DocObject
Core::DocObject_coreObj = nullptr
 

Detailed Description

The opening element stands for opening, recess or chase, all reflecting voids. It represents a void within any element that has physical manifestation. Openings can be inserted into walls, slabs, beams, columns, or other elements.

(Definition from ISO/CD 16739:2011)

See also
Documentation from IFC4: IfcOpeningElement

Member Enumeration Documentation

◆ OpeningElementTypeEnum

Enumerator
OPENING 
RECESS 
USERDEFINED 
NOTDEFINED 

Constructor & Destructor Documentation

◆ ~OpeningElement()

virtual OpenLxApp::OpeningElement::~OpeningElement ( void  )
virtual

◆ OpeningElement()

OpenLxApp::OpeningElement::OpeningElement ( )
inlineprotected

Member Function Documentation

◆ addFilling()

void OpenLxApp::OpeningElement::addFilling ( std::shared_ptr< Element aFilling)

◆ getFillings()

std::vector<std::shared_ptr<Element> > OpenLxApp::OpeningElement::getFillings ( ) const

◆ getPredefinedType()

OpeningElementTypeEnum OpenLxApp::OpeningElement::getPredefinedType ( ) const

◆ getVoidedElement()

std::shared_ptr<Element> OpenLxApp::OpeningElement::getVoidedElement ( ) const

◆ removeFilling()

void OpenLxApp::OpeningElement::removeFilling ( std::shared_ptr< Element aFilling)

◆ removeFillings()

void OpenLxApp::OpeningElement::removeFillings ( )

◆ setPredefinedType()

void OpenLxApp::OpeningElement::setPredefinedType ( OpeningElementTypeEnum  aType)

The documentation for this class was generated from the following file: