UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::CADKernel::FShell Class Reference

#include <Shell.h>

+ Inheritance diagram for UE::CADKernel::FShell:

Public Member Functions

virtual ~FShell () override
 
virtual void Serialize (FCADKernelArchive &Ar) override
 
virtual void SpawnIdent (FDatabase &Database) override
 
virtual void ResetMarkersRecursively () const override
 
void RemoveFaces ()
 
void RemoveDeletedOrDegeneratedFaces ()
 
virtual void Empty () override
 
void Add (TSharedRef< FTopologicalFace > InTopologicalFace, EOrientation InOrientation)
 
void Add (TArray< FTopologicalFace * > &Faces)
 
virtual EEntity GetEntityType () const override
 
virtual int32 FaceCount () const override
 
void ReplaceFaces (TArray< FOrientedFace > &NewFaces)
 
const TArray< FOrientedFace > & GetFaces () const
 
TArray< FOrientedFace > & GetFaces ()
 
virtual void GetFaces (TArray< FTopologicalFace * > &OutFaces) override
 
virtual void Merge (TSharedPtr< FShell > &Shell)
 
virtual void PropagateBodyOrientation () override
 
virtual void CompleteMetaData () override
 
virtual void UpdateShellOrientation ()
 
void CheckTopology (TArray< FFaceSubset > &Subshells)
 
void UnlinkFromOther (TArray< FTopologicalVertex * > &OutVerticesToLink)
 
bool IsOpenShell ()
 
bool IsInner () const
 
bool IsOuter () const
 
void SetInner ()
 
void SetOuter ()
 
int32 Orient ()
 
virtual void Remove (const FTopologicalShapeEntity *) override
 
- Public Member Functions inherited from UE::CADKernel::FTopologicalShapeEntity
virtual ~FTopologicalShapeEntity () override
 
const FMetadataDictionaryGetMetaDataDictionary () const
 
void ExtractMetaData (TMap< FString, FString > &OutMetaData) const
 
void CompleteMetaDataWithHostMetaData ()
 
FTopologicalShapeEntityGetHost ()
 
const FTopologicalShapeEntityGetHost () const
 
void SetHost (FTopologicalShapeEntity *Body)
 
void SetHostId (const int32 InHostId)
 
int32 GetHostId () const
 
void SetLayer (const int32 InLayerId)
 
void SetName (const FString &InName)
 
bool HasName () const
 
const TCHARGetName () const
 
void SetColorId (const uint32 &InColorId)
 
uint32 GetColorId () const
 
void SetMaterialId (const uint32 &InMaterialId)
 
uint32 GetMaterialId () const
 
void SetDisplayData (const uint32 &InColorId, const uint32 &InMaterialId)
 
void SetDisplayData (const FTopologicalShapeEntity &DisplayData)
 
void SetPatchId (int32 InPatchId)
 
int32 GetPatchId () const
 
- Public Member Functions inherited from UE::CADKernel::FTopologicalEntity
FIdent GetKioId () const
 
const bool IsApplyCriteria () const
 
virtual void SetApplyCriteriaMarker () const
 
virtual void ResetApplyCriteria ()
 
bool IsNotMeshable () const
 
bool IsMeshable () const
 
bool IsPreMeshed () const
 
bool IsMeshed () const
 
virtual void SetPreMeshedMarker ()
 
virtual void SetMeshedMarker ()
 
virtual void ResetPreMeshed ()
 
- Public Member Functions inherited from UE::CADKernel::FEntity
virtual ~FEntity ()
 
virtual void Delete ()
 
bool IsTopologicalEntity () const
 
bool IsTopologicalShapeEntity () const
 
bool IsGeometricalEntity ()
 
const TCHARGetTypeName () const
 
const FIdentGetId () const
 
- Public Member Functions inherited from TSharedFromThis< FEntity >
TSharedRef< FEntity, Mode > AsShared ()
 
