PLaSK library

Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
plask::Revolution Struct Reference
Geometry Objects

Represent 3D geometry object which is an effect of revolving a 2D object (child) around the up axis. More...

`#include <plask/geometry/transform_space_cylindric.hpp>`

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

## Public Member Functions
| Revolution (shared_ptr< ChildType > child=shared_ptr< ChildType >(), bool auto_clip=false)
void | setRevMaxSteps (unsigned long value)
| Set max_steps for revolution.
void | setRevMinStepSize (double value)
| Set min_step_size for revolution.
std::string | getTypeName () const override
| Get name of object type (like: "block2d", "shelf", "stack3d", etc.).
bool | contains (const DVec &p) const override
| Check if this geometry object contains point.
shared_ptr< Material > | getMaterial (const DVec &p) const override
| Return material in a given point inside the geometry object.
Box | fromChildCoords (const typename ChildType::Box &child_bbox) const override
| Convert bounding box from child's to this's coordinates.
shared_ptr< GeometryObject > | shallowCopy () const override
| Get shallow copy of this.
GeometryObject::Subtree | getPathsAt (const DVec &point, bool all=false) const override
| Find all paths to objects which lies at given `point`.
void | getPositionsToVec (const GeometryObject::Predicate &predicate, std::vector< DVec > &dest, const PathHints *path=0) const override
| Calculate and append to vector positions of all nodes which fulfill given `predicate`, optionally marked by path.
bool | childIsClipped () const
| Check if child can be clipped.
Public Member Functions inherited from plask::GeometryObjectTransformSpace< 3, 2 >
| GeometryObjectTransformSpace (shared_ptr< GeometryObjectD< child_dim > > child=shared_ptr< GeometryObjectD< child_dim > >())
GeometryObject::Type | getType () const override
Public Member Functions inherited from plask::GeometryObjectTransform< dim, Child_Type >
| GeometryObjectTransform (shared_ptr< ChildType > child=nullptr)
| GeometryObjectTransform (ChildType &child)
virtual | ~GeometryObjectTransform ()
void | getObjectsToVec (const GeometryObject::Predicate &predicate, std::vector< shared_ptr< const GeometryObject > > &dest, const PathHints *path=0) const override
| Append all objects from subtree with this in root, which fulfill predicate to vector `dest`.
virtual void | onChildChanged (const GeometryObject::Event &evt)
| Called by child.change signal, call this change.
void | connectOnChildChanged ()
| Connect onChildChanged to current child change signal.
void | disconnectOnChildChanged ()
| Disconnect onChildChanged from current child change signal.
shared_ptr< ChildType > | getChild () const
| Get child.
void | setChildUnsafe (const shared_ptr< ChildType > &child)
| Set new child.
void | setChild (const shared_ptr< ChildType > &child)
| Set new child.
bool | hasChild () const
void | validate () const override
| Throws NoChildException if child is not set.
bool | hasInSubtree (const GeometryObject &el) const override
| Check if el is in subtree with `this` in root.
GeometryObject::Subtree | getPathsTo (const GeometryObject &el, const PathHints *path=0) const override
| Find paths to el.
std::size_t | getChildrenCount () const override
| Get number of all children of this in geometry graph.
shared_ptr< GeometryObject > | getChildNo (std::size_t child_no) const override
| Get child with given index.
shared_ptr< GeometryObjectTransform< dim, Child_Type > > | shallowCopyWithChild (const shared_ptr< ChildType > &child) const
| Get copy of this, and change child in the copy,.
shared_ptr< GeometryObject > | deepCopy (std::map< const GeometryObject *, shared_ptr< GeometryObject > > &copied) const override
| Get deep copy of this.
shared_ptr< const GeometryObject > | changedVersion (const GeometryObject::Changer &changer, Vec< 3, double > *translation=0) const override
| Get this or copy of this with some changes in subtree.
void | removeAtUnsafe (std::size_t) override
| Remove child at given `index`.
Box | getBoundingBox () const override
| Calculate minimal rectangle which contains all points of geometry object.
void | getBoundingBoxesToVec (const GeometryObject::Predicate &predicate, std::vector< Box > &dest, const PathHints *path) const override
| Calculate and append to vector bounding boxes of all nodes which fulfill given `predicate`, optionally marked by path.
bool | childHasType (GeometryObject::Type type) const
| Check if child of this has given type.
Public Member Functions inherited from plask::GeometryObjectD< dim >
int | getDimensionsCount () const override
| Get number of dimensions.
virtual DVec | getBoundingBoxSize () const
virtual Box | getRealBoundingBox () const
| Calculate minimal rectangle which contains all points of real geometry object.
shared_ptr< Material > | getMaterialOrAir (const DVec &p) const
| Return material in a given point inside the geometry object.
void | getBoundingBoxesToVec (const GeometryObject::Predicate &predicate, std::vector< Box > &dest, const PathHints &path) const
| Calculate and append to vector bounding boxes of all nodes which fulfill given `predicate`, marked by path.
std::vector< Box > | getBoundingBoxes (const GeometryObject::Predicate &predicate, const PathHints *path=0) const
| Calculate the vector of bounding boxes of all nodes which fulfill given `predicate`, optionally marked by path.
std::vector< Box > | getBoundingBoxes (const GeometryObject::Predicate &predicate, const PathHints &path)
| Calculate the vector of bounding boxes of all nodes which fulfill given `predicate`, marked by path.
void | getLeafsBoundingBoxesToVec (std::vector< Box > &dest, const PathHints *path=0) const
| Calculate and append to vector bounding boxes of all leafs, optionally marked by path.
void | getLeafsBoundingBoxesToVec (std::vector< Box > &dest, const PathHints &path) const
| Calculate and append to vector bounding boxes of all leafs, marked by path.
std::vector< Box > | getLeafsBoundingBoxes (const PathHints *path=0) const
| Calculate bounding boxes of all leafs, optionally marked by path.
std::vector< Box > | getLeafsBoundingBoxes (const PathHints &path) const
| Calculate bounding boxes of all leafs, marked by path.
void | getObjectBoundingBoxesToVec (std::vector< Box > &dest, const GeometryObject &object, const PathHints *path=0) const
| Calculate and append to vector bounding boxes of all instances of given `object`, optionally marked by path.
void | getObjectBoundingBoxesToVec (std::vector< Box > &dest, const GeometryObject &object, const PathHints &path) const
| Calculate and append to vector bounding boxes of all instances of given `object`, marked by path.
std::vector< Box > | getObjectBoundingBoxes (const GeometryObject &object, const PathHints *path=0) const
| Calculate bounding boxes of all instances of given `object`, optionally marked by path.
std::vector< Box > | getObjectBoundingBoxes (const GeometryObject &object, const PathHints &path) const
| Calculate bounding boxes of all instances of given `objects`, marked by `path`.
void | getPositionsToVec (const Predicate &predicate, std::vector< DVec > &dest, const PathHints &path) const
| Calculate and append to vector positions of all nodes which fulfill given `predicate`, marked by path.
std::vector< DVec > | getPositions (const Predicate &predicate, const PathHints *path=0) const
| Calculate and append to vector positions of all nodes which fulfill given `predicate`, optionally marked by path.
std::vector< DVec > | getPositions (const Predicate &predicate, const PathHints &path) const
| Calculate and append to vector positions of all nodes which fulfill given `predicate`, marked by path.
void | getLeafsPositionsToVec (std::vector< DVec > &dest, const PathHints *path=0) const
| Calculate and append to vector positions of all leafs, optionally marked by path.
void | getLeafsPositionsToVec (std::vector< DVec > &dest, const PathHints &path) const
| Calculate and append to vector positions of all leafs, marked by path.
std::vector< DVec > | getLeafsPositions (const PathHints *path=0) const
| Calculate and return a vector of positions of all leafs, optionally marked by path.
std::vector< DVec > | getLeafsPositions (const PathHints &path) const
| Calculate and return a vector of positions of all leafs, marked by path.
void | getObjectPositionsToVec (std::vector< DVec > &dest, const GeometryObject &object, const PathHints *path=0) const
| Calculate and append to vector positions of all instances of given `object`, optionally marked by path.
void | getObjectPositionsToVec (std::vector< DVec > &dest, const GeometryObject &object, const PathHints &path) const
| Calculate and append to vector positions of all instances of given `object`, marked by path.
std::vector< DVec > | getObjectPositions (const GeometryObject &object, const PathHints *path=0) const
| Calculate and return a vector of positions of all instances of given `object`, optionally marked by path.
std::vector< DVec > | getObjectPositions (const GeometryObject &object, const PathHints &path) const
| Calculate and return a vector of positions of all instances of given `object`, marked by path.
shared_ptr< const GeometryObject > | getMatchingAt (const DVec &point, const Predicate &predicate, const PathHints *path=0) const
| Get object closest to the root, which contains specific point and fulfills the predicate.
shared_ptr< const GeometryObject > | getMatchingAt (const DVec &point, const Predicate &predicate, const PathHints &path) const
| Get object closest to the root, which contains specific point and fulfills the predicate.
bool | objectIncludes (const GeometryObject &object, const PathHints *path, const DVec &point) const
| Check if specified geometry object contains a point point.
bool | objectIncludes (const GeometryObject &object, const PathHints &path, const DVec &point) const
| Check if specified geometry object contains a point point.
bool | objectIncludes (const GeometryObject &object, const DVec &point) const
| Check if specified geometry object contains a point point.
std::set< std::string > | getRolesAt (const DVec &point, const plask::PathHints *path=0) const
| Get a sum of roles sets of all objects which lies on path from this to leaf at given `point`.
std::set< std::string > | getRolesAt (const DVec &point, const plask::PathHints &path) const
| Get a sum of roles sets of all objects which lies on path from this to leaf at given `point`.
shared_ptr< const GeometryObject > | hasRoleAt (const std::string &role_name, const DVec &point, const plask::PathHints *path=0) const
| Check if any object at given `point`, not hidden by another object, plays role with given name `role_name` (if so, returns non-nullptr).
shared_ptr< const GeometryObject > | hasRoleAt (const std::string &role_name, const DVec &point, const plask::PathHints &path) const
| Check if any object at given `point`, not hidden by another object, plays role with given name `role_name` (if so, returns non-nullptr).
virtual void | addLineSegmentsToSet (std::set< LineSegment > &PLASK_UNUSED(segments), unsigned PLASK_UNUSED(max_steps), double PLASK_UNUSED(min_step_size)) const =0
| Add characteristic points to the set and edges connecting them.
std::set< LineSegment > | getLineSegments (unsigned max_steps=PLASK_GEOMETRY_MAX_STEPS, double min_step_size=PLASK_GEOMETRY_MIN_STEP_SIZE) const
| Add characteristic points to the set and edges connecting them.
Public Member Functions inherited from plask::GeometryObject
void | setMaxSteps (unsigned value)
| Set max_steps.
void | setMinStepSize (double value)
| Set min_step_size.
template<typename ClassT , typename methodT >
boost::signals2::connection | 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)
| Disconnect a method from changed signal.
template<typename EventT = Event, typename... Args>
void | fireChanged (Args &&... event_constructor_params_without_source)
| Call changed with this as event source.
| GeometryObject (const GeometryObject &to_copy)
| Initialize this to be the same as `to_copy` but doesn't have any changes observer.
GeometryObject & | operator= (const GeometryObject &to_copy)
| Set this to be the same as `to_copy` but doesn't change changes observer.
| GeometryObject ()
| GeometryObject (unsigned max_steps, double min_step_size)
virtual | ~GeometryObject ()
| Virtual destructor.
virtual void | writeXML (XMLWriter::Element &parent_xml_object, WriteXMLCallback &write_cb, AxisNames parent_axes) const
| Write geometry tree branch rooted by this to XML.
void | writeXML (XMLWriter::Element &parent_xml_object, WriteXMLCallback &write_cb) const
| Write geometry tree branch rooted by this to XML.
void | writeXML (XMLWriter::Element &parent_xml_object) const
| Write geometry tree branch rooted by this to XML.
template<int DIMS>
shared_ptr< GeometryObjectD< DIMS > > | asD ()
| Cast this to GeometryObjectD<DIMS>.
template<int DIMS>
shared_ptr< const GeometryObjectD< DIMS > > | asD () const
| Cast this to GeometryObjectD<DIMS> (const version).
shared_ptr< Geometry > | asGeometry ()
| Cast this to Geometry.
shared_ptr< const Geometry > | asGeometry () const
| Cast this to Geometry.
bool | isLeaf () const
bool | isTransform () const
bool | isSpaceChanger () const
bool | isContainer () const
bool | isGeometry () const
virtual void | addPointsAlongToSet (std::set< double > &points, Primitive< 3 >::Direction PLASK_UNUSED(direction), unsigned PLASK_UNUSED(max_steps), double PLASK_UNUSED(min_step_size)) const =0
| Add characteristic points information along specified axis to set.
std::set< double > | getPointsAlong (Primitive< 3 >::Direction direction, unsigned max_steps=PLASK_GEOMETRY_MAX_STEPS, double min_step_size=PLASK_GEOMETRY_MIN_STEP_SIZE) const
| Get characteristic points information along specified axis.
bool | hasRole (std::string role_name) const
| Check if this object belongs to class (has tag) with name `role_name`.
void | addRole (std::string role_name)
| Add this to given class.
void | removeRole (std::string role_name)
| Remove this from given class, do nothing if this is not in given class.
void | clearRoles ()
| Clear set of roles of this.
bool | hasInSubtree (const GeometryObject &el, const PathHints *pathHints) const
bool | hasInSubtree (shared_ptr< const GeometryObject > el, const PathHints *pathHints) const
void | getObjectsToVec (const Predicate &predicate, std::vector< shared_ptr< const GeometryObject > > &dest, const PathHints &path) const
| Append all objects from subtree with this in root, which fulfill predicate to vector `dest`.
std::vector< shared_ptr< const GeometryObject > > | getObjects (const Predicate &predicate, const PathHints *path=0) const
| Get vector of all objects from subtree with this in root, which fulfill predicate.
std::vector< shared_ptr< const GeometryObject > > | getObjects (const Predicate &predicate, const PathHints &path) const
| Get vector of all objects from subtree with this in root, which fulfill predicate.
void | getLeafsToVec (std::vector< shared_ptr< const GeometryObject > > &dest, const PathHints *path=0) const
| Append all leafs in subtree with this in root to vector `dest`.
void | getLeafsToVec (std::vector< shared_ptr< const GeometryObject > > &dest, const PathHints &path) const
| Append all leafs in subtree with this in root to vector `dest`.
std::vector< shared_ptr< const GeometryObject > > | getLeafs (const PathHints *path=0) const
| Get all leafs in subtree with this object as root.
std::vector< shared_ptr< const GeometryObject > > | getLeafs (const PathHints &path) const
| Get all leafs in subtree with this object as root.
void | getObjectsWithRoleToVec (const std::string &role, std::vector< shared_ptr< const GeometryObject > > &dest) const
| Append all objects with a specified role in subtree with this in root to vector `dest`.
std::vector< shared_ptr< const GeometryObject > > | getObjectsWithRole (const std::string &role) const
| Get all objects with a specified role in subtree with this object as root.
virtual std::size_t | getRealChildrenCount () const
| Get number of real (physically stored) children in geometry graph.
virtual shared_ptr< GeometryObject > | getRealChildNo (std::size_t child_no) const
| Get real (physically stored) child with given index.
void | removeAt (std::size_t index)
| Remove child at given `index`.
void | removeRangeUnsafe (std::size_t index_begin, std::size_t index_end)
bool | removeRange (std::size_t index_begin, std::size_t index_end)
| Remove all children in given range [index_begin, index_end).
virtual void | forEachRealObjectInSubtree (std::function< bool(const GeometryObject &)> callback) const
| Call a `callback` for each object in subtree with `this` in root.
FunctorIndexedIterator< ChildGetter > | begin () const
FunctorIndexedIterator< ChildGetter > | end () const
shared_ptr< GeometryObject > | deepCopy ()
| Get deep copy of this.
bool | canHasAsChild (const GeometryObject &potential_child) const
bool | canHasAsParent (const GeometryObject &potential_parent) const
void | ensureCanHasAsParent (const GeometryObject &potential_parent) const
| Throw CyclicReferenceException if `potential_parent` is in subtree with this in root.
void | ensureCanHaveAsChild (const GeometryObject &potential_child) const
| Throw CyclicReferenceException if `potential_child` has this in subtree.

