ifcopenshell.ifcopenshell_wrapper

Module Contents

class ifcopenshell.ifcopenshell_wrapper.BRep(settings, entity, id, shapes)

Bases: Representation

as_compound(force_meters=False)
begin()
calculate_projected_surface_area(ax, along_x, along_y, along_z)
calculate_surface_area(arg2)
calculate_volume(arg2)
end()
item(i)
item_id(i)
shapes()
size()
class ifcopenshell.ifcopenshell_wrapper.BRepElement(id, parent_id, name, type, guid, context, trsf, geometry, product)

Bases: Element

calculate_projected_surface_area(along_x, along_y, along_z)
geometry_pointer()
property geometry: BRep
property surface_area
property volume
class ifcopenshell.ifcopenshell_wrapper.ColladaSerializer(dae_filename, geometry_settings, settings)

Bases: WriteOnlyGeometrySerializer

finalize()
isTesselated()
object_id(o)
ready()
setFile(arg2)
setUnitNameAndMagnitude(name, magnitude)
write(*args)
writeHeader()
class ifcopenshell.ifcopenshell_wrapper.ConversionResult(*args)
ItemId()
Placement()
Shape()
Style()
StylePtr()
append(trsf)
apply_transform(unit_scale=1.0)
hasStyle()
prepend(trsf)
setStyle(newStyle)
class ifcopenshell.ifcopenshell_wrapper.ConversionResultShape(*args, **kwargs)
Serialize(place, arg3)
Triangulate(*args)
add(arg2)
area()
axis()
bounding_box(*args)
box()
concat(arg2)
convex_decomposition()
convex_tag(b)
edges()
facets()
halfspaces()
intersect(arg2)
is_manifold()
length()
map(*args)
moved(arg2)
num_edges()
num_faces()
num_vertices()
plane_equation()
position()
serialize()
serialize_obj()
set_box(b)
solid()
solid_mt()
subtract(arg2)
surface_area_along_direction(tol, arg3, along_x, along_y, along_z)
surface_genus()
vertices()
volume()
wrap_in_compound()
class ifcopenshell.ifcopenshell_wrapper.DoubleArray3(*args)
back()
begin()
empty()
end()
fill(u)
front()
iterator()
rbegin()
rend()
size()
swap(v)
class ifcopenshell.ifcopenshell_wrapper.Element(settings, id, parent_id, name, type, guid, context, trsf, product)
SetParents(newparents)
parents()
property context: str

Element’s geometry context.

E.g ‘Body’:

property guid: str

Mirroring IfcRoot.GlobalId.

property id: int

Element’s STEP ID.

property name: str

Mirroring IfcRoot.Name.

property parent_id: int

Parent object STEP id.

E.g. IfcBuildingStorey that element’s in.

property product: entity_instance
property transformation: Transformation
property transformation_buffer: bytes
property type: str

Element’s IFC Class.

E.g. ‘IfcWall’.

property unique_id: str

Interal unique id for the element.

E.g. ‘product-186f8dc2-070c-46e1-a65b-a435a043ba3e-body’.

class ifcopenshell.ifcopenshell_wrapper.GeometrySerializer(*args, **kwargs)
geometry_settings(*args)
isTesselated()
object_id(o)
read(*args)
setUnitNameAndMagnitude(name, magnitude)
settings(*args)
write(*args)
READ_BREP: Any
READ_TRIANGULATION: Any
class ifcopenshell.ifcopenshell_wrapper.GltfSerializer(filename, geometry_settings, settings)

Bases: WriteOnlyGeometrySerializer

finalize()
isTesselated()
ready()
setFile(arg2)
setUnitNameAndMagnitude(arg2, arg3)
write(*args)
writeHeader()
class ifcopenshell.ifcopenshell_wrapper.HdfSerializer(hdf_filename, geometry_settings, settings, read_only=False)

Bases: GeometrySerializer

finalize()
isTesselated()
read(*args)
ready()
remove(guid: str) None
setFile(arg2)
setUnitNameAndMagnitude(arg2, arg3)
write(*args)
writeHeader()
class ifcopenshell.ifcopenshell_wrapper.IfcBaseEntity(*args, **kwargs)

Bases: entity_instance

declaration()
get(name)
get_inverse(name)
populate_derived()
set_id(i)
class ifcopenshell.ifcopenshell_wrapper.IfcBaseType(*args, **kwargs)

Bases: entity_instance

declaration()
class ifcopenshell.ifcopenshell_wrapper.IfcEntityInstanceData(*args, **kwargs)
class ifcopenshell.ifcopenshell_wrapper.IfcLateBoundEntity(decl, data)

Bases: IfcBaseEntity

declaration()
class ifcopenshell.ifcopenshell_wrapper.IfcSpfHeader(*args)

IFC Header definition: https://standards.buildingsmart.org/documents/Implementation/ImplementationGuide_IFCHeaderData_Version_1.0.2.pdf

file(*args)
file_description_py()
file_name_py()
file_schema_py()
read()
tryRead()
write(out)
class ifcopenshell.ifcopenshell_wrapper.InstanceStreamer(*args)
bypassTypes(type_names)
bypassed_instances()
hasSemicolon()
inverses(*args)
pushPage(page)
readInstancePy(type_as_declaration_instance=False)
references(*args)
semicolonCount()
status()
coerce_attribute_count: bool
class ifcopenshell.ifcopenshell_wrapper.Iterator(*args)
bounds_max()
bounds_min()
compute_bounds(with_geometry)
create()
file()
filters(*args)
get() Element

Get last processed element.

getLog()
get_native()
get_object(id)
get_task_items()
get_task_products()
had_error_processing_elements()
initialize() bool

