mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-05 23:41:44 +00:00
Sort imports
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
import os
|
||||
import pathlib
|
||||
import shutil
|
||||
import zipfile
|
||||
|
||||
import requests
|
||||
import zipfile
|
||||
import os
|
||||
|
||||
# To test this locally, set these environment variables
|
||||
REPO_OWNER = os.environ.get("REPO_OWNER", "IfcOpenShell/IfcOpenShell")
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import boto3
|
||||
import ifcopenshell
|
||||
import ifcopenshell.util.element
|
||||
import boto3
|
||||
|
||||
s3 = boto3.client('s3')
|
||||
|
||||
|
||||
@@ -13,9 +13,10 @@ import hashlib
|
||||
import os
|
||||
import pathlib
|
||||
import re
|
||||
from urllib import request
|
||||
from github import Github
|
||||
from typing import NoReturn
|
||||
from urllib import request
|
||||
|
||||
from github import Github
|
||||
|
||||
|
||||
def get_repo_tag_names() -> list[str]:
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
import bpy
|
||||
|
||||
|
||||
bpy.ops.preferences.addon_disable(module='blenderbim')
|
||||
bpy.ops.wm.save_userpref()
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
import bpy
|
||||
|
||||
|
||||
bpy.ops.preferences.addon_enable(module='blenderbim')
|
||||
bpy.ops.wm.save_userpref()
|
||||
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import re
|
||||
import argparse
|
||||
import re
|
||||
from pathlib import Path
|
||||
|
||||
|
||||
def update_version(file_path: str, version: str) -> None:
|
||||
"""Update the version string in the given __init__.py file."""
|
||||
file_path = Path(file_path)
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import textwrap
|
||||
|
||||
# The `extensions` list should already be in here from `sphinx-quickstart`
|
||||
extensions = [
|
||||
# there may be others here already, e.g. 'sphinx.ext.mathjax'
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
# This program requires doxygen, sphinx, breathe and exhale.
|
||||
|
||||
import multiprocessing
|
||||
import os
|
||||
import sys
|
||||
import shutil
|
||||
import subprocess
|
||||
import multiprocessing
|
||||
import sys
|
||||
|
||||
# some extra check to see if we can find sphinx in pypy bin dir
|
||||
sphinx_build = os.path.join(os.path.dirname(sys.executable), 'sphinx-build')
|
||||
|
||||
+13
-12
@@ -99,35 +99,36 @@ Used environment variables:
|
||||
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
import re
|
||||
import sys
|
||||
import glob
|
||||
import subprocess as sp
|
||||
import shutil
|
||||
import tarfile
|
||||
import logging
|
||||
import multiprocessing
|
||||
import os
|
||||
import platform
|
||||
import threading
|
||||
import sysconfig
|
||||
from datetime import datetime
|
||||
import re
|
||||
import shutil
|
||||
|
||||
# @todo temporary for expired mpfr.org certificate on 2023-04-08
|
||||
import ssl
|
||||
import subprocess as sp
|
||||
import sys
|
||||
import sysconfig
|
||||
import tarfile
|
||||
import threading
|
||||
from datetime import datetime
|
||||
|
||||
ssl._create_default_https_context = ssl._create_unverified_context
|
||||
|
||||
import time
|
||||
from urllib.request import urlretrieve
|
||||
from collections.abc import Generator, Sequence
|
||||
from pathlib import Path
|
||||
from urllib.request import urlretrieve
|
||||
|
||||
try:
|
||||
from typing import Union, Literal
|
||||
from typing import Literal, Union
|
||||
except:
|
||||
# python 3.6 compatibility for rocky 8
|
||||
from typing import Union
|
||||
|
||||
from typing_extensions import Literal
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -8,12 +8,11 @@ or unpacks existing archives.
|
||||
Usage: python cache_dependencies.py [pack|unpack]
|
||||
"""
|
||||
|
||||
import tarfile
|
||||
import sys
|
||||
import tarfile
|
||||
from pathlib import Path
|
||||
from typing import Literal
|
||||
|
||||
|
||||
CACHE_PREFIX = "cache-"
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
from pathlib import Path
|
||||
|
||||
|
||||
WHEEL_FILENAME = next(
|
||||
p.name for p in (Path.cwd() / "pyodide").iterdir() if p.name.startswith("ifcopenshell-") and p.suffix == ".whl"
|
||||
)
|
||||
|
||||
@@ -47,6 +47,7 @@ select = [
|
||||
"UP", # pyupgrade
|
||||
"RUF015", # next() > list_comprehension[0]
|
||||
"RUF022", # sort __all__
|
||||
"I", # import sorting
|
||||
]
|
||||
ignore = [
|
||||
"FA100", # Conflicts with Blender using annotations for props definitions.
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
from dataclasses import fields
|
||||
from typing import NamedTuple, Union
|
||||
|
||||
import bcf.v2.model.extensions
|
||||
import bcf.v3.model.extensions
|
||||
from typing import NamedTuple, Union
|
||||
from dataclasses import fields
|
||||
|
||||
|
||||
class AttributeData(NamedTuple):
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
from typing import Union
|
||||
|
||||
import bcf.v2.model
|
||||
import bcf.v3.model
|
||||
from typing import Union
|
||||
|
||||
BimSnippet = Union[bcf.v2.model.BimSnippet, bcf.v3.model.BimSnippet]
|
||||
BitMap = Union[bcf.v2.model.VisualizationInfoBitmap, bcf.v3.model.Bitmap]
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
import tempfile
|
||||
from pathlib import Path
|
||||
from typing import Optional, Union
|
||||
|
||||
import bcf.agnostic.model as mdl
|
||||
import bcf.v2.bcfxml
|
||||
import bcf.v2.model
|
||||
import bcf.v2.topic
|
||||
import bcf.v3.bcfxml
|
||||
import bcf.v3.model
|
||||
import bcf.v3.topic
|
||||
import bcf.agnostic.model as mdl
|
||||
from pathlib import Path
|
||||
from typing import Union, Optional
|
||||
from typing_extensions import assert_never
|
||||
|
||||
TopicHandler = Union[bcf.v2.topic.TopicHandler, bcf.v3.topic.TopicHandler]
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import bcf.v2.visinfo
|
||||
import bcf.v3.visinfo
|
||||
from typing import Union
|
||||
|
||||
import bcf.v2.visinfo
|
||||
import bcf.v3.visinfo
|
||||
|
||||
VisualizationInfoHandler = Union[bcf.v2.visinfo.VisualizationInfoHandler, bcf.v3.visinfo.VisualizationInfoHandler]
|
||||
|
||||
@@ -29,7 +29,6 @@ from bcf.v3.bcfxml import BcfXml as BcfXml3
|
||||
from bcf.v3.model import Version as Version3
|
||||
from bcf.xml_parser import AbstractXmlParserSerializer, XmlParserSerializer
|
||||
|
||||
|
||||
BcfXml = Union[BcfXml2, BcfXml3]
|
||||
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@ original idea from https://stackoverflow.com/a/19722365/1307905
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import zipfile
|
||||
from io import BytesIO
|
||||
from os import PathLike
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
"""BCF XML V2 handler."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import uuid
|
||||
import warnings
|
||||
import zipfile
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
"""BCF XML V2 Topic handler."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import datetime
|
||||
import tempfile
|
||||
import uuid
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
import uuid
|
||||
import zipfile
|
||||
from typing import Any, Optional, Literal, Union
|
||||
from collections.abc import Iterable
|
||||
from typing import Any, Literal, Optional, Union
|
||||
|
||||
import ifcopenshell.util.placement
|
||||
import ifcopenshell.util.unit
|
||||
import numpy as np
|
||||
from ifcopenshell import entity_instance
|
||||
import ifcopenshell.util.unit
|
||||
import ifcopenshell.util.placement
|
||||
from numpy.typing import NDArray
|
||||
|
||||
import bcf.v2.model as mdl
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
"""BCF XML V3 handlers."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import uuid
|
||||
import warnings
|
||||
import zipfile
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
"""BCF XML V3 Topic handler."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import datetime
|
||||
import uuid
|
||||
import zipfile
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
import uuid
|
||||
import zipfile
|
||||
from typing import Any, Optional, Literal, Union
|
||||
from collections.abc import Iterable
|
||||
from typing import Any, Literal, Optional, Union
|
||||
|
||||
import ifcopenshell.util.placement
|
||||
import ifcopenshell.util.unit
|
||||
import numpy as np
|
||||
from ifcopenshell import entity_instance
|
||||
import ifcopenshell.util.unit
|
||||
import ifcopenshell.util.placement
|
||||
from numpy.typing import NDArray
|
||||
|
||||
import bcf.v3.model as mdl
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
import pytest
|
||||
|
||||
from bcf.xml_parser import XmlParserSerializer
|
||||
|
||||
|
||||
|
||||
@@ -4,9 +4,8 @@ import uuid
|
||||
from pathlib import Path
|
||||
from tempfile import TemporaryDirectory
|
||||
|
||||
import pytest
|
||||
|
||||
import bcf.v2.model as mdl
|
||||
import pytest
|
||||
from bcf.v2.bcfxml import BcfXml
|
||||
from bcf.v2.topic import TopicHandler
|
||||
from bcf.v2.visinfo import (
|
||||
|
||||
@@ -3,11 +3,10 @@ import os
|
||||
import zipfile
|
||||
from pathlib import Path
|
||||
|
||||
from xsdata.models.datatype import XmlDateTime
|
||||
|
||||
import bcf.v2.model as mdl
|
||||
from bcf.v2.bcfxml import BcfXml
|
||||
from bcf.v2.topic import TopicHandler
|
||||
from xsdata.models.datatype import XmlDateTime
|
||||
|
||||
|
||||
def test_maximum_information() -> None:
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
import numpy as np
|
||||
import pytest
|
||||
|
||||
from bcf.v2.bcfxml import BcfXml
|
||||
|
||||
|
||||
|
||||
@@ -4,9 +4,8 @@ import uuid
|
||||
from pathlib import Path
|
||||
from tempfile import TemporaryDirectory
|
||||
|
||||
import pytest
|
||||
|
||||
import bcf.v3.model as mdl
|
||||
import pytest
|
||||
from bcf.v3.bcfxml import BcfXml
|
||||
from bcf.v3.topic import TopicHandler
|
||||
from bcf.v3.visinfo import (
|
||||
|
||||
@@ -3,11 +3,10 @@ import os
|
||||
import zipfile
|
||||
from pathlib import Path
|
||||
|
||||
from xsdata.models.datatype import XmlDateTime
|
||||
|
||||
import bcf.v3.model as mdl
|
||||
from bcf.v3.bcfxml import BcfXml
|
||||
from bcf.v3.topic import TopicHandler
|
||||
from xsdata.models.datatype import XmlDateTime
|
||||
|
||||
|
||||
def test_doc_ref_internal() -> None:
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
import numpy as np
|
||||
import pytest
|
||||
|
||||
from bcf.v3.bcfxml import BcfXml
|
||||
|
||||
|
||||
|
||||
@@ -38,3 +38,8 @@ exclude = ["test*"]
|
||||
|
||||
[tool.ruff]
|
||||
extend = "../../pyproject.toml"
|
||||
|
||||
[tool.ruff.lint]
|
||||
ignore = [
|
||||
"I", # import sorting - ignore it temporarily, still need to do some tests
|
||||
]
|
||||
|
||||
+5
-5
@@ -17,15 +17,15 @@
|
||||
# along with bSDD. If not, see <http://www.gnu.org/licenses/>.
|
||||
from __future__ import annotations
|
||||
|
||||
import uuid
|
||||
import http.server
|
||||
import time
|
||||
import urllib.parse
|
||||
import requests
|
||||
import uuid
|
||||
import webbrowser
|
||||
import http.server
|
||||
from typing import TypedDict, Literal, Optional, TYPE_CHECKING, Any
|
||||
from typing_extensions import NotRequired
|
||||
from typing import TYPE_CHECKING, Any, Literal, Optional, TypedDict
|
||||
|
||||
import requests
|
||||
from typing_extensions import NotRequired
|
||||
|
||||
if TYPE_CHECKING:
|
||||
import ifcopenshell
|
||||
|
||||
@@ -1,11 +1,13 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from .type_hints import *
|
||||
from typing import Optional, Literal
|
||||
from datetime import datetime
|
||||
from pydantic import BaseModel, Field, PrivateAttr, model_validator, ConfigDict
|
||||
import json
|
||||
import weakref
|
||||
from datetime import datetime
|
||||
from typing import Literal, Optional
|
||||
|
||||
from pydantic import BaseModel, ConfigDict, Field, PrivateAttr, model_validator
|
||||
|
||||
from .type_hints import *
|
||||
|
||||
|
||||
def _lower_first(s: str) -> str:
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
from typing import Literal
|
||||
|
||||
|
||||
COUNTRY_CODE = Literal[
|
||||
"AF",
|
||||
"AX",
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import yaml
|
||||
import sys
|
||||
from pathlib import Path
|
||||
from typing import Any
|
||||
|
||||
import yaml
|
||||
|
||||
type_to_python_type = {
|
||||
"string": "str",
|
||||
|
||||
@@ -17,11 +17,12 @@
|
||||
# along with Ifc2CA. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import json
|
||||
import ifcopenshell
|
||||
import ifcopenshell.guid
|
||||
import os
|
||||
from datetime import datetime
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.guid
|
||||
|
||||
|
||||
class CA2IFC:
|
||||
def __init__(self, inputFilename, outputFilename):
|
||||
|
||||
@@ -16,11 +16,12 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with Ifc2CA. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import json
|
||||
import numpy as np
|
||||
import itertools
|
||||
import json
|
||||
from pathlib import Path
|
||||
|
||||
import numpy as np
|
||||
|
||||
flatten = itertools.chain.from_iterable
|
||||
|
||||
ScaleFactor = 1.0
|
||||
|
||||
@@ -16,15 +16,16 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with Ifc2CA. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import itertools
|
||||
import json
|
||||
import os
|
||||
import time
|
||||
import json
|
||||
from pathlib import Path
|
||||
|
||||
import numpy as np
|
||||
import salome
|
||||
import salome_notebook
|
||||
import salome_version
|
||||
import numpy as np
|
||||
import itertools
|
||||
from pathlib import Path
|
||||
|
||||
flatten = itertools.chain.from_iterable
|
||||
|
||||
@@ -155,10 +156,11 @@ class MODEL:
|
||||
###
|
||||
### GEOM component
|
||||
###
|
||||
import GEOM
|
||||
from salome.geom import geomBuilder
|
||||
import math
|
||||
|
||||
import GEOM
|
||||
import SALOMEDS
|
||||
from salome.geom import geomBuilder
|
||||
|
||||
gg = salome.ImportComponentGUI("GEOM")
|
||||
if NEW_SALOME:
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
# along with Ifc2CA. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import json
|
||||
import os
|
||||
import subprocess
|
||||
|
||||
@@ -1,13 +1,12 @@
|
||||
import argparse
|
||||
import os
|
||||
import sys
|
||||
import argparse
|
||||
|
||||
import ifcopenshell
|
||||
from ifc4d.msp2ifc import MSP2Ifc
|
||||
from ifc4d.p6xer2ifc import P6XER2Ifc
|
||||
from ifc4d.p62ifc import P62Ifc
|
||||
from ifc4d.msp2ifc import MSP2Ifc
|
||||
from ifc4d.pp2ifc import PP2Ifc
|
||||
import ifcopenshell
|
||||
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("-f", "--file", action="store", type=str, required=True, help="schedule file name to be parsed")
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from datetime import date, datetime, timedelta
|
||||
from typing import Any, TypedDict, Union
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import ifcopenshell.api.control
|
||||
import ifcopenshell.api.resource
|
||||
import ifcopenshell.api.sequence
|
||||
import ifcopenshell.util.date
|
||||
from datetime import datetime, timedelta, date
|
||||
from typing import Union, Any, TypedDict
|
||||
from typing_extensions import NotRequired
|
||||
|
||||
|
||||
|
||||
@@ -17,23 +17,24 @@
|
||||
# along with IfcResources. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from __future__ import annotations
|
||||
import csv
|
||||
|
||||
import _csv
|
||||
import ifcopenshell.api.resource
|
||||
import isodate
|
||||
import csv
|
||||
import datetime
|
||||
from typing import Any, Literal, NamedTuple, Optional, Union, cast, get_args
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import ifcopenshell.api.cost
|
||||
import ifcopenshell.api.pset
|
||||
import ifcopenshell.api.resource
|
||||
import ifcopenshell.api.root
|
||||
import ifcopenshell.api.unit
|
||||
import ifcopenshell.util.date
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.util.resource
|
||||
import ifcopenshell.util.unit
|
||||
import datetime
|
||||
from typing import Any, Optional, Union, Literal, get_args, NamedTuple, cast
|
||||
|
||||
import isodate
|
||||
|
||||
SUPPORTED_COLUMN = Literal[
|
||||
"HIERARCHY",
|
||||
|
||||
@@ -18,13 +18,14 @@
|
||||
|
||||
|
||||
import csv
|
||||
import locale
|
||||
import re
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import ifcopenshell.api.root
|
||||
import ifcopenshell.api.sequence
|
||||
import ifcopenshell.util.date
|
||||
import locale
|
||||
import re
|
||||
|
||||
|
||||
class Csv2Ifc:
|
||||
|
||||
@@ -16,12 +16,13 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with Ifc4D. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import uuid
|
||||
import datetime
|
||||
import uuid
|
||||
import xml.etree.ElementTree as ET
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.util.date
|
||||
import ifcopenshell.util.sequence
|
||||
import xml.etree.ElementTree as ET
|
||||
|
||||
|
||||
class Ifc2Msp:
|
||||
|
||||
@@ -16,12 +16,14 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with Ifc4D. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import uuid
|
||||
import datetime
|
||||
import uuid
|
||||
import xml.etree.ElementTree as ET
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.util.date
|
||||
import ifcopenshell.util.sequence
|
||||
import xml.etree.ElementTree as ET
|
||||
|
||||
from .common import ScheduleIfcGenerator
|
||||
|
||||
|
||||
|
||||
@@ -17,7 +17,9 @@
|
||||
# along with Ifc4D. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import datetime
|
||||
from datetime import timedelta, date
|
||||
import xml.etree.ElementTree as ET
|
||||
from datetime import date, timedelta
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import ifcopenshell.api.control
|
||||
@@ -25,7 +27,6 @@ import ifcopenshell.api.pset
|
||||
import ifcopenshell.api.root
|
||||
import ifcopenshell.api.sequence
|
||||
import ifcopenshell.util.date
|
||||
import xml.etree.ElementTree as ET
|
||||
|
||||
|
||||
class MSP2Ifc:
|
||||
|
||||
@@ -16,12 +16,14 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with Ifc4D. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import math
|
||||
import datetime
|
||||
import math
|
||||
import xml.etree.ElementTree as ET
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import ifcopenshell.util.date
|
||||
import xml.etree.ElementTree as ET
|
||||
|
||||
from .common import ScheduleIfcGenerator
|
||||
|
||||
|
||||
|
||||
@@ -16,11 +16,13 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with Ifc4D. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from xerparser.reader import Reader
|
||||
from datetime import date, datetime, timedelta
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import ifcopenshell.util.date
|
||||
from datetime import datetime, timedelta, date
|
||||
from xerparser.reader import Reader
|
||||
|
||||
from .common import ScheduleIfcGenerator
|
||||
|
||||
|
||||
|
||||
@@ -5,16 +5,17 @@ import sys
|
||||
print("In module products sys.path[0], __package__ ==", sys.path[0], __package__)
|
||||
sys.path.append(sys.path[0])
|
||||
|
||||
import sqlite3
|
||||
import datetime
|
||||
from datetime import timedelta
|
||||
import ifcopenshell.util.date
|
||||
from .wpattern import AstaCalendarWorkPattern
|
||||
from .common import ScheduleIfcGenerator, Calendar, WBSEntry, Activity
|
||||
import sqlite3
|
||||
import time
|
||||
from collections import defaultdict
|
||||
from datetime import timedelta
|
||||
from typing import Any
|
||||
|
||||
import ifcopenshell.util.date
|
||||
|
||||
from .common import Activity, Calendar, ScheduleIfcGenerator, WBSEntry
|
||||
from .wpattern import AstaCalendarWorkPattern
|
||||
|
||||
list_of_tables = [
|
||||
"BAR",
|
||||
|
||||
@@ -7,8 +7,9 @@ for each day as a key there is a list of working times with the format
|
||||
"""
|
||||
|
||||
import re
|
||||
from datetime import time, datetime
|
||||
from datetime import datetime, time
|
||||
from typing import Any
|
||||
|
||||
from ifc4d.common import WorkSlot
|
||||
|
||||
|
||||
|
||||
@@ -17,19 +17,21 @@
|
||||
# along with Ifc5D. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import csv
|
||||
import locale
|
||||
from pathlib import Path
|
||||
from typing import Optional, TypedDict, Union
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import ifcopenshell.api.control
|
||||
import ifcopenshell.api.cost
|
||||
import ifcopenshell.api.root
|
||||
import ifcopenshell.util.unit
|
||||
import ifcopenshell.util.selector
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.util.cost
|
||||
import locale
|
||||
from pathlib import Path
|
||||
from typing import Union, Optional, TypedDict
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.util.selector
|
||||
import ifcopenshell.util.unit
|
||||
from typing_extensions import NotRequired
|
||||
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
import ifcopenshell
|
||||
import ifcopenshell.util.unit
|
||||
from typing import Any
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.util.cost
|
||||
import ifcopenshell.util.date
|
||||
import ifcopenshell.util.unit
|
||||
from ifcopenshell.util.classification import get_references
|
||||
|
||||
|
||||
CostItem = dict[str, Any]
|
||||
|
||||
|
||||
|
||||
@@ -18,18 +18,20 @@
|
||||
|
||||
|
||||
from __future__ import annotations
|
||||
import os
|
||||
import time
|
||||
|
||||
import argparse
|
||||
import datetime
|
||||
import logging
|
||||
import os
|
||||
import time
|
||||
from collections import Counter
|
||||
from typing import Any, Optional, TypedDict, Union
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.util.cost
|
||||
import ifcopenshell.util.date
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.util.unit
|
||||
from collections import Counter
|
||||
from typing import Union, Optional, Any, TypedDict
|
||||
|
||||
|
||||
class CostItem(TypedDict):
|
||||
@@ -418,9 +420,9 @@ class Ifc5DCsvWriter(Ifc5Dwriter):
|
||||
|
||||
class Ifc5DOdsWriter(Ifc5Dwriter):
|
||||
def write(self) -> None:
|
||||
from odf.number import CurrencyStyle, CurrencySymbol, Number, NumberStyle, Text
|
||||
from odf.opendocument import OpenDocumentSpreadsheet
|
||||
from odf.style import Style, TableCellProperties
|
||||
from odf.number import NumberStyle, CurrencyStyle, CurrencySymbol, Number, Text
|
||||
|
||||
super().write()
|
||||
|
||||
@@ -448,9 +450,9 @@ class Ifc5DOdsWriter(Ifc5Dwriter):
|
||||
self.doc.save(os.path.join(self.output, file_name), True)
|
||||
|
||||
def write_table(self, cost_schedule):
|
||||
from odf.table import Table, TableRow, TableCell
|
||||
from odf.number import CurrencyStyle, CurrencySymbol, Number, NumberStyle, Text
|
||||
from odf.table import Table, TableCell, TableRow
|
||||
from odf.text import P
|
||||
from odf.number import NumberStyle, CurrencyStyle, CurrencySymbol, Number, Text
|
||||
|
||||
def row():
|
||||
return TableRow()
|
||||
@@ -594,11 +596,13 @@ class Ifc5DPdfWriter(Ifc5Dwriter):
|
||||
|
||||
def write(self) -> None:
|
||||
import os
|
||||
import ifc5d
|
||||
import shutil
|
||||
import typst
|
||||
import tempfile
|
||||
|
||||
import typst
|
||||
|
||||
import ifc5d
|
||||
|
||||
DEFAULT_OPTIONS = {
|
||||
"nested_structure_depth": 0,
|
||||
"parent_to_new_page_up_to_depth": 0,
|
||||
|
||||
@@ -18,24 +18,25 @@
|
||||
|
||||
import functools
|
||||
import itertools
|
||||
import json
|
||||
import multiprocessing
|
||||
import os
|
||||
import types
|
||||
import json
|
||||
from collections import defaultdict
|
||||
from collections.abc import Iterable
|
||||
from typing import Any, Literal, NamedTuple, Union, get_args
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import ifcopenshell.api.pset
|
||||
import ifcopenshell.geom
|
||||
import ifcopenshell.ifcopenshell_wrapper as W
|
||||
import ifcopenshell.util.unit
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.util.representation
|
||||
import ifcopenshell.util.selector
|
||||
import ifcopenshell.util.shape
|
||||
import ifcopenshell.util.representation
|
||||
import ifcopenshell.util.type
|
||||
import multiprocessing
|
||||
from collections import defaultdict
|
||||
from typing import Any, Literal, get_args, Union, NamedTuple
|
||||
from collections.abc import Iterable
|
||||
import ifcopenshell.util.unit
|
||||
|
||||
|
||||
class Function(NamedTuple):
|
||||
@@ -545,8 +546,8 @@ class Blender(QtoCalculator):
|
||||
|
||||
@classmethod
|
||||
def calculate(cls, ifc_file, elements, qtos, results):
|
||||
import bonsai.tool as tool
|
||||
import bonsai.bim.module.qto.calculator as calculator
|
||||
import bonsai.tool as tool
|
||||
|
||||
unit_converter = SI2ProjectUnitConverter(ifc_file)
|
||||
formula_functions: dict[str, types.FunctionType] = {}
|
||||
|
||||
@@ -16,17 +16,18 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with IfcOpenShell. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import tempfile
|
||||
import csv
|
||||
import pytest
|
||||
import tempfile
|
||||
from pathlib import Path
|
||||
|
||||
import ifc5d.csv2ifc
|
||||
import ifc5d.ifc5Dspreadsheet
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api.root
|
||||
import ifcopenshell.api.unit
|
||||
import ifcopenshell.util.cost
|
||||
import ifcopenshell.util.element
|
||||
import ifc5d.csv2ifc
|
||||
import ifc5d.ifc5Dspreadsheet
|
||||
from pathlib import Path
|
||||
import pytest
|
||||
|
||||
|
||||
class TestCsv2Ifc:
|
||||
|
||||
@@ -16,8 +16,7 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from os.path import dirname
|
||||
from os.path import realpath
|
||||
from os.path import dirname, realpath
|
||||
|
||||
__version__ = version = "0.0.0"
|
||||
|
||||
|
||||
@@ -16,10 +16,11 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import ifcopenshell
|
||||
import os
|
||||
from pathlib import Path
|
||||
|
||||
import ifcopenshell
|
||||
|
||||
|
||||
class TestPurger:
|
||||
def __init__(self):
|
||||
|
||||
@@ -17,15 +17,12 @@
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import os
|
||||
from behave.model import Scenario
|
||||
|
||||
from behave.model import Scenario
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.lang import switch_locale
|
||||
from logfile import append_logfile
|
||||
from logfile import create_logfile
|
||||
from zoom_smart_view import add_smartview
|
||||
from zoom_smart_view import create_zoom_set_of_smartviews
|
||||
|
||||
from logfile import append_logfile, create_logfile
|
||||
from zoom_smart_view import add_smartview, create_zoom_set_of_smartviews
|
||||
|
||||
this_path = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
|
||||
@@ -16,8 +16,7 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from behave import step, given, when, then, use_step_matcher
|
||||
|
||||
from behave import given, step, then, use_step_matcher, when
|
||||
from bimtester import util
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.table import TableModel
|
||||
|
||||
@@ -26,7 +26,7 @@ use_step_matcher("parse")
|
||||
from bimtester.features.steps.attributes_eleclasses import de, en
|
||||
|
||||
use_step_matcher("parse")
|
||||
from bimtester.features.steps.attributes_psets import en, de
|
||||
from bimtester.features.steps.attributes_psets import de, en
|
||||
|
||||
use_step_matcher("parse")
|
||||
from bimtester.features.steps.attributes_qsets import en
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from behave import step
|
||||
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.lang import _
|
||||
|
||||
|
||||
@@ -17,9 +17,7 @@
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import ifcopenshell.util.element as eleutils
|
||||
|
||||
from behave import step
|
||||
|
||||
from bimtester import util
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.lang import _
|
||||
|
||||
@@ -16,9 +16,7 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from behave import step
|
||||
from behave import use_step_matcher
|
||||
|
||||
from behave import step, use_step_matcher
|
||||
from bimtester import util
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.lang import _
|
||||
@@ -48,6 +46,7 @@ def step_impl(context, ifc_class, property_path):
|
||||
)
|
||||
def step_impl(context, ifc_class, property_path, pattern):
|
||||
import re
|
||||
|
||||
from ifcopenshell.util.element import get_psets
|
||||
|
||||
pset_name, property_name = property_path.split(".")
|
||||
|
||||
@@ -17,8 +17,8 @@
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import json
|
||||
from behave import step
|
||||
|
||||
from behave import step
|
||||
from bimtester import util
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.lang import _
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from behave import step
|
||||
|
||||
from bimtester import util
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.lang import _
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from behave import step, use_step_matcher
|
||||
|
||||
from bimtester import util
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.lang import _
|
||||
|
||||
@@ -17,14 +17,13 @@
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import math
|
||||
import numpy as np
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.util.placement
|
||||
import ifcopenshell.util.geolocation
|
||||
|
||||
import ifcopenshell.util.placement
|
||||
import numpy as np
|
||||
from behave import step
|
||||
|
||||
from bimtester import util
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.lang import _
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from behave import step
|
||||
|
||||
from bimtester import util
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.lang import _
|
||||
|
||||
@@ -18,9 +18,7 @@
|
||||
|
||||
import ifcopenshell.util.geolocation
|
||||
import ifcopenshell.util.placement
|
||||
|
||||
from behave import step
|
||||
|
||||
from bimtester import util
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.lang import _
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from behave import step
|
||||
|
||||
from bimtester import util
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.lang import _
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from behave import step
|
||||
|
||||
from bimtester.ifc import IfcStore
|
||||
from bimtester.lang import _
|
||||
|
||||
|
||||
@@ -16,18 +16,16 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import os
|
||||
import json
|
||||
import os
|
||||
import sys
|
||||
import webbrowser
|
||||
|
||||
from PySide2 import QtCore, QtGui, QtWidgets
|
||||
|
||||
import bimtester.reports
|
||||
import bimtester.run
|
||||
|
||||
from PySide2 import QtCore
|
||||
from PySide2 import QtGui
|
||||
from PySide2 import QtWidgets
|
||||
|
||||
|
||||
def run():
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
|
||||
@@ -19,8 +19,10 @@
|
||||
import datetime
|
||||
import json
|
||||
import os
|
||||
import pystache
|
||||
import sys
|
||||
|
||||
import pystache
|
||||
|
||||
from bimtester.lang import _
|
||||
|
||||
|
||||
|
||||
@@ -16,27 +16,29 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import os
|
||||
import sys
|
||||
import json
|
||||
import shutil
|
||||
import logging
|
||||
import os
|
||||
import shutil
|
||||
import sys
|
||||
import tempfile
|
||||
|
||||
import ifcopenshell
|
||||
|
||||
try:
|
||||
import ifcopenshell.express
|
||||
except:
|
||||
pass # They are using an old version of IfcOpenShell. Gracefully degrade for now.
|
||||
import behave.formatter.pretty # Needed for pyinstaller to package it
|
||||
from bimtester.ifc import IfcStore
|
||||
from distutils.dir_util import copy_tree
|
||||
from behave.__main__ import main as behave_main
|
||||
|
||||
|
||||
# TODO: refactor when this isn't super experimental
|
||||
from logging import StreamHandler
|
||||
|
||||
import behave.formatter.pretty # Needed for pyinstaller to package it
|
||||
from behave.__main__ import main as behave_main
|
||||
|
||||
from bimtester.ifc import IfcStore
|
||||
|
||||
|
||||
class TestRunner:
|
||||
def __init__(self, ifc_path, schema_path=None, ifc=None):
|
||||
|
||||
@@ -16,10 +16,12 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import json
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.validate
|
||||
import json
|
||||
|
||||
from bimtester.lang import _
|
||||
|
||||
|
||||
|
||||
@@ -19,8 +19,9 @@
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
import os
|
||||
import argparse
|
||||
import os
|
||||
|
||||
import bimtester.clean
|
||||
import bimtester.reports
|
||||
import bimtester.run
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from behave import step, given, when, then, use_step_matcher
|
||||
from behave import given, step, then, use_step_matcher, when
|
||||
|
||||
use_step_matcher("parse")
|
||||
|
||||
|
||||
@@ -17,10 +17,8 @@
|
||||
# along with BIMTester. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from behave import step
|
||||
|
||||
from utils import IfcFile
|
||||
|
||||
|
||||
use_step_matcher("re")
|
||||
|
||||
|
||||
|
||||
@@ -21,5 +21,4 @@
|
||||
|
||||
from bimtester.guiwidget import run
|
||||
|
||||
|
||||
run()
|
||||
|
||||
@@ -40,17 +40,18 @@ if "bpy" in locals():
|
||||
if "ifcopenshell" in locals():
|
||||
importlib.reload(ifcopenshell)
|
||||
|
||||
import logging
|
||||
import os
|
||||
from collections import defaultdict
|
||||
|
||||
import bpy
|
||||
import mathutils
|
||||
from bpy.props import (
|
||||
BoolProperty,
|
||||
IntProperty,
|
||||
StringProperty,
|
||||
)
|
||||
from bpy_extras.io_utils import ImportHelper
|
||||
from collections import defaultdict
|
||||
import bpy
|
||||
import logging
|
||||
import mathutils
|
||||
import os
|
||||
|
||||
major, minor = bpy.app.version[0:2]
|
||||
transpose_matrices = minor >= 62
|
||||
|
||||
@@ -17,7 +17,9 @@
|
||||
# along with ifccityjson. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import argparse
|
||||
|
||||
from cjio import cityjson
|
||||
|
||||
from .cityjson2ifc import Cityjson2ifc
|
||||
|
||||
|
||||
|
||||
@@ -18,6 +18,8 @@
|
||||
# along with ifccityjson. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import os
|
||||
from datetime import datetime
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import ifcopenshell.api.context
|
||||
@@ -26,10 +28,9 @@ import ifcopenshell.api.pset
|
||||
import ifcopenshell.api.root
|
||||
import ifcopenshell.api.unit
|
||||
import ifcopenshell.guid
|
||||
from datetime import datetime
|
||||
|
||||
from .geometry import GeometryIO
|
||||
from . import __version__
|
||||
from .geometry import GeometryIO
|
||||
|
||||
JSON_TO_IFC = {
|
||||
"Building": ["IfcBuilding"],
|
||||
|
||||
@@ -18,10 +18,11 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with IfcClash. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import sys
|
||||
import argparse
|
||||
import json
|
||||
import logging
|
||||
import argparse
|
||||
import sys
|
||||
|
||||
from .ifcclash import Clasher, ClashSettings
|
||||
|
||||
parser = argparse.ArgumentParser(description="Clashes geometry between two IFC files")
|
||||
|
||||
@@ -20,15 +20,17 @@
|
||||
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import json
|
||||
import time
|
||||
import numpy as np
|
||||
import multiprocessing
|
||||
import time
|
||||
from logging import Logger
|
||||
from typing import Literal, TypedDict, Union
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.geom
|
||||
import ifcopenshell.util.selector
|
||||
from logging import Logger
|
||||
from typing import Literal, TypedDict, Union
|
||||
import numpy as np
|
||||
from typing_extensions import NotRequired, assert_never
|
||||
|
||||
|
||||
@@ -256,9 +258,10 @@ class Clasher:
|
||||
json.dump(clash_sets, clashes_file, indent=4)
|
||||
|
||||
def smart_group_clashes(self, clash_sets: list[ClashSet], max_clustering_distance: float):
|
||||
from sklearn.cluster import OPTICS
|
||||
from collections import defaultdict
|
||||
|
||||
from sklearn.cluster import OPTICS
|
||||
|
||||
count_of_input_clashes = 0
|
||||
count_of_clash_sets = 0
|
||||
count_of_smart_groups = 0
|
||||
|
||||
@@ -21,6 +21,5 @@
|
||||
import os
|
||||
import subprocess
|
||||
|
||||
|
||||
cmd = "pyinstaller ./bootstrap.py --name ifcclash --onefile --clean"
|
||||
subprocess.check_output(cmd, shell=True)
|
||||
|
||||
@@ -20,23 +20,24 @@
|
||||
|
||||
# This can be packaged with `pyinstaller --onefile --clean --icon=icon.ico ifccsv.py`
|
||||
|
||||
import argparse
|
||||
import csv
|
||||
import os
|
||||
import re
|
||||
import csv
|
||||
import argparse
|
||||
from collections.abc import Iterable
|
||||
from statistics import mean
|
||||
from typing import Literal, Optional, Union
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.util.selector
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.util.schema
|
||||
from statistics import mean
|
||||
from typing import Optional, Union, Literal
|
||||
from collections.abc import Iterable
|
||||
import ifcopenshell.util.selector
|
||||
|
||||
try:
|
||||
from odf.namespaces import OFFICENS
|
||||
from odf.opendocument import OpenDocumentSpreadsheet, load
|
||||
from odf.style import Style, TableCellProperties
|
||||
from odf.table import Table, TableRow, TableCell
|
||||
from odf.table import Table, TableCell, TableRow
|
||||
from odf.text import P
|
||||
except:
|
||||
pass # No ODF support
|
||||
|
||||
@@ -20,23 +20,23 @@
|
||||
|
||||
# This can be packaged with `pyinstaller --onefile --clean --icon=icon.ico ifcdiff.py`
|
||||
|
||||
import time
|
||||
import argparse
|
||||
import json
|
||||
import logging
|
||||
import argparse
|
||||
import numpy as np
|
||||
import multiprocessing
|
||||
import time
|
||||
from typing import Any, Literal, Optional, Union
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.geom
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.util.selector
|
||||
import ifcopenshell.util.placement
|
||||
import ifcopenshell.util.classification
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.util.placement
|
||||
import ifcopenshell.util.representation
|
||||
import ifcopenshell.util.selector
|
||||
import numpy as np
|
||||
from deepdiff import DeepDiff
|
||||
from orderly_set import OrderedSet
|
||||
from typing import Optional, Union, Literal, Any
|
||||
|
||||
|
||||
__version__ = version = "0.0.0"
|
||||
|
||||
|
||||
+2
-1
@@ -16,7 +16,6 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with IfcOpenShell. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import ifcdiff
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api.context
|
||||
import ifcopenshell.api.geometry
|
||||
@@ -24,6 +23,8 @@ import ifcopenshell.api.root
|
||||
import ifcopenshell.api.unit
|
||||
import ifcopenshell.util.representation
|
||||
|
||||
import ifcdiff
|
||||
|
||||
|
||||
def setup_project() -> ifcopenshell.file:
|
||||
ifc_file = ifcopenshell.file(schema="IFC4")
|
||||
|
||||
@@ -17,15 +17,17 @@
|
||||
# along with IfcFM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from __future__ import annotations
|
||||
import os
|
||||
import re
|
||||
|
||||
import csv
|
||||
import importlib
|
||||
import ifcopenshell.util.selector
|
||||
from pathlib import Path
|
||||
import os
|
||||
import re
|
||||
from collections import defaultdict
|
||||
from typing import Literal, Union, Any, TYPE_CHECKING
|
||||
from collections.abc import Callable
|
||||
from pathlib import Path
|
||||
from typing import TYPE_CHECKING, Any, Literal, Union
|
||||
|
||||
import ifcopenshell.util.selector
|
||||
|
||||
try:
|
||||
from openpyxl import Workbook
|
||||
@@ -37,7 +39,7 @@ try:
|
||||
import odf.namespaces as odf_ns
|
||||
from odf.opendocument import OpenDocumentSpreadsheet
|
||||
from odf.style import Style, TableCellProperties, TableProperties
|
||||
from odf.table import Table, TableRow, TableCell
|
||||
from odf.table import Table, TableCell, TableRow
|
||||
from odf.text import P
|
||||
except:
|
||||
pass # No ODF support
|
||||
|
||||
@@ -16,10 +16,12 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with IfcFM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import ifcfm
|
||||
import argparse
|
||||
|
||||
import ifcopenshell
|
||||
|
||||
import ifcfm
|
||||
|
||||
parser = argparse.ArgumentParser(description="Extracts FM data from IFC to spreadsheets")
|
||||
parser.add_argument(
|
||||
"-p",
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with IfcFM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from typing import Any, Optional, Union
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.util.classification
|
||||
import ifcopenshell.util.date
|
||||
@@ -23,7 +25,6 @@ import ifcopenshell.util.element
|
||||
import ifcopenshell.util.fm
|
||||
import ifcopenshell.util.placement
|
||||
import ifcopenshell.util.system
|
||||
from typing import Any, Union, Optional
|
||||
|
||||
|
||||
def get_facilities(ifc_file: ifcopenshell.file) -> list[ifcopenshell.entity_instance]:
|
||||
|
||||
@@ -16,6 +16,9 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with IfcFM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from collections.abc import Generator
|
||||
from typing import Any, Optional, Union
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.geom
|
||||
import ifcopenshell.util.classification
|
||||
@@ -26,9 +29,6 @@ import ifcopenshell.util.placement
|
||||
import ifcopenshell.util.shape
|
||||
import ifcopenshell.util.system
|
||||
from ifcopenshell.util.shape_builder import np_matrix_to_euler
|
||||
from typing import Any, Union, Optional
|
||||
from collections.abc import Generator
|
||||
|
||||
|
||||
# The original BIMServer plugin has a function called ifcToCOBie:
|
||||
# https://github.com/opensourceBIM/COBie-plugins/blob/master/COBieShared/src/org/bimserver/cobie/shared/serialization/COBieTabSerializer.java#L54
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with IfcFM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from typing import Any, Optional, Union
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.guid
|
||||
import ifcopenshell.util.classification
|
||||
@@ -24,8 +26,6 @@ import ifcopenshell.util.element
|
||||
import ifcopenshell.util.fm
|
||||
import ifcopenshell.util.placement
|
||||
import ifcopenshell.util.system
|
||||
from typing import Any, Union, Optional
|
||||
|
||||
|
||||
# The original BIMServer plugin has a function called ifcToCOBie:
|
||||
# https://github.com/opensourceBIM/COBie-plugins/blob/master/COBieShared/src/org/bimserver/cobie/shared/serialization/COBieTabSerializer.java#L54
|
||||
|
||||
@@ -54,13 +54,14 @@ Example:
|
||||
print(wall.Name)
|
||||
"""
|
||||
from __future__ import annotations
|
||||
|
||||
import os
|
||||
import sys
|
||||
import zipfile
|
||||
import tempfile
|
||||
from pathlib import Path
|
||||
from typing import Optional, Union, TYPE_CHECKING, Any, overload, Literal
|
||||
import zipfile
|
||||
from collections.abc import Generator, Sequence
|
||||
from pathlib import Path
|
||||
from typing import TYPE_CHECKING, Any, Literal, Optional, Union, overload
|
||||
|
||||
if TYPE_CHECKING:
|
||||
import ifcopenshell.express.schema_class
|
||||
@@ -88,12 +89,10 @@ except Exception:
|
||||
|
||||
# `_file`, `_stream` is used only for annotations inside this file,
|
||||
# see https://github.com/microsoft/pyright/discussions/9065.
|
||||
from .file import file as _file
|
||||
from .file import file
|
||||
|
||||
from .file import rocksdb_lazy_instance
|
||||
from . import guid
|
||||
from .entity_instance import entity_instance, register_schema_attributes
|
||||
from .file import file, rocksdb_lazy_instance
|
||||
from .file import file as _file
|
||||
from .sql import sqlite, sqlite_entity
|
||||
|
||||
# explicitly specify available imported symbols
|
||||
@@ -110,8 +109,8 @@ __all__ = [
|
||||
]
|
||||
|
||||
try:
|
||||
from .stream import stream as _stream, stream_entity
|
||||
from .stream import stream
|
||||
from .stream import stream, stream_entity
|
||||
from .stream import stream as _stream
|
||||
except:
|
||||
pass
|
||||
|
||||
|
||||
@@ -38,14 +38,16 @@ Also see how to `create a simple model from scratch
|
||||
<https://docs.ifcopenshell.org/ifcopenshell-python/code_examples.html#create-a-simple-model-from-scratch>`_.
|
||||
"""
|
||||
|
||||
import json
|
||||
import numpy
|
||||
import inspect
|
||||
import importlib
|
||||
import ifcopenshell
|
||||
import inspect
|
||||
import json
|
||||
from collections.abc import Callable
|
||||
from typing import Any, Optional, TYPE_CHECKING
|
||||
from functools import partial
|
||||
from typing import TYPE_CHECKING, Any, Optional
|
||||
|
||||
import numpy
|
||||
|
||||
import ifcopenshell
|
||||
|
||||
if TYPE_CHECKING:
|
||||
import ifcopenshell.api
|
||||
@@ -187,8 +189,8 @@ def remove_all_listeners():
|
||||
|
||||
|
||||
def extract_docs(module: str, usecase: str) -> dict[str, Any]:
|
||||
import typing
|
||||
import collections
|
||||
import typing
|
||||
|
||||
inputs = collections.OrderedDict()
|
||||
|
||||
@@ -304,8 +306,8 @@ def wrap_usecase(usecase_path, usecase):
|
||||
|
||||
def wrap_usecases(path, name):
|
||||
"""This developer feature wraps an API module's usecases with listeners."""
|
||||
import sys
|
||||
import pkgutil
|
||||
import sys
|
||||
|
||||
module_name = name.split(".")[-1]
|
||||
module = sys.modules[name]
|
||||
|
||||
@@ -16,14 +16,15 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with IfcOpenShell. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from typing import Union
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api.geometry
|
||||
import ifcopenshell.api.owner
|
||||
import ifcopenshell.api.spatial
|
||||
import ifcopenshell.api.geometry
|
||||
import ifcopenshell.guid
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.util.placement
|
||||
from typing import Union
|
||||
|
||||
|
||||
def assign_object(
|
||||
|
||||
@@ -47,45 +47,48 @@ Future versions of this API may support:
|
||||
5. Adding a segment at any location along a curve
|
||||
"""
|
||||
|
||||
from ._get_segment_start_point_label import register_referent_name_callback
|
||||
from .add_stationing_referent import add_stationing_referent
|
||||
from .add_vertical_layout import add_vertical_layout
|
||||
from .add_zero_length_segment import add_zero_length_segment
|
||||
from .create_layout_segment import create_layout_segment
|
||||
from .create import create
|
||||
from .create_as_offset_curve import create_as_offset_curve
|
||||
from .create_as_polyline import create_as_polyline
|
||||
from .create_by_pi_method import create_by_pi_method
|
||||
from .create_from_csv import create_from_csv
|
||||
from .create_segment_representations import create_segment_representations
|
||||
from .create_layout_segment import create_layout_segment
|
||||
from .create_representation import create_representation
|
||||
from .create_segment_representations import create_segment_representations
|
||||
from .distance_along_from_station import distance_along_from_station
|
||||
from .get_alignment import get_alignment
|
||||
from .get_alignment_layout_nest import get_alignment_layout_nest
|
||||
from .get_alignment_layouts import get_alignment_layouts
|
||||
from .get_alignment_segment_nest import get_alignment_segment_nest
|
||||
from .get_alignment_start_station import get_alignment_start_station
|
||||
from .get_curve_segment_transition_code import get_curve_segment_transition_code
|
||||
from .get_layout_segments import get_layout_segments
|
||||
from .get_horizontal_layout import get_horizontal_layout
|
||||
from .get_vertical_layout import get_vertical_layout
|
||||
from .get_cant_layout import get_cant_layout
|
||||
from .get_alignment_layouts import get_alignment_layouts
|
||||
from .get_axis_subcontext import get_axis_subcontext
|
||||
from .get_basis_curve import get_basis_curve
|
||||
from .get_cant_layout import get_cant_layout
|
||||
from .get_child_alignments import get_child_alignments
|
||||
from .get_curve import get_curve
|
||||
from .get_curve_segment_transition_code import get_curve_segment_transition_code
|
||||
from .get_horizontal_layout import get_horizontal_layout
|
||||
from .get_layout_curve import get_layout_curve
|
||||
from .get_layout_segments import get_layout_segments
|
||||
from .get_mapped_segments import get_mapped_segments
|
||||
from .get_parent_alignment import get_parent_alignment
|
||||
from .get_referent_nest import get_referent_nest
|
||||
from .get_vertical_layout import get_vertical_layout
|
||||
from .has_zero_length_segment import has_zero_length_segment
|
||||
from .layout_horizontal_alignment_by_pi_method import layout_horizontal_alignment_by_pi_method
|
||||
from .layout_vertical_alignment_by_pi_method import layout_vertical_alignment_by_pi_method
|
||||
from .layout_horizontal_alignment_by_pi_method import (
|
||||
layout_horizontal_alignment_by_pi_method,
|
||||
)
|
||||
from .layout_vertical_alignment_by_pi_method import (
|
||||
layout_vertical_alignment_by_pi_method,
|
||||
)
|
||||
from .name_segments import name_segments
|
||||
from .update_fallback_position import update_fallback_position
|
||||
from .util import *
|
||||
|
||||
from ._get_segment_start_point_label import register_referent_name_callback
|
||||
|
||||
__all__ = [
|
||||
"add_stationing_referent",
|
||||
"add_vertical_layout",
|
||||
|
||||
@@ -16,19 +16,27 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with IfcOpenShell. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import numpy as np
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import ifcopenshell.api.alignment
|
||||
import ifcopenshell.geom
|
||||
import ifcopenshell.util.unit
|
||||
import ifcopenshell.ifcopenshell_wrapper as ifcopenshell_wrapper
|
||||
import numpy as np
|
||||
import ifcopenshell.util.unit
|
||||
from ifcopenshell import entity_instance
|
||||
|
||||
from ifcopenshell.api.alignment._update_curve_segment_transition_code import _update_curve_segment_transition_code
|
||||
from ifcopenshell.api.alignment._map_alignment_horizontal_segment import _map_alignment_horizontal_segment
|
||||
from ifcopenshell.api.alignment._map_alignment_vertical_segment import _map_alignment_vertical_segment
|
||||
from ifcopenshell.api.alignment._map_alignment_cant_segment import _map_alignment_cant_segment
|
||||
from ifcopenshell.api.alignment._map_alignment_cant_segment import (
|
||||
_map_alignment_cant_segment,
|
||||
)
|
||||
from ifcopenshell.api.alignment._map_alignment_horizontal_segment import (
|
||||
_map_alignment_horizontal_segment,
|
||||
)
|
||||
from ifcopenshell.api.alignment._map_alignment_vertical_segment import (
|
||||
_map_alignment_vertical_segment,
|
||||
)
|
||||
from ifcopenshell.api.alignment._update_curve_segment_transition_code import (
|
||||
_update_curve_segment_transition_code,
|
||||
)
|
||||
|
||||
|
||||
def _add_curve_segment_to_composite_curve(
|
||||
|
||||
@@ -16,6 +16,11 @@
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with IfcOpenShell. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import math
|
||||
from collections.abc import Sequence
|
||||
|
||||
import numpy as np
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api.alignment
|
||||
import ifcopenshell.api.nest
|
||||
@@ -23,14 +28,11 @@ import ifcopenshell.api.pset
|
||||
import ifcopenshell.geom
|
||||
import ifcopenshell.util.alignment
|
||||
import ifcopenshell.util.unit
|
||||
from ifcopenshell import ifcopenshell_wrapper
|
||||
import numpy as np
|
||||
import math
|
||||
from ifcopenshell import entity_instance
|
||||
from collections.abc import Sequence
|
||||
|
||||
from ifcopenshell import entity_instance, ifcopenshell_wrapper
|
||||
from ifcopenshell.api.alignment._add_segment_to_curve import _add_segment_to_curve
|
||||
from ifcopenshell.api.alignment._get_segment_start_point_label import _get_segment_start_point_label
|
||||
from ifcopenshell.api.alignment._get_segment_start_point_label import (
|
||||
_get_segment_start_point_label,
|
||||
)
|
||||
|
||||
|
||||
def _add_segment_to_layout(file: ifcopenshell.file, layout: entity_instance, segment: entity_instance) -> None:
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user