TSharedRef< FEntity const, Mode > AsShared () const
 
TSharedRef< SubobjectType, Mode > AsSharedSubobject (SubobjectType *SubobjectPtr) const
 
TWeakPtr< FEntity, Mode > AsWeak ()
 
TWeakPtr< FEntity const, Mode > AsWeak () const
 
TWeakPtr< SubobjectType, Mode > AsWeakSubobject (SubobjectType *SubobjectPtr) const
 
void UpdateWeakReferenceInternal (TSharedPtr< SharedPtrType, SharedPtrMode > const *InSharedPtr, OtherType *InObject) const
 
void UpdateWeakReferenceInternal (TSharedRef< SharedRefType, SharedPtrMode > const *InSharedRef, OtherType *InObject) const
 
UE_FORCEINLINE_HINT bool DoesSharedInstanceExist () const
 
- Public Member Functions inherited from UE::CADKernel::FHaveStates
 FHaveStates ()
 
void Serialize (FCADKernelArchive &Ar)
 
void ResetElementStatus ()
 
bool HasMarker1 () const
 
bool HasMarker2 () const
 
bool HasMarker1And2 () const
 
bool HasMarker1Or2 () const
 
void SetMarker1 () const
 
void SetMarker2 () const
 
void ResetMarker1 () const
 
void ResetMarker2 () const
 
void ResetMarkers () const
 
bool IsDeleted () const
 
void SetDeletedMarker () const
 
void ResetDeleted () const
 
virtual bool IsDeletedOrDegenerated () const
 
virtual bool IsDegenerated () const
 
virtual void SetAsDegenerated () const
 
virtual void ResetDegenerated () const
 
void SetWaitingMarker () const
 
void ResetWaitingMarker () const
 
virtual bool IsWaiting () const
 
void SetProcessedMarker () const
 
void ResetProcessedMarker () const
 
virtual bool IsProcessed () const
 
virtual bool IsProcessedDeletedOrDegenerated () const
 
void SetToProcessMarker () const
 
void ResetToProcessMarker () const
 
virtual bool IsToProcess () const
 
virtual bool IsNotToProcess () const
 
virtual bool IsNotToOrAlreadyProcess () const
 

Friends

class FEntity
 

Additional Inherited Members

- Static Public Member Functions inherited from UE::CADKernel::FEntity
template<typename OtherEntity , typename... InArgTypes>
static TSharedRef< OtherEntity > MakeShared (InArgTypes &&... Args)
 
template<typename OtherEntity >
static TSharedRef< OtherEntity > MakeShared (FCADKernelArchive &Archive)
 
static void SerializeIdent (FCADKernelArchive &Ar, TSharedPtr< FEntity > &Entity, bool bSaveSelection=true)
 
static void SerializeIdent (FCADKernelArchive &Ar, TWeakPtr< FEntity > &Entity, bool bSaveSelection=true)
 
static void SerializeIdent (FCADKernelArchive &Ar, FEntity **Entity, bool bSaveSelection=true)
 
template<typename EntityType >
static void SerializeIdent (FCADKernelArchive &Ar, EntityType **Entity, bool bSaveSelection=true)
 
template<typename EntityType >
static void SerializeIdent (FCADKernelArchive &Ar, TSharedPtr< EntityType > &Entity, bool bSaveSelection=true)
 
template<typename EntityType >
static void SerializeIdent (FCADKernelArchive &Ar, TWeakPtr< EntityType > &Entity, bool bSaveSelection=true)
 
static void SerializeIdents (FCADKernelArchive &Ar, TArray< FEntity * > &Array, bool bSaveSelection=true)
 
static void SerializeIdents (FCADKernelArchive &Ar, TArray< TWeakPtr< FEntity > > &Array, bool bSaveSelection=true)
 
static void SerializeIdents (FCADKernelArchive &Ar, TArray< TSharedPtr< FEntity > > &Array, bool bSaveSelection=true)
 