## Static Public Member Functions
static Vec< 2, double > | childVec (const Vec< 3, double > &v)
| Convert vector `v` to space of child.
Static Public Member Functions inherited from plask::GeometryObject
static bool | PredicateIsLeaf (const GeometryObject &el)
| Predicate which check if given object is leaf.

## Public Attributes
unsigned | rev_max_steps
double | rev_min_step_size
Public Attributes inherited from plask::GeometryObject
unsigned | max_steps
| Maximum number of points to split a single leaf.
double | min_step_size
| Minimum distance between divisions for a single leaf.
std::set< std::string > | roles
| Roles/tags.
boost::signals2::signal< void(Event &)> | changed
| Changed signal, fired when object was changed.

## Static Public Attributes
static const char * | NAME = PLASK_REVOLUTION_NAME
Static Public Attributes inherited from plask::GeometryObjectD< dim >
static const int | DIM = dim

## Additional Inherited Members
Public Types inherited from plask::GeometryObjectTransformSpace< 3, 2 >
typedef ChildType::Box | ChildBox
typedef ChildType::DVec | ChildVec
typedef GeometryObjectTransform< this_dim, GeometryObjectD< child_dim > >::DVec | DVec
Public Types inherited from plask::GeometryObjectTransform< dim, Child_Type >
typedef GeometryObjectD< dim >::DVec | DVec
typedef GeometryObjectD< dim >::Box | Box
typedef Child_Type | ChildType
Public Types inherited from plask::GeometryObjectD< dim >
typedef Primitive< dim >::Box | Box
typedef Primitive< dim >::DVec | DVec
Public Types inherited from plask::GeometryObject
enum | Type { TYPE_LEAF = 0 , TYPE_TRANSFORM = 1 , TYPE_SPACE_CHANGER = 2 , TYPE_CONTAINER = 3 , TYPE_GEOMETRY = 4 , TYPE_SEPARATOR = 5 }
| Type of geometry object. More...
typedef std::function< bool(const GeometryObject &)> | Predicate
| Predicate on GeometryObject.
Protected Member Functions inherited from plask::GeometryObject
virtual void | writeXMLAttr (XMLWriter::Element &dest_xml_object, const AxisNames &axes) const
| Append XML attributes of this to `dest_xml_object`.
virtual void | writeXMLChildren (XMLWriter::Element &dest_xml_object, WriteXMLCallback &write_cb, const AxisNames &axes) const
| Append all children of this to XML `dest_xml_object`.
void | ensureIsValidChildNr (std::size_t child_no, const char *method_name="getChildNo", const char *arg_name="child_no") const
| Check if given `index` is valid child index and throw exception of it is not.
void | ensureIsValidInsertPosition (std::size_t child_no, const char *method_name="insert", const char *arg_name="pos") const
| Check if given `index` is valid insert index and throw exception of it is not.
void | fireChildrenChanged ()
| Inform observers that children list was changed (also that this is resized)
void | fireChildrenRemoved (std::size_t beginIndex, std::size_t endIndex)
void | fireChildrenInserted (std::size_t beginIndex, std::size_t endIndex)
Static Protected Member Functions inherited from plask::GeometryObjectTransform< dim, Child_Type >
template<typename ThisType >
static void | _getNotChangedPositionsToVec (ThisType _this, const GeometryObject::Predicate &predicate, std::vector< DVec > &dest, const PathHints *path)
| Possible implementation for getPositionsToVec, which does not change children position and is used by many subclasses.
Protected Attributes inherited from plask::GeometryObjectTransform< dim, Child_Type >
shared_ptr< ChildType > | _child

## Detailed Description

Represent 3D geometry object which is an effect of revolving a 2D object (child) around the up axis.

Child should have getBoundingBox().lower.tran() >= 0. When it doesn't have, it is implicitly clipped.

Definition at line 27 of file transform_space_cylindric.hpp.

## Constructor & Destructor Documentation

## ◆ Revolution()

plask::Revolution::Revolution | ( | shared_ptr< ChildType > | child = `shared_ptr<ChildType>()`,
|  | bool | auto_clip = `false`
| ) |  |
| inline

Parameters

  child | object to revolve
  auto_clip | if false child must have getBoundingBox().lower.tran() >= 0, if true it will be clipped

Definition at line 35 of file transform_space_cylindric.hpp.

## Member Function Documentation

## ◆ childIsClipped()

bool plask::Revolution::childIsClipped | ( |  | ) | const

Check if child can be clipped.

Returns
  `true` if child has getBoundingBox().lower.tran() < 0

Definition at line 63 of file transform_space_cylindric.cpp.

## ◆ childVec()

static Vec< 2, double > plask::Revolution::childVec | ( | const Vec< 3, double > & | v | ) |
| inline static

Convert vector `v` to space of child.

Parameters

  r | vector in parent (this) space, i.e. in space where (0, 0, 0) is at center of base of cylinder

