Itasca C++ Interface
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | List of all members
zone::IFace Class Referenceabstract

Interface to zone faces. More...

#include <iface.h>

Public Member Functions

virtual IThinggetIThing ()=0
 Get an IThing interface.
 
virtual const IThinggetIThing () const =0
 Get an IThing interface.
 
virtual uint32 getSize () const =0
 Returns the number of sides of a face.
 
virtual const IGpgetGp (uint32 gpIdx) const =0
 
virtual DVect getCentroid () const =0
 Returns the centroid of the face.
 
virtual const IZonegetIZone () const =0
 Returns a const pointer to the zone of the face.
 
virtual void setIZone (IZone *zone)=0
 Sets the zone associated with this face object.
 
virtual IZonegetIZone ()=0
 Returns a pointer to the zone of the face.
 
virtual uint32 getSide () const =0
 Returns the face number.
 
virtual void setSide (uint32 side)=0
 Sets the side associated with this face object.
 
virtual const IZonegetJoin () const =0
 
virtual IZonegetJoin ()=0
 
virtual bool isSurface (int bit=-1) const =0
 
virtual bool isVisibleSurface () const =0
 
virtual bool isOnVisibleZone () const =0
 Returns TRUE if the face is connected to a non-hidden (visible) zone on either side, otherwise false.
 
virtual bool isOnGroupSurface (const ISlotID &slot, IGroupID *group1=nullptr, IGroupID *group2=nullptr) const =0
 
virtual FaceID getFaceID () const =0
 Returns the unique face id for this object.
 
virtual void destroy ()=0
 Destroys this object.
 

Static Public Attributes

static const TType type_ = 0x4c815a0f
 The type identification number for this class, for use in convert_cast() and convert_getcast().
 

Detailed Description

Interface to zone faces.

Member Function Documentation

◆ getGp()

virtual const IGp * zone::IFace::getGp ( uint32 gpIdx) const
pure virtual

Given an index, returns the gridpoint corresponding to the index (gpIdx) Gridpoint order is clockwise looking down on normal vector, ccw looking along normal vector.

◆ isOnGroupSurface()

virtual bool zone::IFace::isOnGroupSurface ( const ISlotID & slot,
IGroupID * group1 = nullptr,
IGroupID * group2 = nullptr ) const
pure virtual

Returns TRUE if the face is on the border between one group and another in the given slot. If slot is ANY, then returns TRUE if any group changes in any slot from one zone to another. If the zone is a mechanical surface (isSurface(true,false,false,-1)==true) will always return true. If provided, group1 and group2 are filled with the group names on either side of the boundary.
If no group exists on one side group2 will be null. If ANY slot is used and multiple group surfaces exist, the first one found will be used.

◆ isSurface()

virtual bool zone::IFace::isSurface ( int bit = -1) const
pure virtual

Determines if the face can be considered a surface face. mech, therm, fluid indicate if zones should be considered absent if they are NULL in that process. if bit>0, then a 0 return from getBit(bit) indicates that the zone should be considered absent.

◆ isVisibleSurface()

virtual bool zone::IFace::isVisibleSurface ( ) const
pure virtual

Determines if the face is considered a surface face BASED ON NON-HIDDEN ZONES. If the face is of surface of the set of all visible and non-null zones then it is true, otherwise false


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