static void SerializeIdents (FCADKernelArchive &Ar, TArray< TOrientedEntity< FEntity > > &Array)
 
template<typename EntityType >
static void SerializeIdents (FCADKernelArchive &Ar, TArray< EntityType * > &Array, bool bSaveSelection=true)
 
template<typename EntityType >
static void SerializeIdents (FCADKernelArchive &Ar, TArray< TWeakPtr< EntityType > > &Array, bool bSaveSelection=true)
 
template<typename EntityType >
static void SerializeIdents (FCADKernelArchive &Ar, TArray< TSharedPtr< EntityType > > &Array, bool bSaveSelection=true)
 
static void SpawnIdentOnEntities (TArray< FEntity * > &Array, FDatabase &Database)
 
static void SpawnIdentOnEntities (TArray< TSharedPtr< FEntity > > &Array, FDatabase &Database)
 
static void SpawnIdentOnEntities (TArray< TOrientedEntity< FEntity > > &Array, FDatabase &Database)
 
template<typename EntityType >
static void SpawnIdentOnEntities (TArray< TSharedPtr< EntityType > > &Array, FDatabase &Database)
 
static void ResetMarkersRecursivelyOnEntities (const TArray< FEntity * > &Array)
 
static void ResetMarkersRecursivelyOnEntities (const TArray< TWeakPtr< FEntity > > &Array)
 
static void ResetMarkersRecursivelyOnEntities (const TArray< TSharedPtr< FEntity > > &Array)
 
static void ResetMarkersRecursivelyOnEntities (const TArray< TOrientedEntity< FEntity > > &Array)
 
template<typename EntityType >
static void ResetMarkersRecursivelyOnEntities (const TArray< TSharedPtr< EntityType > > &Array)
 
static TSharedPtr< FEntityDeserialize (FCADKernelArchive &Ar)
 
static const TCHARGetTypeName (EEntity Type)
 
- Protected Member Functions inherited from UE::CADKernel::FTopologicalShapeEntity
void ResetHost ()
 
- Protected Member Functions inherited from UE::CADKernel::FEntity
bool SetId (FDatabase &Database)
 
- Protected Member Functions inherited from TSharedFromThis< FEntity >
 TSharedFromThis ()
 
 TSharedFromThis (TSharedFromThis const &)
 
UE_FORCEINLINE_HINT TSharedFromThisoperator= (TSharedFromThis const &)
 
 ~TSharedFromThis ()
 
- Static Protected Member Functions inherited from TSharedFromThis< FEntity >
static UE_FORCEINLINE_HINT TSharedRef< OtherType, Mode > SharedThis (OtherType *ThisPtr)
 
static UE_FORCEINLINE_HINT TSharedRef< OtherType const, Mode > SharedThis (const OtherType *ThisPtr)
 
- Protected Attributes inherited from UE::CADKernel::FTopologicalEntity
FIdent CtKioId = 0
 
- Protected Attributes inherited from UE::CADKernel::FEntity
FIdent Id = 0
 
- Protected Attributes inherited from UE::CADKernel::FHaveStates
EHaveStates States
 
- Static Protected Attributes inherited from UE::CADKernel::FEntity
static const TCHARTypesNames []
 

Constructor & Destructor Documentation

◆ ~FShell()

virtual UE::CADKernel::FShell::~FShell ( )
inlineoverridevirtual

Member Function Documentation

◆ Add() [1/2]

void UE::CADKernel::FShell::Add ( TArray< FTopologicalFace * > &  Faces)

◆ Add() [2/2]

void UE::CADKernel::FShell::Add ( TSharedRef< FTopologicalFace InTopologicalFace,
EOrientation  InOrientation 
)

◆ CheckTopology()

void UE::CADKernel::FShell::CheckTopology ( TArray< FFaceSubset > &  Subshells)

◆ CompleteMetaData()

void UE::CADKernel::FShell::CompleteMetaData ( )
overridevirtual

◆ Empty()

