Documentation improvements
This commit is contained in:
parent
f9fb7ccad3
commit
22b2834d55
4 changed files with 55 additions and 12 deletions
|
|
@ -22,6 +22,22 @@ class GridRepetition:
|
|||
"""
|
||||
GridRepetition provides support for efficiently embedding multiple copies of a `Pattern`
|
||||
into another `Pattern` at regularly-spaced offsets.
|
||||
|
||||
Note that rotation, scaling, and mirroring are applied to individual instances of the
|
||||
pattern, not to the grid vectors.
|
||||
|
||||
The order of operations is
|
||||
1. A single refernce instance to the target pattern is mirrored
|
||||
2. The single instance is rotated.
|
||||
3. The instance is scaled by the scaling factor.
|
||||
4. The instance is shifted by the provided offset
|
||||
(no mirroring/scaling/rotation is applied to the offset).
|
||||
5. Additional copies of the instance will appear at coordinates specified by
|
||||
`(offset + aa * a_vector + bb * b_vector)`, with `aa in range(0, a_count)`
|
||||
and `bb in range(0, b_count)`. All instance locations remain unaffected by
|
||||
mirroring/scaling/rotation, though each instance's data will be transformed
|
||||
relative to the instance's location (i.e. relative to the contained pattern's
|
||||
(0, 0) point).
|
||||
"""
|
||||
__slots__ = ('_pattern',
|
||||
'_offset',
|
||||
|
|
@ -43,7 +59,7 @@ class GridRepetition:
|
|||
""" (x, y) offset for the base instance """
|
||||
|
||||
_dose: float
|
||||
""" Dose factor """
|
||||
""" Scaling factor applied to the dose """
|
||||
|
||||
_rotation: float
|
||||
""" Rotation of the individual instances in the grid (not the grid vectors).
|
||||
|
|
@ -76,7 +92,7 @@ class GridRepetition:
|
|||
""" Number of instances along the direction specified by the `b_vector` """
|
||||
|
||||
identifier: Tuple[Any, ...]
|
||||
""" Arbitrary identifier """
|
||||
""" Arbitrary identifier, used internally by some `masque` functions. """
|
||||
|
||||
locked: bool
|
||||
""" If `True`, disallows changes to the GridRepetition """
|
||||
|
|
@ -96,15 +112,23 @@ class GridRepetition:
|
|||
identifier: Tuple[Any, ...] = ()):
|
||||
"""
|
||||
Args:
|
||||
pattern: Pattern to reference.
|
||||
a_vector: First lattice vector, of the form `[x, y]`.
|
||||
Specifies center-to-center spacing between adjacent elements.
|
||||
Specifies center-to-center spacing between adjacent instances.
|
||||
a_count: Number of elements in the a_vector direction.
|
||||
b_vector: Second lattice vector, of the form `[x, y]`.
|
||||
Specifies center-to-center spacing between adjacent elements.
|
||||
Specifies center-to-center spacing between adjacent instances.
|
||||
Can be omitted when specifying a 1D array.
|
||||
b_count: Number of elements in the `b_vector` direction.
|
||||
Should be omitted if `b_vector` was omitted.
|
||||
offset: (x, y) offset applied to all instances.
|
||||
rotation: Rotation (radians, counterclockwise) applied to each instance.
|
||||
Relative to each instance's (0, 0).
|
||||
mirrored: Whether to mirror individual instances across the x and y axes.
|
||||
dose: Scaling factor applied to the dose.
|
||||
scale: Scaling factor applied to the instances' geometry.
|
||||
locked: Whether the `GridRepetition` is locked after initialization.
|
||||
identifier: Arbitrary tuple, used internally by some `masque` functions.
|
||||
|
||||
Raises:
|
||||
PatternError if `b_*` inputs conflict with each other
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue