Skip to content

Commit

Permalink
Add common base class for all AD command variants
Browse files Browse the repository at this point in the history
  • Loading branch information
Argmaster committed Aug 19, 2024
1 parent 7c31175 commit 7ce8da4
Show file tree
Hide file tree
Showing 7 changed files with 22 additions and 16 deletions.
11 changes: 11 additions & 0 deletions src/pygerber/gerberx3/ast/nodes/aperture/AD.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
"""`pygerber.nodes.aperture.ADC` module contains definition of `AD` class."""

from __future__ import annotations

from pygerber.gerberx3.ast.nodes.base import Node


class AD(Node):
"""Common base class for all commands adding new apertures."""

aperture_identifier: str
5 changes: 2 additions & 3 deletions src/pygerber/gerberx3/ast/nodes/aperture/ADC.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

from pydantic import Field

from pygerber.gerberx3.ast.nodes.base import Node
from pygerber.gerberx3.ast.nodes.aperture.AD import AD
from pygerber.gerberx3.ast.nodes.types import Double

if TYPE_CHECKING:
Expand All @@ -15,10 +15,9 @@
from pygerber.gerberx3.ast.visitor import AstVisitor


class ADC(Node):
class ADC(AD):
"""Represents AD Gerber extended command."""

aperture_identifier: str
diameter: Double
hole_diameter: Optional[Double] = Field(default=None)

Expand Down
5 changes: 2 additions & 3 deletions src/pygerber/gerberx3/ast/nodes/aperture/ADO.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

from pydantic import Field

from pygerber.gerberx3.ast.nodes.base import Node
from pygerber.gerberx3.ast.nodes.aperture.AD import AD
from pygerber.gerberx3.ast.nodes.types import Double

if TYPE_CHECKING:
Expand All @@ -15,10 +15,9 @@
from pygerber.gerberx3.ast.visitor import AstVisitor


class ADO(Node):
class ADO(AD):
"""Represents AD obround Gerber extended command."""

aperture_identifier: str
width: Double
height: Double
hole_diameter: Optional[Double] = Field(default=None)
Expand Down
5 changes: 2 additions & 3 deletions src/pygerber/gerberx3/ast/nodes/aperture/ADP.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

from pydantic import Field

from pygerber.gerberx3.ast.nodes.base import Node
from pygerber.gerberx3.ast.nodes.aperture.AD import AD
from pygerber.gerberx3.ast.nodes.types import Double, Integer

if TYPE_CHECKING:
Expand All @@ -15,10 +15,9 @@
from pygerber.gerberx3.ast.visitor import AstVisitor


class ADP(Node):
class ADP(AD):
"""Represents AD polygon Gerber extended command."""

aperture_identifier: str
outer_diameter: Double
vertices: Integer
rotation: Optional[Double] = Field(default=None)
Expand Down
5 changes: 2 additions & 3 deletions src/pygerber/gerberx3/ast/nodes/aperture/ADR.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

from pydantic import Field

from pygerber.gerberx3.ast.nodes.base import Node
from pygerber.gerberx3.ast.nodes.aperture.AD import AD
from pygerber.gerberx3.ast.nodes.types import Double

if TYPE_CHECKING:
Expand All @@ -15,10 +15,9 @@
from pygerber.gerberx3.ast.visitor import AstVisitor


class ADR(Node):
class ADR(AD):
"""Represents AD rectangle Gerber extended command."""

aperture_identifier: str
width: Double
height: Double
hole_diameter: Optional[Double] = Field(default=None)
Expand Down
5 changes: 2 additions & 3 deletions src/pygerber/gerberx3/ast/nodes/aperture/ADmacro.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

from pydantic import Field

from pygerber.gerberx3.ast.nodes.base import Node
from pygerber.gerberx3.ast.nodes.aperture.AD import AD
from pygerber.gerberx3.ast.nodes.types import Double

if TYPE_CHECKING:
Expand All @@ -15,10 +15,9 @@
from pygerber.gerberx3.ast.visitor import AstVisitor


class ADmacro(Node):
class ADmacro(AD):
"""Represents AD macro Gerber extended command."""

aperture_identifier: str
name: str
params: Optional[List[Double]] = Field(default=None)

Expand Down
2 changes: 1 addition & 1 deletion src/pygerber/gerberx3/ast/nodes/enums.py
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ class Mount(Enum):
class Mirroring(Enum):
"""Mirroring enum."""

None_ = "N"
NONE = "N"
X = "X"
Y = "Y"
XY = "XY"
Expand Down

0 comments on commit 7ce8da4

Please sign in to comment.