Return true if the iterator is initialized with any elements, false otherwise.

next() entity_instance | None

Process next shape representation.

Returns:

Processed entity_instance or None if nothing is left to process.

process_concurrently()
process_finished_rep(rep)
progress() int

Return current progress (0-100).

Updated after processing each representation.

set_cache(cache: GeometrySerializer | None) None
unit_magnitude()
unit_name()
initialization_outcome_: Any
processed_: Any
class ifcopenshell.ifcopenshell_wrapper.JsonSerializer(*args)
finalize()
ready()
setFile(arg2)
writeHeader()
JSON_DIALECT_CREOOX: Any
class ifcopenshell.ifcopenshell_wrapper.MakeVolume
defaultvalue: Any
description: Any
name: Any
class ifcopenshell.ifcopenshell_wrapper.OpaqueCoordinate_3(*args)
get(i)
set(i, n)
class ifcopenshell.ifcopenshell_wrapper.OpaqueCoordinate_4(*args)
get(i)
set(i, n)
class ifcopenshell.ifcopenshell_wrapper.OpaqueNumber(*args, **kwargs)
clone()
to_double()
to_string()
class ifcopenshell.ifcopenshell_wrapper.Representation(settings, entity, id)
entity()
settings()
property id: str

Example: 2432-openings-2468, where - 2432 - mapped representation id - 2468 - IfcRelVoidsElement

class ifcopenshell.ifcopenshell_wrapper.RocksDBPrefixIterator(storage, prefix)
key()
next()
valid()
value()
class ifcopenshell.ifcopenshell_wrapper.RocksDbSerializer(*args)
finalize() None
ready() bool
setFile(arg2) None
writeHeader() None
class ifcopenshell.ifcopenshell_wrapper.Serialization(brep)

Bases: Representation

property brep_data
property surface_style_ids
property surface_styles
class ifcopenshell.ifcopenshell_wrapper.SerializedElement(shape_model)

Bases: Element

property geometry: Serialization
class ifcopenshell.ifcopenshell_wrapper.SerializerSettings
get_(name)
get_type(name)
set_(*args)
setting_names()
class ifcopenshell.ifcopenshell_wrapper.Settings
get_(name)
get_type(name)
set_(*args)
setting_names()
class ifcopenshell.ifcopenshell_wrapper.SvgSerializer(out_filename, geometry_settings, settings)

Bases: WriteOnlyGeometrySerializer

addDrawing(pos, dir, ref, name, include_projection)
addSizeComponent(fi)
addTextAnnotations(k)
addXCoordinate(fi)
addYCoordinate(fi)
doWriteHeader()
finalize()
getMirrorX()
getMirrorY()
getOnlyValid(b)
getProfileThreshold()
getSegmentProjection()
getSubtractionSettings()
getUnifyInputs()
getUsePrefiltering()
growBoundingBox(x, y)
idElement(elem)
isTesselated()
nameElement(*args)
object_id(storey, o)
ready()
resetScale()
resize()
setAlwaysProject(b)
setAutoElevation(b)
setAutoSection(b)
setBoundingRectangle(width, height)
setDrawDoorArcs(b)
setDrawStoreyHeights(sh)
setDrawingCenter(x, y)
setElevationRef(s)
setElevationRefGuid(s)
setFile(f)
setMirrorX(b)
setMirrorY(b)
setNoCSS(b)
setOnlyValid(b)
setPolygonal(b)
setPrintSpaceAreas(b)
setPrintSpaceNames(b)
setProfileThreshold(i)
setScale(s)
setSectionHeight(h, storey=None)
setSectionHeightsFromStoreys(offset=1.2)
setSectionRef(s)
setSegmentProjection(b)
setSpaceNameTransform(v)
setStoreyHeightLineLength(d)
setSubtractionSettings(sbp)
setUnifyInputs(b)
setUnitNameAndMagnitude(arg2, arg3)
setUseHlrPoly(b)
setUseNamespace(b)
setUsePrefiltering(b)
setWithoutStoreys(b)
start_path(*args)
write(*args)
writeHeader()
SH_FULL: Any
SH_LEFT: Any
SH_NONE: Any
class ifcopenshell.ifcopenshell_wrapper.SwigPyIterator(*args, **kwargs)
advance(n)
copy()
decr(n=1)
distance(x)
equal(x)
incr(n=1)
next()
previous()
value()
class ifcopenshell.ifcopenshell_wrapper.Transformation(settings, matrix)
data()
property matrix
class ifcopenshell.ifcopenshell_wrapper.Triangulation(*args)

Bases: Representation

addEdge(item_id, style, i0, i1)
addFace(*args)
addNormal(X, Y, Z)
addVertex(item_index, material_index, X, Y, Z)
static box_project_uvs(vertices, normals)
static empty(settings)
registerEdge(item_id, i0, i1)
registerEdgeCount(n1, n2, edgecount)
resetWelds()
uvs_ref()
property colors_buffer
property edges: tuple[int, Ellipsis]
property edges_buffer: bytes
property edges_item_ids: tuple[int, Ellipsis]
property edges_item_ids_buffer: bytes
property faces: tuple[int, Ellipsis]
property faces_buffer: bytes
property faces_tri: tuple[int, Ellipsis]
property item_ids: tuple[int, Ellipsis]
property item_ids_buffer: bytes
property material_ids: tuple[int, Ellipsis]
property material_ids_buffer: bytes
property materials: tuple[style, Ellipsis]
property normals
property normals_buffer: bytes
property polyhedral_faces_with_holes
property polyhedral_faces_without_holes
property uvs
property verts: tuple[float, Ellipsis]
property verts_buffer: bytes
class ifcopenshell.ifcopenshell_wrapper.TriangulationElement(*args)

