PLaSK library
Loading...
Searching...
No Matches
plask::RectangularMesh2DRegularGenerator Class Reference

Generator of basic 2D geometry grid with approximately equal spacing. More...

#include <plask/mesh/generator_rectangular.hpp>

Inheritance diagram for plask::RectangularMesh2DRegularGenerator:
[legend]
Collaboration diagram for plask::RectangularMesh2DRegularGenerator:
[legend]

Public Member Functions

 RectangularMesh2DRegularGenerator (double spacing, bool split=false)
 Create generator.
 
 RectangularMesh2DRegularGenerator (double spacing0, double spacing1, bool split=false)
 Create generator.
 
shared_ptr< MeshD< 2 > > generate (const shared_ptr< GeometryObjectD< 2 > > &geometry) override
 
- Public Member Functions inherited from plask::RectangularMesh2DSimpleGenerator
 RectangularMesh2DSimpleGenerator (bool split=false)
 Create generator.
 
shared_ptr< MeshD< 2 > > generate (const shared_ptr< GeometryObjectD< 2 > > &geometry) override
 
- Public Member Functions inherited from plask::MeshGeneratorD< 2 >
virtual shared_ptr< MeshTypegenerate (const GeometryPtr &geometry)=0
 Generate new mesh.
 
void clearCache ()
 Clear the cache of generated meshes.
 
shared_ptr< MeshTypeoperator() (const GeometryPtr &geometry)
 Get generated mesh if it is cached or create a new one.
 
shared_ptr< RequiredType > get (const shared_ptr< GeometryObjectD< DIM > > &geometry)
 
shared_ptr< RequiredType > generate_t (const shared_ptr< GeometryObjectD< DIM > > &geometry)
 
- Public Member Functions inherited from plask::MeshGenerator
template<typename ClassT , typename methodT >
void changedConnectMethod (ClassT *obj, methodT method, boost::signals2::connect_position at=boost::signals2::at_back)
 Connect a method to changed signal.
 
template<typename ClassT , typename methodT >
void changedDisconnectMethod (ClassT *obj, methodT method)
 
template<typename EventT = Event, typename ... Args>
void fireChanged (Args &&... event_constructor_params_without_source)
 Call changed with this as event source.
 
virtual ~MeshGenerator ()
 
- Public Member Functions inherited from plask::MeshBase
virtual ~MeshBase ()
 

Additional Inherited Members

- Public Types inherited from plask::MeshGeneratorD< 2 >
enum  
 Number of geometry dimensions. More...
 
typedef MeshD< MESH_DIM > MeshType
 Type of the generated mesh.
 
typedef shared_ptr< GeometryObjectD< DIM > > GeometryPtr
 
- Public Types inherited from plask::MeshGenerator
typedef EventWithSourceAndFlags< MeshGeneratorEvent
 Mesh generator event.
 
- Public Attributes inherited from plask::MeshGenerator
boost::signals2::signal< void(Event &)> changed
 Changed signal, fired when space was changed.
 
- Protected Member Functions inherited from plask::MeshGeneratorD< 2 >
void onChange (const Event &) override
 This method is called when the generator is changed, just before changed signal.
 
- Static Protected Member Functions inherited from plask::MeshGeneratorD< 2 >
static shared_ptr< RequiredType > cast (const shared_ptr< MeshType > &res)
 
- Protected Attributes inherited from plask::RectangularMesh2DSimpleGenerator
bool split
 
- Protected Attributes inherited from plask::MeshGeneratorD< 2 >
WeakCache< GeometryObject, MeshType, CacheRemoveOnEachChangecache
 

Detailed Description

Generator of basic 2D geometry grid with approximately equal spacing.

This generator respects existing object boundaries.

Definition at line 156 of file generator_rectangular.hpp.

Constructor & Destructor Documentation

◆ RectangularMesh2DRegularGenerator() [1/2]

plask::RectangularMesh2DRegularGenerator::RectangularMesh2DRegularGenerator ( double  spacing,
bool  split = false 
)
inline

Create generator.

Parameters
spacingapproximate distance between mesh lines

Definition at line 165 of file generator_rectangular.hpp.

◆ RectangularMesh2DRegularGenerator() [2/2]

plask::RectangularMesh2DRegularGenerator::RectangularMesh2DRegularGenerator ( double  spacing0,
double  spacing1,
bool  split = false 
)
inline

Create generator.

Parameters
spacing0approximate distance between mesh lines for horizontal axis
spacing1approximate distance between mesh lines for vertical axis

Definition at line 173 of file generator_rectangular.hpp.

Member Function Documentation

◆ generate()

shared_ptr< MeshD< 2 > > plask::RectangularMesh2DRegularGenerator::generate ( const shared_ptr< GeometryObjectD< 2 > > &  geometry)
override

Definition at line 117 of file generator_rectangular.cpp.


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