mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-22 20:02:30 +00:00
Make dataclasses args optional to support Python 3.9 #6725
This commit is contained in:
@@ -14,11 +14,15 @@
|
|||||||
# Currently extensions support for v2 is only read-only.
|
# Currently extensions support for v2 is only read-only.
|
||||||
|
|
||||||
|
|
||||||
|
import sys
|
||||||
from dataclasses import dataclass, field, fields
|
from dataclasses import dataclass, field, fields
|
||||||
from typing import List, NamedTuple, Optional
|
from typing import List, NamedTuple, Optional
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
DATACLASS_KWARGS = {} if sys.version_info < (3, 10) else {"slots": True, "kw_only": True}
|
||||||
|
|
||||||
|
|
||||||
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsPriorities:
|
class ExtensionsPriorities:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -35,7 +39,7 @@ class ExtensionsPriorities:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsSnippetTypes:
|
class ExtensionsSnippetTypes:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -52,7 +56,7 @@ class ExtensionsSnippetTypes:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsStages:
|
class ExtensionsStages:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -69,7 +73,7 @@ class ExtensionsStages:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsTopicLabels:
|
class ExtensionsTopicLabels:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -86,7 +90,7 @@ class ExtensionsTopicLabels:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsTopicStatuses:
|
class ExtensionsTopicStatuses:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -103,7 +107,7 @@ class ExtensionsTopicStatuses:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsTopicTypes:
|
class ExtensionsTopicTypes:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -120,7 +124,7 @@ class ExtensionsTopicTypes:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsUsers:
|
class ExtensionsUsers:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -137,7 +141,7 @@ class ExtensionsUsers:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Extensions:
|
class Extensions:
|
||||||
topic_types: Optional[ExtensionsTopicTypes] = field(
|
topic_types: Optional[ExtensionsTopicTypes] = field(
|
||||||
default=None,
|
default=None,
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
|
import sys
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
from typing import List, Optional
|
from typing import List, Optional
|
||||||
|
|
||||||
from xsdata.models.datatype import XmlDateTime
|
from xsdata.models.datatype import XmlDateTime
|
||||||
|
|
||||||
|
DATACLASS_KWARGS = {} if sys.version_info < (3, 10) else {"slots": True, "kw_only": True}
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
|
||||||
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class BimSnippet:
|
class BimSnippet:
|
||||||
reference: str = field(
|
reference: str = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -38,7 +41,7 @@ class BimSnippet:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class CommentViewpoint:
|
class CommentViewpoint:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -53,7 +56,7 @@ class CommentViewpoint:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class HeaderFile:
|
class HeaderFile:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -109,7 +112,7 @@ class HeaderFile:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class TopicDocumentReference:
|
class TopicDocumentReference:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -147,7 +150,7 @@ class TopicDocumentReference:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class TopicRelatedTopic:
|
class TopicRelatedTopic:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -162,7 +165,7 @@ class TopicRelatedTopic:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ViewPoint:
|
class ViewPoint:
|
||||||
viewpoint: Optional[str] = field(
|
viewpoint: Optional[str] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -198,7 +201,7 @@ class ViewPoint:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Comment:
|
class Comment:
|
||||||
date: XmlDateTime = field(
|
date: XmlDateTime = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -258,7 +261,7 @@ class Comment:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Header:
|
class Header:
|
||||||
file: List[HeaderFile] = field(
|
file: List[HeaderFile] = field(
|
||||||
default_factory=list,
|
default_factory=list,
|
||||||
@@ -271,7 +274,7 @@ class Header:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Topic:
|
class Topic:
|
||||||
reference_link: List[str] = field(
|
reference_link: List[str] = field(
|
||||||
default_factory=list,
|
default_factory=list,
|
||||||
@@ -425,7 +428,7 @@ class Topic:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Markup:
|
class Markup:
|
||||||
header: Optional[Header] = field(
|
header: Optional[Header] = field(
|
||||||
default=None,
|
default=None,
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
|
import sys
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
from typing import Optional
|
from typing import Optional
|
||||||
|
|
||||||
|
DATACLASS_KWARGS = {} if sys.version_info < (3, 10) else {"slots": True, "kw_only": True}
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
|
||||||
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Project:
|
class Project:
|
||||||
name: Optional[str] = field(
|
name: Optional[str] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -21,7 +24,7 @@ class Project:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ProjectExtension:
|
class ProjectExtension:
|
||||||
project: Optional[Project] = field(
|
project: Optional[Project] = field(
|
||||||
default=None,
|
default=None,
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
|
import sys
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
from typing import Optional
|
from typing import Optional
|
||||||
|
|
||||||
|
DATACLASS_KWARGS = {} if sys.version_info < (3, 10) else {"slots": True, "kw_only": True}
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
|
||||||
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Version:
|
class Version:
|
||||||
detailed_version: Optional[str] = field(
|
detailed_version: Optional[str] = field(
|
||||||
default=None,
|
default=None,
|
||||||
|
|||||||
@@ -1,14 +1,17 @@
|
|||||||
|
import sys
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
from enum import Enum
|
from enum import Enum
|
||||||
from typing import List, Optional
|
from typing import List, Optional
|
||||||
|
|
||||||
|
DATACLASS_KWARGS = {} if sys.version_info < (3, 10) else {"slots": True, "kw_only": True}
|
||||||
|
|
||||||
|
|
||||||
class BitmapFormat(Enum):
|
class BitmapFormat(Enum):
|
||||||
PNG = "PNG"
|
PNG = "PNG"
|
||||||
JPG = "JPG"
|
JPG = "JPG"
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Component:
|
class Component:
|
||||||
originating_system: Optional[str] = field(
|
originating_system: Optional[str] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -35,7 +38,7 @@ class Component:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Direction:
|
class Direction:
|
||||||
x: float = field(
|
x: float = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -60,7 +63,7 @@ class Direction:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Point:
|
class Point:
|
||||||
x: float = field(
|
x: float = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -85,7 +88,7 @@ class Point:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ViewSetupHints:
|
class ViewSetupHints:
|
||||||
spaces_visible: Optional[bool] = field(
|
spaces_visible: Optional[bool] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -110,7 +113,7 @@ class ViewSetupHints:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ClippingPlane:
|
class ClippingPlane:
|
||||||
location: Point = field(
|
location: Point = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -128,7 +131,7 @@ class ClippingPlane:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ComponentColoringColor:
|
class ComponentColoringColor:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -151,7 +154,7 @@ class ComponentColoringColor:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ComponentSelection:
|
class ComponentSelection:
|
||||||
component: List[Component] = field(
|
component: List[Component] = field(
|
||||||
default_factory=list,
|
default_factory=list,
|
||||||
@@ -163,7 +166,7 @@ class ComponentSelection:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ComponentVisibilityExceptions:
|
class ComponentVisibilityExceptions:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -178,7 +181,7 @@ class ComponentVisibilityExceptions:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Line:
|
class Line:
|
||||||
start_point: Point = field(
|
start_point: Point = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -196,7 +199,7 @@ class Line:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class OrthogonalCamera:
|
class OrthogonalCamera:
|
||||||
"""
|
"""
|
||||||
Attributes
|
Attributes
|
||||||
@@ -236,7 +239,7 @@ class OrthogonalCamera:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class PerspectiveCamera:
|
class PerspectiveCamera:
|
||||||
"""
|
"""
|
||||||
Attributes
|
Attributes
|
||||||
@@ -281,7 +284,7 @@ class PerspectiveCamera:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class VisualizationInfoBitmap:
|
class VisualizationInfoBitmap:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -330,7 +333,7 @@ class VisualizationInfoBitmap:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ComponentColoring:
|
class ComponentColoring:
|
||||||
color: List[ComponentColoringColor] = field(
|
color: List[ComponentColoringColor] = field(
|
||||||
default_factory=list,
|
default_factory=list,
|
||||||
@@ -342,7 +345,7 @@ class ComponentColoring:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ComponentVisibility:
|
class ComponentVisibility:
|
||||||
exceptions: Optional[ComponentVisibilityExceptions] = field(
|
exceptions: Optional[ComponentVisibilityExceptions] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -360,7 +363,7 @@ class ComponentVisibility:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class VisualizationInfoClippingPlanes:
|
class VisualizationInfoClippingPlanes:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -374,7 +377,7 @@ class VisualizationInfoClippingPlanes:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class VisualizationInfoLines:
|
class VisualizationInfoLines:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -389,7 +392,7 @@ class VisualizationInfoLines:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Components:
|
class Components:
|
||||||
view_setup_hints: Optional[ViewSetupHints] = field(
|
view_setup_hints: Optional[ViewSetupHints] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -421,7 +424,7 @@ class Components:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class VisualizationInfo:
|
class VisualizationInfo:
|
||||||
"""
|
"""
|
||||||
VisualizationInfo documentation.
|
VisualizationInfo documentation.
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
|
import sys
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
from typing import List, Optional
|
from typing import List, Optional
|
||||||
|
|
||||||
|
DATACLASS_KWARGS = {} if sys.version_info < (3, 10) else {"slots": True, "kw_only": True}
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
|
||||||
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Document:
|
class Document:
|
||||||
filename: str = field(
|
filename: str = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -34,7 +37,7 @@ class Document:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class DocumentInfoDocuments:
|
class DocumentInfoDocuments:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -49,7 +52,7 @@ class DocumentInfoDocuments:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class DocumentInfo:
|
class DocumentInfo:
|
||||||
documents: Optional[DocumentInfoDocuments] = field(
|
documents: Optional[DocumentInfoDocuments] = field(
|
||||||
default=None,
|
default=None,
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
|
import sys
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
from typing import List, Optional
|
from typing import List, Optional
|
||||||
|
|
||||||
|
DATACLASS_KWARGS = {} if sys.version_info < (3, 10) else {"slots": True, "kw_only": True}
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
|
||||||
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsPriorities:
|
class ExtensionsPriorities:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -19,7 +22,7 @@ class ExtensionsPriorities:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsSnippetTypes:
|
class ExtensionsSnippetTypes:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -36,7 +39,7 @@ class ExtensionsSnippetTypes:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsStages:
|
class ExtensionsStages:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -53,7 +56,7 @@ class ExtensionsStages:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsTopicLabels:
|
class ExtensionsTopicLabels:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -70,7 +73,7 @@ class ExtensionsTopicLabels:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsTopicStatuses:
|
class ExtensionsTopicStatuses:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -87,7 +90,7 @@ class ExtensionsTopicStatuses:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsTopicTypes:
|
class ExtensionsTopicTypes:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -104,7 +107,7 @@ class ExtensionsTopicTypes:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ExtensionsUsers:
|
class ExtensionsUsers:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -121,7 +124,7 @@ class ExtensionsUsers:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Extensions:
|
class Extensions:
|
||||||
topic_types: Optional[ExtensionsTopicTypes] = field(
|
topic_types: Optional[ExtensionsTopicTypes] = field(
|
||||||
default=None,
|
default=None,
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
|
import sys
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
from typing import List, Optional
|
from typing import List, Optional
|
||||||
|
|
||||||
from xsdata.models.datatype import XmlDateTime
|
from xsdata.models.datatype import XmlDateTime
|
||||||
|
|
||||||
|
DATACLASS_KWARGS = {} if sys.version_info < (3, 10) else {"slots": True, "kw_only": True}
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
|
||||||
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class BimSnippet:
|
class BimSnippet:
|
||||||
reference: str = field(
|
reference: str = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -44,7 +47,7 @@ class BimSnippet:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class CommentViewpoint:
|
class CommentViewpoint:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -59,7 +62,7 @@ class CommentViewpoint:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class DocumentReference:
|
class DocumentReference:
|
||||||
document_guid: Optional[str] = field(
|
document_guid: Optional[str] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -100,7 +103,7 @@ class DocumentReference:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class File:
|
class File:
|
||||||
filename: Optional[str] = field(
|
filename: Optional[str] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -157,7 +160,7 @@ class File:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class TopicLabels:
|
class TopicLabels:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -174,7 +177,7 @@ class TopicLabels:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class TopicReferenceLinks:
|
class TopicReferenceLinks:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -191,7 +194,7 @@ class TopicReferenceLinks:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class TopicRelatedTopicsRelatedTopic:
|
class TopicRelatedTopicsRelatedTopic:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -206,7 +209,7 @@ class TopicRelatedTopicsRelatedTopic:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ViewPoint:
|
class ViewPoint:
|
||||||
viewpoint: Optional[str] = field(
|
viewpoint: Optional[str] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -246,7 +249,7 @@ class ViewPoint:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Comment:
|
class Comment:
|
||||||
date: XmlDateTime = field(
|
date: XmlDateTime = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -312,7 +315,7 @@ class Comment:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class HeaderFiles:
|
class HeaderFiles:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -327,7 +330,7 @@ class HeaderFiles:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class TopicDocumentReferences:
|
class TopicDocumentReferences:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -342,7 +345,7 @@ class TopicDocumentReferences:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class TopicRelatedTopics:
|
class TopicRelatedTopics:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -357,7 +360,7 @@ class TopicRelatedTopics:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class TopicViewpoints:
|
class TopicViewpoints:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -372,7 +375,7 @@ class TopicViewpoints:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Header:
|
class Header:
|
||||||
files: Optional[HeaderFiles] = field(
|
files: Optional[HeaderFiles] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -384,7 +387,7 @@ class Header:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class TopicComments:
|
class TopicComments:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -399,7 +402,7 @@ class TopicComments:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Topic:
|
class Topic:
|
||||||
reference_links: Optional[TopicReferenceLinks] = field(
|
reference_links: Optional[TopicReferenceLinks] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -596,7 +599,7 @@ class Topic:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Markup:
|
class Markup:
|
||||||
header: Optional[Header] = field(
|
header: Optional[Header] = field(
|
||||||
default=None,
|
default=None,
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
|
import sys
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
from typing import Optional
|
from typing import Optional
|
||||||
|
|
||||||
|
DATACLASS_KWARGS = {} if sys.version_info < (3, 10) else {"slots": True, "kw_only": True}
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
|
||||||
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Project:
|
class Project:
|
||||||
name: Optional[str] = field(
|
name: Optional[str] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -25,7 +28,7 @@ class Project:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ProjectInfo:
|
class ProjectInfo:
|
||||||
project: Project = field(
|
project: Project = field(
|
||||||
metadata={
|
metadata={
|
||||||
|
|||||||
@@ -1,7 +1,10 @@
|
|||||||
|
import sys
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
|
|
||||||
|
DATACLASS_KWARGS = {} if sys.version_info < (3, 10) else {"slots": True, "kw_only": True}
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
|
||||||
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Version:
|
class Version:
|
||||||
version_id: str = field(
|
version_id: str = field(
|
||||||
metadata={
|
metadata={
|
||||||
|
|||||||
@@ -1,14 +1,18 @@
|
|||||||
|
import sys
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
from enum import Enum
|
from enum import Enum
|
||||||
from typing import List, Optional
|
from typing import List, Optional
|
||||||
|
|
||||||
|
|
||||||
|
DATACLASS_KWARGS = {} if sys.version_info < (3, 10) else {"slots": True, "kw_only": True}
|
||||||
|
|
||||||
|
|
||||||
class BitmapFormat(Enum):
|
class BitmapFormat(Enum):
|
||||||
PNG = "png"
|
PNG = "png"
|
||||||
JPG = "jpg"
|
JPG = "jpg"
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Component:
|
class Component:
|
||||||
originating_system: Optional[str] = field(
|
originating_system: Optional[str] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -39,7 +43,7 @@ class Component:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Direction:
|
class Direction:
|
||||||
x: float = field(
|
x: float = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -64,7 +68,7 @@ class Direction:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Point:
|
class Point:
|
||||||
x: float = field(
|
x: float = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -89,7 +93,7 @@ class Point:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ViewSetupHints:
|
class ViewSetupHints:
|
||||||
spaces_visible: bool = field(
|
spaces_visible: bool = field(
|
||||||
default=False,
|
default=False,
|
||||||
@@ -114,7 +118,7 @@ class ViewSetupHints:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Bitmap:
|
class Bitmap:
|
||||||
format: BitmapFormat = field(
|
format: BitmapFormat = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -162,7 +166,7 @@ class Bitmap:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ClippingPlane:
|
class ClippingPlane:
|
||||||
location: Point = field(
|
location: Point = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -180,7 +184,7 @@ class ClippingPlane:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ComponentColoringColorComponents:
|
class ComponentColoringColorComponents:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -195,7 +199,7 @@ class ComponentColoringColorComponents:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ComponentSelection:
|
class ComponentSelection:
|
||||||
component: List[Component] = field(
|
component: List[Component] = field(
|
||||||
default_factory=list,
|
default_factory=list,
|
||||||
@@ -206,7 +210,7 @@ class ComponentSelection:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ComponentVisibilityExceptions:
|
class ComponentVisibilityExceptions:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -220,7 +224,7 @@ class ComponentVisibilityExceptions:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Line:
|
class Line:
|
||||||
start_point: Point = field(
|
start_point: Point = field(
|
||||||
metadata={
|
metadata={
|
||||||
@@ -238,7 +242,7 @@ class Line:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class OrthogonalCamera:
|
class OrthogonalCamera:
|
||||||
"""
|
"""
|
||||||
Attributes
|
Attributes
|
||||||
@@ -288,7 +292,7 @@ class OrthogonalCamera:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class PerspectiveCamera:
|
class PerspectiveCamera:
|
||||||
"""
|
"""
|
||||||
Attributes
|
Attributes
|
||||||
@@ -344,7 +348,7 @@ class PerspectiveCamera:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ComponentColoringColor:
|
class ComponentColoringColor:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -366,7 +370,7 @@ class ComponentColoringColor:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ComponentVisibility:
|
class ComponentVisibility:
|
||||||
view_setup_hints: Optional[ViewSetupHints] = field(
|
view_setup_hints: Optional[ViewSetupHints] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -391,7 +395,7 @@ class ComponentVisibility:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class VisualizationInfoBitmaps:
|
class VisualizationInfoBitmaps:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -405,7 +409,7 @@ class VisualizationInfoBitmaps:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class VisualizationInfoClippingPlanes:
|
class VisualizationInfoClippingPlanes:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -419,7 +423,7 @@ class VisualizationInfoClippingPlanes:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class VisualizationInfoLines:
|
class VisualizationInfoLines:
|
||||||
class Meta:
|
class Meta:
|
||||||
global_type = False
|
global_type = False
|
||||||
@@ -433,7 +437,7 @@ class VisualizationInfoLines:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class ComponentColoring:
|
class ComponentColoring:
|
||||||
color: List[ComponentColoringColor] = field(
|
color: List[ComponentColoringColor] = field(
|
||||||
default_factory=list,
|
default_factory=list,
|
||||||
@@ -444,7 +448,7 @@ class ComponentColoring:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class Components:
|
class Components:
|
||||||
selection: Optional[ComponentSelection] = field(
|
selection: Optional[ComponentSelection] = field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -469,7 +473,7 @@ class Components:
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass(slots=True, kw_only=True)
|
@dataclass(**DATACLASS_KWARGS)
|
||||||
class VisualizationInfo:
|
class VisualizationInfo:
|
||||||
"""
|
"""
|
||||||
VisualizationInfo documentation.
|
VisualizationInfo documentation.
|
||||||
|
|||||||
@@ -17,6 +17,7 @@
|
|||||||
# along with IfcOpenShell. If not, see <http://www.gnu.org/licenses/>.
|
# along with IfcOpenShell. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
import sys
|
||||||
import ifcopenshell.util.unit
|
import ifcopenshell.util.unit
|
||||||
import ifcopenshell.api.geometry
|
import ifcopenshell.api.geometry
|
||||||
import dataclasses
|
import dataclasses
|
||||||
@@ -26,6 +27,8 @@ from ifcopenshell.api.geometry.add_window_representation import create_ifc_windo
|
|||||||
from math import cos, radians
|
from math import cos, radians
|
||||||
from typing import Any, Optional, Literal, Union, get_args, overload
|
from typing import Any, Optional, Literal, Union, get_args, overload
|
||||||
|
|
||||||
|
DATACLASS_SLOTS = {} if sys.version_info < (3, 10) else {"slots": True}
|
||||||
|
|
||||||
|
|
||||||
DOOR_TYPE = Literal[
|
DOOR_TYPE = Literal[
|
||||||
"SINGLE_SWING_LEFT",
|
"SINGLE_SWING_LEFT",
|
||||||
@@ -96,7 +99,7 @@ def create_ifc_box(
|
|||||||
|
|
||||||
# we use dataclass as we need default values for arguments
|
# we use dataclass as we need default values for arguments
|
||||||
# it's okay to use slots since we don't need dynamic attributes
|
# it's okay to use slots since we don't need dynamic attributes
|
||||||
@dataclasses.dataclass(slots=True)
|
@dataclasses.dataclass(**DATACLASS_SLOTS)
|
||||||
class DoorLiningProperties:
|
class DoorLiningProperties:
|
||||||
LiningDepth: Optional[float] = None
|
LiningDepth: Optional[float] = None
|
||||||
"""Optional, defaults to 50mm."""
|
"""Optional, defaults to 50mm."""
|
||||||
@@ -170,7 +173,7 @@ class DoorLiningProperties:
|
|||||||
setattr(self, attr, default_value * si_conversion)
|
setattr(self, attr, default_value * si_conversion)
|
||||||
|
|
||||||
|
|
||||||
@dataclasses.dataclass(slots=True)
|
@dataclasses.dataclass(**DATACLASS_SLOTS)
|
||||||
class DoorPanelProperties:
|
class DoorPanelProperties:
|
||||||
PanelDepth: Optional[float] = None
|
PanelDepth: Optional[float] = None
|
||||||
"""Frame thickness by Y axis. Optional, defaults to 35 mm."""
|
"""Frame thickness by Y axis. Optional, defaults to 35 mm."""
|
||||||
|
|||||||
@@ -17,6 +17,7 @@
|
|||||||
# along with IfcOpenShell. If not, see <http://www.gnu.org/licenses/>.
|
# along with IfcOpenShell. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
import sys
|
||||||
import numpy as np
|
import numpy as np
|
||||||
import dataclasses
|
import dataclasses
|
||||||
import ifcopenshell.api.geometry
|
import ifcopenshell.api.geometry
|
||||||
@@ -25,6 +26,7 @@ from itertools import chain
|
|||||||
from ifcopenshell.util.shape_builder import ShapeBuilder, V
|
from ifcopenshell.util.shape_builder import ShapeBuilder, V
|
||||||
from typing import Any, Optional, Literal, Union, overload
|
from typing import Any, Optional, Literal, Union, overload
|
||||||
|
|
||||||
|
DATACLASS_SLOTS = {} if sys.version_info < (3, 10) else {"slots": True}
|
||||||
|
|
||||||
# SCHEMAS describe panels setup
|
# SCHEMAS describe panels setup
|
||||||
# where:
|
# where:
|
||||||
@@ -238,7 +240,7 @@ def create_ifc_window(
|
|||||||
|
|
||||||
# we use dataclass as we need default values for arguments
|
# we use dataclass as we need default values for arguments
|
||||||
# it's okay to use slots since we don't need dynamic attributes
|
# it's okay to use slots since we don't need dynamic attributes
|
||||||
@dataclasses.dataclass(slots=True)
|
@dataclasses.dataclass(**DATACLASS_SLOTS)
|
||||||
class WindowLiningProperties:
|
class WindowLiningProperties:
|
||||||
LiningDepth: Optional[float] = None
|
LiningDepth: Optional[float] = None
|
||||||
"""Optional, defaults to 50mm."""
|
"""Optional, defaults to 50mm."""
|
||||||
@@ -321,7 +323,7 @@ class WindowLiningProperties:
|
|||||||
setattr(self, attr, default_value * si_conversion)
|
setattr(self, attr, default_value * si_conversion)
|
||||||
|
|
||||||
|
|
||||||
@dataclasses.dataclass(slots=True)
|
@dataclasses.dataclass(**DATACLASS_SLOTS)
|
||||||
class WindowPanelProperties:
|
class WindowPanelProperties:
|
||||||
FrameDepth: Optional[float] = None
|
FrameDepth: Optional[float] = None
|
||||||
"""Frame thickness by Y axis. Optional, defaults to 35 mm."""
|
"""Frame thickness by Y axis. Optional, defaults to 35 mm."""
|
||||||
|
|||||||
Reference in New Issue
Block a user