Bases: Element

geometry_pointer()
property geometry: Triangulation
class ifcopenshell.ifcopenshell_wrapper.TtlWktSerializer(filename, geometry_settings, settings)

Bases: WriteOnlyGeometrySerializer

finalize()
isTesselated()
ready()
setFile(arg2)
setUnitNameAndMagnitude(arg2, arg3)
ttl_object_id(o, postfix=None)
write(*args)
writeHeader()
class ifcopenshell.ifcopenshell_wrapper.WaveFrontOBJSerializer(obj_filename, mtl_filename, geometry_settings, settings)

Bases: WriteOnlyGeometrySerializer

finalize()
isTesselated()
ready()
setFile(arg2)
setUnitNameAndMagnitude(arg2, arg3)
write(*args)
writeHeader()
writeMaterial(style)
class ifcopenshell.ifcopenshell_wrapper.WriteOnlyGeometrySerializer(*args, **kwargs)

Bases: GeometrySerializer

read(*args)
class ifcopenshell.ifcopenshell_wrapper.XmlSerializer(file, xml_filename)
finalize()
ready()
setFile(arg2)
writeHeader()
class ifcopenshell.ifcopenshell_wrapper.abstract_arrangement(*args, **kwargs)
get_face_pairs()
merge(edge_indices)
num_edges()
num_faces()
write(polygons, progress)
class ifcopenshell.ifcopenshell_wrapper.aggregation_type(type_of_aggregation, bound1, bound2, type_of_element)

Bases: parameter_type

as_aggregation_type() aggregation_type
bound1()
bound2()
type_of_aggregation()
type_of_aggregation_string()
type_of_element() parameter_type
array_type: Any
bag_type: Any
list_type: Any
set_type: Any
class ifcopenshell.ifcopenshell_wrapper.attribute(name, type_of_attribute, optional)
name() str
optional() bool
type_of_attribute() parameter_type
class ifcopenshell.ifcopenshell_wrapper.attribute_value_derived
class ifcopenshell.ifcopenshell_wrapper.boolean_result
calc_hash()
clone_()
kind()
static operation_str(op)
INTERSECTION: Any
SUBTRACTION: Any
UNION: Any
property children
operation: Any
class ifcopenshell.ifcopenshell_wrapper.bspline_curve

Bases: curve

calc_hash()
clone_()
kind()
control_points: Any
degree: Any
knots: Any
multiplicities: Any
weights: Any
class ifcopenshell.ifcopenshell_wrapper.bspline_surface

Bases: surface

calc_hash()
clone_()
kind()
control_points: Any
degree: Any
knots: Any
multiplicities: Any
weights: Any
class ifcopenshell.ifcopenshell_wrapper.buffer(*args)
filename()
get_value()
is_ready()
class ifcopenshell.ifcopenshell_wrapper.cant_function(*args)

Bases: function_item

calc_hash()
clone_()
end()
get_cant()
get_gradient()
kind()
start()
class ifcopenshell.ifcopenshell_wrapper.circle

Bases: curve

calc_hash()
clone_()
static from_3_points(p1, p2, p3)
kind()
property matrix
radius: Any
class ifcopenshell.ifcopenshell_wrapper.clash
a: Any
b: Any
clash_type: Any
distance: Any
p1: Any
p2: Any
class ifcopenshell.ifcopenshell_wrapper.clashes(*args)
append(x)
assign(n, x)
back()
begin()
capacity()
clear()
empty()
end()
erase(*args)
front()
get_allocator()
insert(*args)
iterator()
pop()
pop_back()
push_back(x)
rbegin()
rend()
reserve(n)
resize(*args)
size()
swap(v)
class ifcopenshell.ifcopenshell_wrapper.collection
calc_hash()
clone_()
kind()
property children
property matrix
class ifcopenshell.ifcopenshell_wrapper.colour(*args)

Bases: item

b() float
calc_hash() int
clone_() Self
g() float
kind() int
r() float
property components: tuple[float, float, float]

RGB tuple.

class ifcopenshell.ifcopenshell_wrapper.context(*args)
add(segments)
build()
get_face_pairs()
merge(edge_indices)
num_edges()
num_faces()
write(arg2)
class ifcopenshell.ifcopenshell_wrapper.curve(*args, **kwargs)

Bases: geom_item

print_impl(o, classname, indent=0)
class ifcopenshell.ifcopenshell_wrapper.cylinder

Bases: surface

calc_hash()
clone_()
kind()
property matrix
radius: Any
class ifcopenshell.ifcopenshell_wrapper.declaration(name, index_in_schema)
as_entity() entity | None
as_enumeration_type() enumeration_type | None
as_select_type() select_type | None
as_type_declaration() type_declaration | None
index_in_schema() int
name() str
name_uc() str

Get name in upper case.

schema() schema_definition
type()
class ifcopenshell.ifcopenshell_wrapper.direction3(*args)
calc_hash()
clone_()
kind()
property components
class ifcopenshell.ifcopenshell_wrapper.drawing_meta
matrix_3: Any
pln_3d: Any
class ifcopenshell.ifcopenshell_wrapper.edge(*args)

Bases: trimmed_curve

calc_hash()
clone_()
kind()
class ifcopenshell.ifcopenshell_wrapper.ellipse(*args, **kwargs)

Bases: curve

calc_hash()
clone_()
kind()
property matrix
radius: Any
radius2: Any
class ifcopenshell.ifcopenshell_wrapper.entity(name, is_abstract, index_in_schema, supertype)