Returns
  vector in child space

Definition at line 88 of file transform_space_cylindric.hpp.

## ◆ contains()

bool plask::Revolution::contains | ( | const DVec & | point | ) | const
| override virtual

Check if this geometry object contains point.

Parameters

  point | point in local coordinates

Returns
  true only if this geometry contains point p

Implements plask::GeometryObjectD< dim >.

Definition at line 26 of file transform_space_cylindric.cpp.

## ◆ fromChildCoords()

Revolution::Box plask::Revolution::fromChildCoords | ( | const typename ChildType::Box & | child_bbox | ) | const
| override virtual

Convert bounding box from child's to this's coordinates.

Parameters

  child_bbox | bounding box of child

Returns
  `child_bbox` converted to this's coordinates

Implements plask::GeometryObjectTransform< dim, Child_Type >.

Definition at line 38 of file transform_space_cylindric.cpp.

## ◆ getMaterial()

shared_ptr< Material > plask::Revolution::getMaterial | ( | const DVec & | p | ) | const
| override virtual

Return material in a given point inside the geometry object.

Parameters

  p | point

Returns
  material in given point, or `nullptr` if this GeometryObject not contains point p

Implements plask::GeometryObjectD< dim >.

Definition at line 34 of file transform_space_cylindric.cpp.

## ◆ getPathsAt()

GeometryObject::Subtree plask::Revolution::getPathsAt | ( | const DVec & | point,
|  | bool | all = `false`
| ) |  | const
| override virtual

Find all paths to objects which lies at given `point`.

Parameters

  point | a point in local coordinates
  all | if true then return all paths if branches overlap the point

Returns
  all paths, last one is on top and overlies the rest

Implements plask::GeometryObjectD< dim >.

Definition at line 44 of file transform_space_cylindric.cpp.

## ◆ getPositionsToVec()

void plask::Revolution::getPositionsToVec | ( | const GeometryObject::Predicate & | predicate,
|  | std::vector< DVec > & | dest,
|  | const PathHints * | path = `0`
| ) |  | const
| override virtual

Calculate and append to vector positions of all nodes which fulfill given `predicate`, optionally marked by path.

Some objects can have all vector of NaNs as translations. This mean that translation is not well defined (some space changer on path).

Parameters

  predicate | predicate required to match
  dest | place to add result, positions will be added in the same order which is generated by GeometryObject::getObjectsToVec
  path | (optional) path hints which limits search space

Implements plask::GeometryObjectD< dim >.

Definition at line 49 of file transform_space_cylindric.cpp.

## ◆ getTypeName()

std::string plask::Revolution::getTypeName | ( |  | ) | const
| override virtual