void UE::CADKernel::FShell::Empty ( )
overridevirtual

◆ FaceCount()

virtual int32 UE::CADKernel::FShell::FaceCount ( ) const
inlineoverridevirtual

◆ GetEntityType()

virtual EEntity UE::CADKernel::FShell::GetEntityType ( ) const
inlineoverridevirtual

◆ GetFaces() [1/3]

TArray< FOrientedFace > & UE::CADKernel::FShell::GetFaces ( )
inline

◆ GetFaces() [2/3]

const TArray< FOrientedFace > & UE::CADKernel::FShell::GetFaces ( ) const
inline

◆ GetFaces() [3/3]

void UE::CADKernel::FShell::GetFaces ( TArray< FTopologicalFace * > &  OutFaces)
overridevirtual

◆ IsInner()

bool UE::CADKernel::FShell::IsInner ( ) const
inline

◆ IsOpenShell()

bool UE::CADKernel::FShell::IsOpenShell ( )
Returns
true if the shell has at least one border edge

◆ IsOuter()

bool UE::CADKernel::FShell::IsOuter ( ) const
inline

◆ Merge()

void UE::CADKernel::FShell::Merge ( TSharedPtr< FShell > &  Shell)
virtual

◆ Orient()

int32 UE::CADKernel::FShell::Orient ( )

Orient each connected sub-shell: each connected face will have the same orientation Each connected subset of faces will be oriented:

  • towards the outside if it's a closed subset (without border edge)
  • according to its main/average orientation if it's an open shell
    Returns
    SwapFaceCount for report purpose

◆ PropagateBodyOrientation()

void UE::CADKernel::FShell::PropagateBodyOrientation ( )
overridevirtual

Each face of model is set by its orientation. This allow to make oriented mesh and to keep the face orientation in topological function. Marker2 of propagate face is set. It must be reset after the process

Implements UE::CADKernel::FTopologicalShapeEntity.

◆ Remove()

void UE::CADKernel::FShell::Remove ( const FTopologicalShapeEntity FaceToRemove)
overridevirtual

◆ RemoveDeletedOrDegeneratedFaces()

void UE::CADKernel::FShell::RemoveDeletedOrDegeneratedFaces ( )

◆ RemoveFaces()

void UE::CADKernel::FShell::RemoveFaces ( )

◆ ReplaceFaces()

void UE::CADKernel::FShell::ReplaceFaces ( TArray< FOrientedFace > &  NewFaces)
inline

◆ ResetMarkersRecursively()

virtual void UE::CADKernel::FShell::ResetMarkersRecursively ( ) const
inlineoverridevirtual

Reimplemented from UE::CADKernel::FEntity.

◆ Serialize()

virtual void UE::CADKernel::FShell::Serialize ( FCADKernelArchive Ar)
inlineoverridevirtual

Serialization of a FEntity. Each class derived from FEntity has to override this method (and call the direct base class override method first) E.g. class FEntityXXX : public FEntityXX { virtual void Serialize(FCADKernelArchive& Ar) override { FEntityXX::Serialize(Ar); ... } }

Reimplemented from UE::CADKernel::FTopologicalShapeEntity.

◆ SetInner()

void UE::CADKernel::FShell::SetInner ( )
inline

◆ SetOuter()

void UE::CADKernel::FShell::SetOuter ( )
inline

◆ SpawnIdent()

virtual void UE::CADKernel::FShell::SpawnIdent ( FDatabase Database)
inlineoverridevirtual

Reimplemented from UE::CADKernel::FEntity.

◆ UnlinkFromOther()

void UE::CADKernel::FShell::UnlinkFromOther ( TArray< FTopologicalVertex * > &  OutVerticesToLink)
inline

◆ UpdateShellOrientation()

void UE::CADKernel::FShell::UpdateShellOrientation ( )
virtual

Friends And Related Symbol Documentation

◆ FEntity

friend class FEntity
friend

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