Bases: declaration

all_attributes() tuple[attribute, Ellipsis]
all_inverse_attributes() tuple[inverse_attribute, Ellipsis]
argument_types() tuple[str, Ellipsis]

Get a tuple of types for each attribute in all_attributes().

as_entity() entity
attribute_by_index(index: int) attribute
attribute_count() int
attribute_index(*args: str | attribute) int
Parameters:

args – A single attribute name / attribute.

attributes() tuple[attribute, Ellipsis]
derived() tuple[bool, Ellipsis]

Return a tuple of booleans indicating whether each direct attribute is derived.

is_abstract() bool
set_attributes(attributes, derived)
set_inverse_attributes(inverse_attributes)
set_subtypes(subtypes)
subtypes() tuple[entity, Ellipsis]
supertype() entity | None
class ifcopenshell.ifcopenshell_wrapper.entity_instance(*args, **kwargs)
data(*args)
declaration() declaration
file_pointer()

Internal IfcFile pointer address.

Same as file.file_pointer).

get_argument(*args)
get_argument_index(a)
get_argument_name(i)
get_argument_type(i)
get_attribute_category(name: str) Literal[0, 1, 2]

Get attribute category id.

Available categories: - 0 - invalid attribute - 1 - forward attribute - 2 - inverse attributes

get_attribute_names()
get_attribute_value(index)
get_inverse(a)
get_inverse_attribute_names()
id() int
identity() int

Entity instance identity, unique across all opened IFC files during current session.

is_a(*args)
setArgumentAsAggregateOfAggregateOfDouble(i, v)
setArgumentAsAggregateOfAggregateOfEntityInstance(i, v)
setArgumentAsAggregateOfAggregateOfInt(i, v)
setArgumentAsAggregateOfDouble(i, v)
setArgumentAsAggregateOfEntityInstance(i, v)
setArgumentAsAggregateOfInt(i, v)
setArgumentAsAggregateOfString(i, v)
setArgumentAsBool(i, v)
setArgumentAsDouble(i, v)
setArgumentAsEntityInstance(i, v)
setArgumentAsInt(i, v)
setArgumentAsLogical(i, v)
setArgumentAsNull(i)
setArgumentAsString(i, a)
set_attribute_value(*args)
toString(arg2, upper=False)
to_string(valid_spf=True)
unset_attribute_value(i)
file: ifcopenshell.file

Reference to IFC file to prevent it’s garbage collection, if entity is still used.

file_: Any
id_: Any
class ifcopenshell.ifcopenshell_wrapper.enumeration_type(name, index_in_schema, enumeration_items)

Bases: declaration

argument_types() tuple[str, Ellipsis]
as_enumeration_type() enumeration_type
enumeration_items() tuple[str, Ellipsis]
lookup_enum_offset(string: str) int

Get index of the string in enum.

lookup_enum_value(i: int) str

Get a string for the index in enum.

class ifcopenshell.ifcopenshell_wrapper.equal_functor
class ifcopenshell.ifcopenshell_wrapper.extrusion(m, basis, dir, d)

Bases: sweep

calc_hash()
clone_()
kind()
depth: Any
direction: Any
property matrix
class ifcopenshell.ifcopenshell_wrapper.face
calc_hash()
clone_()
kind()
print_impl(o, indent)
basis: Any
property children
property matrix
class ifcopenshell.ifcopenshell_wrapper.file(*args)
FreshId()
add(entity: entity_instance, id: int = -1) entity_instance
addEntities(entities)
add_type_ref(new_entity)
batch() None

Enable batch mode.

Batch mode: 1. Calling remove(entity) does not immediately remove the entity;

it marks it for deletion instead.

  1. When you call unbatch(), all marked entities are deleted in a single operation.

Difference from usual removal: - In normal mode, removing an entity immediately traverses and removes all inverse references to it. - In batch mode, inverse references are not updated per entity.

Instead, the entire inverse reference map is scanned during unbatch() to remove references to all deleted entities.

Batch deletion may be slower than immediate deletion, depending on the size of the inverse reference map.

build_inverses()
build_inverses_(arg2)
by_guid(guid: str) entity_instance
by_id(id: int) entity_instance
by_type(*args)
by_type_excl_subtypes(*args)
bypass_type(type_name: str) None
create(decl)
static createTimestamp()
entity_names() tuple[int, Ellipsis]

Get a tuple of step ids present in the file.

file_pointer() int

Internal IfcFile pointer address.

Same as int(self.this).

getMaxId()
getUnit(unit_type)
get_inverse(e: entity_instance) tuple[entity_instance, Ellipsis]
get_inverse_indices(*args: entity_instance | int) tuple[int, Ellipsis]

Get the attribute indices for each inverse from get_inverse, that reference the provided entity..

Parameters:

args – entity or it’s id. Maximum 1 entity at the time.

get_inverses_by_declaration(instance_id: int, type: declaration, attribute_index: int) tuple[entity_instance, Ellipsis]

Get instance inverses of the particular type defined by declaration.

Parameters:
  • declaration – Type of inverses to find. Supertypes are also supported - e.g. ‘IfcRoot’ will also include all ‘IfcRelationship’ inverses.

  • attribute_index – Find references only from the provided attribute index. Could be set to -1 to consider all attributes.

get_total_inverses(e: entity_instance) int
get_total_inverses_by_id(instance_id: int) int
good()
header(*args) IfcSpfHeader

Internal IfcSpfHeader instance, always prefer ifcopenshell.file.header instead.