Get name of object type (like: "block2d", "shelf", "stack3d", etc.).

This name is used as tag name when object is serialized to XML.

Returns
  name of object type

Implements plask::GeometryObject.

Definition at line 24 of file transform_space_cylindric.cpp.

## ◆ setRevMaxSteps()

void plask::Revolution::setRevMaxSteps | ( | unsigned long | value | ) |
| inline

Set max_steps for revolution.

Definition at line 48 of file transform_space_cylindric.hpp.

## ◆ setRevMinStepSize()

void plask::Revolution::setRevMinStepSize | ( | double | value | ) |
| inline

Set min_step_size for revolution.

Definition at line 54 of file transform_space_cylindric.hpp.

## ◆ shallowCopy()

shared_ptr< GeometryObject > plask::Revolution::shallowCopy | ( |  | ) | const
| override virtual

Get shallow copy of this.

In the shallow copy all children are the same

Returns
  shallow copy of this

Implements plask::GeometryObject.

Definition at line 42 of file transform_space_cylindric.cpp.

## Member Data Documentation

## ◆ NAME

const char * plask::Revolution::NAME = PLASK_REVOLUTION_NAME
| static

Definition at line 45 of file transform_space_cylindric.hpp.

## ◆ rev_max_steps

unsigned plask::Revolution::rev_max_steps

Definition at line 28 of file transform_space_cylindric.hpp.

## ◆ rev_min_step_size

double plask::Revolution::rev_min_step_size

Definition at line 29 of file transform_space_cylindric.hpp.

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

- plask/geometry/transform_space_cylindric.hpp
- plask/geometry/transform_space_cylindric.cpp