ifcopenshell.sql

Module Contents

class ifcopenshell.sql.GeometryCache

Bases: TypedDict

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {} for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)

Initialize self. See help(type(self)) for accurate signature.

geometry: dict[str, GeometryCacheGeometry]
shapes: dict[int, GeometryCacheShape]
class ifcopenshell.sql.GeometryCacheGeometry

Bases: TypedDict

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {} for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)

Initialize self. See help(type(self)) for accurate signature.

edges: numpy.typing.NDArray[numpy.int32]
faces: numpy.typing.NDArray[numpy.int32]
material_ids: numpy.typing.NDArray[numpy.int32]
materials: list[int]
verts: numpy.typing.NDArray[numpy.float64]
class ifcopenshell.sql.GeometryCacheShape

Bases: TypedDict

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {} for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)

Initialize self. See help(type(self)) for accurate signature.

co: list[float]

Object location.

geometry: str | None

Element’s geometry id (same value as in Representation.id).

Is set to ``None` when no geometry is available for the element.

matrix: numpy.typing.NDArray[numpy.float64]
class ifcopenshell.sql.sqlite(filepath: str)

Bases: ifcopenshell.file

Open existing sqlite IFC database.

To create a new database from IFC file consider using Ifc2Sql IfcPatch:

https://docs.ifcopenshell.org/autoapi/ifcpatch/recipes/Ifc2Sql/index.html

Parameters:

filepath – Path to sqlite database.

by_id(id: int) → sqlite_entity | None
by_type(type: str, include_subtypes: bool = True) → list[sqlite_entity]
clear_cache() → None
create_entity(type, *args, **kawrgs) → NoReturn

Not supported for sqlite database.

get_geometry(ids: list[int]) → GeometryCache
get_inverse(inst: sqlite_entity, allow_duplicate: bool = False, with_attribute_indices: bool = False) → set[sqlite_entity]
is_entity_list(attribute: ifcopenshell.ifcopenshell_wrapper.attribute) → bool
preprocess_schema() → None
traverse(inst: sqlite_entity, max_levels: int | None = None, breadth_first: bool = False) → list[sqlite_entity]
class_map: dict[str, list[int]]
cursor
db
entity_cache: dict[int, sqlite_entity]
filepath
future = []
property header: types.SimpleNamespace
history = []
history_size = 64
id_map: dict[int, str]
ifc_schema
instance_map: dict[str, ifcopenshell.entity_instance]
mvd_str: str

As in header.file_description.description.

property schema: ifcopenshell.util.schema.IFC_SCHEMA
property schema_identifier: str
shadow_file
state = [[], [], None]
transaction = None
property wrapped_data: NoReturn
class ifcopenshell.sql.sqlite_entity(id: int, ifc_class: str, file: sqlite = None)
get_info(include_identifier=True, recursive=False, return_type=dict, ignore=(), scalar_only=False) → dict[str, Any]
id() → int
is_a(*args)
unserialise_value(value)
property file: sqlite
sqlite_wrapper: sqlite_entity.sqlite_wrapper
wrapped_data: ifcopenshell.entity_instance
class ifcopenshell.sql.sqlite_wrapper(id: int, ifc_class: str, file: sqlite)
attribute_cache: dict[str, Any]
attributes
file
id
ifc_class
inverse_attribute_cache
inverse_attributes