ifcroot_type() entity
initialize(*args)
key_value_store_iter(prefix)
key_value_store_query(key)
process_deletion_inverse(inst)
recalculate_id_counter()
remove(entity: entity_instance) None
remove_type_ref(new_entity)
reset_identity_cache()
storage_mode()
to_string()
static traverse(instance: entity_instance, max_level: int = -1) tuple[entity_instance, Ellipsis]
static traverse_breadth_first(instance: entity_instance, max_level: int = -1) tuple[entity_instance, Ellipsis]
types() tuple[str, Ellipsis]

Return a tuple of classes present in the file.

E.g. (“IfcWallType”, “IfcWall”, “IfcArbitraryClosedProfileDef”, …).

unbatch() None

Exit batch mode.

write(fn)
calculate_unit_factors: bool
check_existance_before_adding: bool
instantiate_typed_instances: bool
property schema
class ifcopenshell.ifcopenshell_wrapper.file_open_status(*args)
value()
INVALID_SYNTAX: int
NO_HEADER: int
READ_ERROR: int
SUCCESS: int
UNKNOWN: int
UNSUPPORTED_SCHEMA: int
class ifcopenshell.ifcopenshell_wrapper.fn_evaluator(*args, **kwargs)
clone()
end()
evaluate(u)
length()
start()
settings_: Any
class ifcopenshell.ifcopenshell_wrapper.function_item(*args, **kwargs)

Bases: implicit_item

calc_hash()
end()
kind()
length()
start()
class ifcopenshell.ifcopenshell_wrapper.function_item_evaluator(*args)
evaluate(*args)
evaluation_points(*args)
class ifcopenshell.ifcopenshell_wrapper.functor_item(*args)

Bases: function_item

calc_hash()
clone_()
end()
kind()
start()
class ifcopenshell.ifcopenshell_wrapper.geom_item(*args, **kwargs)

Bases: item

matrix: Any
surface_style: Any
class ifcopenshell.ifcopenshell_wrapper.geometry_conversion_result
breps: Any
elements: Any
index: Any
item: Any
products: Any
products_2: Any
representation: Any
class ifcopenshell.ifcopenshell_wrapper.gradient_function(*args)

Bases: function_item

calc_hash()
clone_()
end()
get_horizontal()
get_vertical()
kind()
start()
class ifcopenshell.ifcopenshell_wrapper.hash_functor
class ifcopenshell.ifcopenshell_wrapper.horizontal_plan_at_element
class ifcopenshell.ifcopenshell_wrapper.implicit_item(*args, **kwargs)

Bases: geom_item

class ifcopenshell.ifcopenshell_wrapper.inverse_attribute(name, type_of_aggregation, bound1, bound2, entity_reference, attribute_reference)
attribute_reference()
bound1()
bound2()
entity_reference()
name()
type_of_aggregation()
type_of_aggregation_string()
bag_type: Any
set_type: Any
unspecified_type: Any
class ifcopenshell.ifcopenshell_wrapper.item(*args, **kwargs)
calc_hash()
clone_() Self
hash()
identity()
kind()

Internal enum item index.

reverse()
instance: Any
orientation: Any
class ifcopenshell.ifcopenshell_wrapper.less_functor
class ifcopenshell.ifcopenshell_wrapper.line(*args, **kwargs)

Bases: curve

calc_hash()
clone_()
kind()
property matrix
class ifcopenshell.ifcopenshell_wrapper.line_segment(*args)
back()
begin()
empty()
end()
fill(u)
front()
iterator()
rbegin()
rend()
size()
swap(v)
class ifcopenshell.ifcopenshell_wrapper.loft
calc_hash()
clone_()
kind()
print_impl(o, indent)
axis: Any
property children
class ifcopenshell.ifcopenshell_wrapper.loop
calc_hash()
calculate_linear_edge_curves()
centroid()
clone_()
is_polyhedron()
kind()
remove_linear_edge_curves()
property children
closed: Any
external: Any
function_item: Any
tags: Any
class ifcopenshell.ifcopenshell_wrapper.matrix4(*args)

Bases: item

calc_hash()
clone_()
is_identity()
kind()

Internal enum item index.

post_multiply_scale(s)
pre_multiply_scale(s)
translation_part()
AFFINE_WO_SCALE: Any
AFFINE_W_NONUNIFORM_SCALE: Any
AFFINE_W_UNIFORM_SCALE: Any
IDENTITY: Any
OTHER: Any
property components
tag: Any
class ifcopenshell.ifcopenshell_wrapper.named_type(declared_type)

Bases: parameter_type

as_named_type() named_type
declared_type() declaration
class ifcopenshell.ifcopenshell_wrapper.node(*args, **kwargs)

Bases: item

calc_hash()
clone_()
kind()

Internal enum item index.

class ifcopenshell.ifcopenshell_wrapper.offset_curve(*args, **kwargs)

Bases: curve

calc_hash()
clone_()
kind()
basis: Any
offset: Any
reference: Any
class ifcopenshell.ifcopenshell_wrapper.offset_function(*args)

Bases: function_item

calc_hash()
clone_()
end()
get_basis()
get_offset()
kind()
start()
class ifcopenshell.ifcopenshell_wrapper.parameter_type
as_aggregation_type() aggregation_type | None
as_named_type() named_type | None
as_simple_type() simple_type | None
class ifcopenshell.ifcopenshell_wrapper.piecewise_function(*args)

Bases: function_item

calc_hash()
clone_()
end()
is_empty()
kind()
length()
span_count()
span_fn(i)
spans()
start()
class ifcopenshell.ifcopenshell_wrapper.plane

Bases: surface

calc_hash()
clone_()
kind()
property matrix
class ifcopenshell.ifcopenshell_wrapper.point3(*args)
calc_hash()
clone_()
kind()
property components
class ifcopenshell.ifcopenshell_wrapper.polygon_2
boundary: Any
inner_boundaries: Any
point_inside: Any
class ifcopenshell.ifcopenshell_wrapper.ray_intersection_result
distance: Any
dot_product: Any
instance: Any
normal: Any
position: Any
ray_distance: Any
style_index: Any
class ifcopenshell.ifcopenshell_wrapper.ray_intersection_results(*args)
append(x)
assign(n, x)
back()
begin()
capacity()
clear()
empty()
end()
erase(*args)
front()
get_allocator()
insert(*args)
iterator()
pop()
pop_back()
push_back(x)
rbegin()
rend()
reserve(n)
resize(*args)
size()
swap(v)
class ifcopenshell.ifcopenshell_wrapper.revolve(m, basis, pnt, dir, a)

Bases: sweep

calc_hash()
clone_()
kind()
angle: Any
axis_origin: Any
direction: Any
property matrix
class ifcopenshell.ifcopenshell_wrapper.schema_definition(name, declarations, factory)
declaration_by_name(*args: str) declaration
Returns:

declaration but upcasted to the most advanced available type (e.g. entity, type_declaration, etc).

declarations() tuple[declaration, Ellipsis]
Returns:

returned declarations are also upcasted, see declaration_by_name.

entities() tuple[entity, Ellipsis]
enumeration_types() tuple[enumeration_type, Ellipsis]
instantiate(decl, data)
name() str
select_types() tuple[select_type, Ellipsis]
type_declarations() tuple[type_declaration, Ellipsis]
class ifcopenshell.ifcopenshell_wrapper.select_type(name, index_in_schema, select_list)

Bases: declaration

as_select_type() select_type
select_list() tuple[declaration, Ellipsis]
class ifcopenshell.ifcopenshell_wrapper.shell
calc_hash()
centroid()
clone_()
kind()
print_impl(o, indent)
property children
closed: Any
class ifcopenshell.ifcopenshell_wrapper.simple_type(declared_type)

Bases: parameter_type

as_simple_type() simple_type
declared_type()
binary_type: Any
boolean_type: Any
datatype_COUNT: Any
integer_type: Any
logical_type: Any
number_type: Any
real_type: Any
string_type: Any
class ifcopenshell.ifcopenshell_wrapper.solid
calc_hash()
clone_()
kind()
property children
property matrix
class ifcopenshell.ifcopenshell_wrapper.sphere

Bases: surface

calc_hash()
clone_()
kind()
property matrix
radius: Any
class ifcopenshell.ifcopenshell_wrapper.style(*args)

Bases: item

calc_hash() int
clone_() Self
get_color() colour

“Return surface color if it’s used, otherwise return diffuse color.

has_specularity() bool
has_transparency() bool
instance_id() int

Possible values for instance_id: - IFC style id if style assigned to the representation items directly or through material with a style; - IFC material id if both true:

  • element has a material without a style;

  • there are parts of the geometry that has no other style assigned to them;

  • -1 in case if there is no material;

  • 0 in case if there are default materials used.

kind() int

Internal enum item index.

diffuse: colour
name: str

E.g. ‘IfcSurfaceStyleShading-218’, where 218 is style’s STEP id.

specular: colour
specularity: float

Can be float(‘nan’)

surface: colour
transparency: float

Can be float(‘nan’)

use_surface_color: bool
class ifcopenshell.ifcopenshell_wrapper.surface(*args, **kwargs)

Bases: geom_item

class ifcopenshell.ifcopenshell_wrapper.svg_groups_of_line_segments(*args)
append(x)
assign(n, x)
back()
begin()
capacity()
clear()
empty()
end()
erase(*args)
front()
get_allocator()
insert(*args)
iterator()
pop()
pop_back()
push_back(x)
rbegin()
rend()
reserve(n)
resize(*args)
size()
swap(v)
class ifcopenshell.ifcopenshell_wrapper.svg_groups_of_polygons(*args)
append(x)
assign(n, x)
back()
begin()
capacity()
clear()
empty()
end()
erase(*args)
front()
get_allocator()
insert(*args)
iterator()
pop()
pop_back()
push_back(x)
rbegin()
rend()
reserve(n)
resize(*args)
size()
swap(v)
class ifcopenshell.ifcopenshell_wrapper.svg_line_segments(*args)
append(x)
assign(n, x)
back()
begin()
capacity()
clear()
empty()
end()
erase(*args)
front()
get_allocator()
insert(*args)
iterator()
pop()
pop_back()
push_back(x)
rbegin()
rend()
reserve(n)
resize(*args)
size()
swap(v)
class ifcopenshell.ifcopenshell_wrapper.svg_loop(*args)
append(x)
assign(n, x)
back()
begin()
capacity()
clear()
empty()
end()
erase(*args)
front()
get_allocator()
insert(*args)
iterator()
pop()
pop_back()
push_back(x)
rbegin()
rend()
reserve(n)
resize(*args)
size()
swap(v)
class ifcopenshell.ifcopenshell_wrapper.svg_loops(*args)
append(x)
assign(n, x)
back()
begin()
capacity()
clear()
empty()
end()
erase(*args)
front()
get_allocator()
insert(*args)
iterator()
pop()
pop_back()
push_back(x)
rbegin()
rend()
reserve(n)
resize(*args)
size()
swap(v)
class ifcopenshell.ifcopenshell_wrapper.svg_point(*args)
back()
begin()
empty()
end()
fill(u)
front()
iterator()
rbegin()
rend()
size()
swap(v)
class ifcopenshell.ifcopenshell_wrapper.svg_polygons(*args)
append(x)
assign(n, x)
back()
begin()
capacity()
clear()
empty()
end()
erase(*args)
front()
get_allocator()
insert(*args)
iterator()
pop()
pop_back()
push_back(x)
rbegin()
rend()
reserve(n)
resize(*args)
size()
swap(v)
class ifcopenshell.ifcopenshell_wrapper.sweep(*args, **kwargs)

Bases: geom_item

basis: Any
class ifcopenshell.ifcopenshell_wrapper.sweep_along_curve(*args)

Bases: sweep

calc_hash()
clone_()
kind()
curve: Any
direction: Any
surface: Any
class ifcopenshell.ifcopenshell_wrapper.torus(*args, **kwargs)

Bases: surface

calc_hash()
clone_()
kind()
property matrix
radius1: Any
radius2: Any
class ifcopenshell.ifcopenshell_wrapper.tree(*args)
add_element(*args)
add_file(*args)
clash_clearance_many(set_a, set_b, clearance, check_all)
clash_collision_many(set_a, set_b, allow_touching)
clash_intersection_many(set_a, set_b, tolerance, check_all)
distances()
enable_face_styles(*args)
static is_manifold(fs)
protrusion_distances()
select(*args)
select_box(*args)
select_ray(p0, d, length=1000.0)
styles()
uint8_to_b64(uuids_array)
static vector_to_list(ps)
write_h5()
class ifcopenshell.ifcopenshell_wrapper.trimmed_curve(*args, **kwargs)

Bases: geom_item

reverse()
basis: Any
curve_sense: Any
end: Any
start: Any
class ifcopenshell.ifcopenshell_wrapper.type_by_kind
max: Any
class ifcopenshell.ifcopenshell_wrapper.type_declaration(name, index_in_schema, declared_type)

Bases: declaration

argument_types()
as_type_declaration() type_declaration
declared_type()
class ifcopenshell.ifcopenshell_wrapper.uninitialized_tag
ifcopenshell.ifcopenshell_wrapper.arrange_polygons(polygons)
ifcopenshell.ifcopenshell_wrapper.clear_schemas()
ifcopenshell.ifcopenshell_wrapper.construct_iterator(geometry_library, settings, file, num_threads)
ifcopenshell.ifcopenshell_wrapper.construct_iterator_with_include_exclude(geometry_library, settings, file, elems, include, num_threads)
ifcopenshell.ifcopenshell_wrapper.construct_iterator_with_include_exclude_globalid(geometry_library, settings, file, elems, include, num_threads)
ifcopenshell.ifcopenshell_wrapper.construct_iterator_with_include_exclude_id(geometry_library, settings, file, elems, include, num_threads)
ifcopenshell.ifcopenshell_wrapper.convert_loop_to_function_item(loop)
ifcopenshell.ifcopenshell_wrapper.create_box(*args)
ifcopenshell.ifcopenshell_wrapper.create_epeck(*args)
ifcopenshell.ifcopenshell_wrapper.create_shape(*args)
ifcopenshell.ifcopenshell_wrapper.flatten(deep)
ifcopenshell.ifcopenshell_wrapper.get_feature(x)
ifcopenshell.ifcopenshell_wrapper.get_info_cpp(v, include_identifier=True)
ifcopenshell.ifcopenshell_wrapper.get_log()
ifcopenshell.ifcopenshell_wrapper.guess_file_type(fn)
ifcopenshell.ifcopenshell_wrapper.helmert_curve_point(A0, A1, A2, s)
ifcopenshell.ifcopenshell_wrapper.kind_to_string(k)
ifcopenshell.ifcopenshell_wrapper.less(arg1, arg2)
ifcopenshell.ifcopenshell_wrapper.line_segments_to_polygons(s, eps, segments)
ifcopenshell.ifcopenshell_wrapper.map_shape(settings, instance)
ifcopenshell.ifcopenshell_wrapper.nary_union(sequence)
ifcopenshell.ifcopenshell_wrapper.new_IfcBaseClass(schema_identifier: str, name: str) entity_instance
ifcopenshell.ifcopenshell_wrapper.open(fn: str, readonly: bool = False) file
ifcopenshell.ifcopenshell_wrapper.parse_ifcxml(filename)
ifcopenshell.ifcopenshell_wrapper.polygons_to_svg(*args)
ifcopenshell.ifcopenshell_wrapper.read(data)
ifcopenshell.ifcopenshell_wrapper.register_schema(arg1)
ifcopenshell.ifcopenshell_wrapper.schema_by_name(arg1: str) schema_definition
ifcopenshell.ifcopenshell_wrapper.schema_names() tuple[str, Ellipsis]
ifcopenshell.ifcopenshell_wrapper.serialise(schema_name, shape_str, advanced=True)
ifcopenshell.ifcopenshell_wrapper.set_feature(x, v)
ifcopenshell.ifcopenshell_wrapper.set_log_format_json()
ifcopenshell.ifcopenshell_wrapper.set_log_format_text()
ifcopenshell.ifcopenshell_wrapper.stream_from_string(data)
ifcopenshell.ifcopenshell_wrapper.svg_to_line_segments(data, class_name)
ifcopenshell.ifcopenshell_wrapper.svg_to_polygons(data, class_name)
ifcopenshell.ifcopenshell_wrapper.taxonomy_item_repr(i)
ifcopenshell.ifcopenshell_wrapper.tesselate(schema_name, shape_str, d)
ifcopenshell.ifcopenshell_wrapper.turn_off_detailed_logging() None
ifcopenshell.ifcopenshell_wrapper.turn_on_detailed_logging() None
ifcopenshell.ifcopenshell_wrapper.version() str
ifcopenshell.ifcopenshell_wrapper.ALWAYS: Any
ifcopenshell.ifcopenshell_wrapper.ATEND: Any
ifcopenshell.ifcopenshell_wrapper.ATPATH: Any
ifcopenshell.ifcopenshell_wrapper.ATSTART: Any
ifcopenshell.ifcopenshell_wrapper.BOOLEAN_RESULT: Any
ifcopenshell.ifcopenshell_wrapper.BSPLINE_CURVE: Any
ifcopenshell.ifcopenshell_wrapper.BSPLINE_SURFACE: Any
ifcopenshell.ifcopenshell_wrapper.CANT_FUNCTION: Any
ifcopenshell.ifcopenshell_wrapper.CARTESIAN_DOUBLE: Any
ifcopenshell.ifcopenshell_wrapper.CARTESIAN_QUOTIENT: Any
ifcopenshell.ifcopenshell_wrapper.CIRCLE: Any
ifcopenshell.ifcopenshell_wrapper.COLLECTION: Any
ifcopenshell.ifcopenshell_wrapper.COLOUR: Any
ifcopenshell.ifcopenshell_wrapper.CURVES: Any
ifcopenshell.ifcopenshell_wrapper.CURVES_SURFACES_AND_SOLIDS: Any
ifcopenshell.ifcopenshell_wrapper.CYLINDER: Any
ifcopenshell.ifcopenshell_wrapper.DIRECTION3: Any
ifcopenshell.ifcopenshell_wrapper.EDGE: Any
ifcopenshell.ifcopenshell_wrapper.ELLIPSE: Any
ifcopenshell.ifcopenshell_wrapper.EXACT_CONSTRUCTIONS: Any
ifcopenshell.ifcopenshell_wrapper.EXACT_PREDICATES: Any
ifcopenshell.ifcopenshell_wrapper.EXTRUSION: Any
ifcopenshell.ifcopenshell_wrapper.FACE: Any
ifcopenshell.ifcopenshell_wrapper.FILTERED_CARTESIAN_QUOTIENT: Any
ifcopenshell.ifcopenshell_wrapper.FT_AUTODETECT: Any
ifcopenshell.ifcopenshell_wrapper.FT_IFCSPF: Any
ifcopenshell.ifcopenshell_wrapper.FT_IFCXML: Any
ifcopenshell.ifcopenshell_wrapper.FT_IFCZIP: Any
ifcopenshell.ifcopenshell_wrapper.FT_ROCKSDB: Any
ifcopenshell.ifcopenshell_wrapper.FT_UNKNOWN: Any
ifcopenshell.ifcopenshell_wrapper.FUNCTION_ITEM: Any
ifcopenshell.ifcopenshell_wrapper.FUNCTOR_ITEM: Any
ifcopenshell.ifcopenshell_wrapper.GRADIENT_FUNCTION: Any
ifcopenshell.ifcopenshell_wrapper.LINE: Any
ifcopenshell.ifcopenshell_wrapper.LOFT: Any
ifcopenshell.ifcopenshell_wrapper.LOOP: Any
ifcopenshell.ifcopenshell_wrapper.MATRIX4: Any
ifcopenshell.ifcopenshell_wrapper.MAXSTEPSIZE: Any
ifcopenshell.ifcopenshell_wrapper.MINSTEPS: Any
ifcopenshell.ifcopenshell_wrapper.NATIVE: Any
ifcopenshell.ifcopenshell_wrapper.NODE: Any
ifcopenshell.ifcopenshell_wrapper.NOTDEFINED: Any
ifcopenshell.ifcopenshell_wrapper.OFFSET_CURVE: Any
ifcopenshell.ifcopenshell_wrapper.OFFSET_FUNCTION: Any
ifcopenshell.ifcopenshell_wrapper.ON_SLABS_AND_WALLS: Any
ifcopenshell.ifcopenshell_wrapper.ON_SLABS_AT_FLOORPLANS: Any
ifcopenshell.ifcopenshell_wrapper.PIECEWISE_FUNCTION: Any
ifcopenshell.ifcopenshell_wrapper.PLANE: Any
ifcopenshell.ifcopenshell_wrapper.POINT3: Any
ifcopenshell.ifcopenshell_wrapper.POLYHEDRON_WITHOUT_HOLES: Any
ifcopenshell.ifcopenshell_wrapper.POLYHEDRON_WITH_HOLES: Any
ifcopenshell.ifcopenshell_wrapper.REVOLVE: Any
ifcopenshell.ifcopenshell_wrapper.SERIALIZED: Any
ifcopenshell.ifcopenshell_wrapper.SHARED_PTR_DISOWN: Any
ifcopenshell.ifcopenshell_wrapper.SHELL: Any
ifcopenshell.ifcopenshell_wrapper.SOLID: Any
ifcopenshell.ifcopenshell_wrapper.SPHERE: Any
ifcopenshell.ifcopenshell_wrapper.STYLE: Any
ifcopenshell.ifcopenshell_wrapper.SURFACES_AND_SOLIDS: Any
ifcopenshell.ifcopenshell_wrapper.SWEEP_ALONG_CURVE: Any
ifcopenshell.ifcopenshell_wrapper.TORUS: Any
ifcopenshell.ifcopenshell_wrapper.TRIANGLE_MESH: Any
ifcopenshell.ifcopenshell_wrapper.TRIANGULATED: Any
ifcopenshell.ifcopenshell_wrapper.cvar: Any