treble_tsdk.core.geometry_library_obj

Geometry library access and querying.

Helpers for working with the geometry library datasets, categories and position suggestions.

Classes

GeometryLibraryDataset

Available categories for geometry library.

GeometryLibraryObj

Object used for representing geometries from the geometry library.

PositionSuggestion

Suggested position and orientation for placing sources or receivers in a geometry.

class treble_tsdk.core.geometry_library_obj.GeometryLibraryDataset

Available categories for geometry library.

apartments = 'Apartments'
atrium = 'Atrium'
auditorium = 'Auditorium'
bathrooms = 'Bathrooms'
bedrooms = 'Bedrooms'
cafe = 'Cafe'
classrooms = 'Classrooms'
listening_room = 'ListeningRoom'
living_rooms = 'LivingRooms'
living_rooms_with_hallway = 'LivingRoomsWithHallway'
meeting_room = 'MeetingRoom'
office = 'Office'
restaurants = 'Restaurants'
swimming_pool = 'SwimmingPool'
classmethod list()
classmethod print()
class treble_tsdk.core.geometry_library_obj.PositionSuggestion

Suggested position and orientation for placing sources or receivers in a geometry.

Provides recommended placement locations based on geometry analysis.

__init__(dto: PositionSuggestionDto)
property position: Point3d

3D position for the suggested placement.

Returns Point3d:

Position coordinates.

property orientation: Rotation | None

Returns rotation if available, otherwise None.

property azimuth_angle: float | None

Azimuth angle in degrees.

Returns float | None:

Azimuth angle or None if not specified.

property elevation_angle: float | None

Elevation angle in degrees.

Returns float | None:

Elevation angle or None if not specified.

property roll_angle: float | None

Roll angle in degrees.

Returns float | None:

Roll angle or None if not specified.

property name: str
property space: str

Space identifier for the position.

Returns str:

Space name.

class treble_tsdk.core.geometry_library_obj.GeometryLibraryObj

Object used for representing geometries from the geometry library.

__init__(geometryDto: GeometryLibraryDto, client: TSDKClient, lazy: bool = True)
property id: str
property name: str
property description: str
property dataset: str

Dataset name for the geometry.

Returns str:

Dataset name.

property metadata: dict

Metadata dictionary for the geometry.

Returns dict:

Metadata key-value pairs.

property volumeM3: float

Volume of the geometry in cubic meters.

Returns float:

Volume in m³.

property layer_names: list[str] | None

List of layer names in the geometry.

Returns list[str] | None:

Layer names or None if not available.

property position_suggestions: list[PositionSuggestion]

Suggested positions for placing sources or receivers in the geometry.

Returns list[PositionSuggestion]:

List of position suggestions.

property is_watertight: bool

Whether the geometry is watertight (closed volume).

Returns bool:

True if watertight.

plot(view_2d: View2d | None = None)

Uses the plot module to plot the geometry object. :param view_2d: Show a 2d view, choose between None, View2d.xy, View2d.xz, View2d.yz. Optional, defaults to false.

calculate_sabine_estimate(material_assignments: list[MaterialAssignment | MaterialAssignmentDto], model_volume: float | None = None) list[float]

Calculates the sabine estimate of the reverberation time based on layer material assignment.

Parameters:
  • material_assignment (list[MaterialAssignment|MaterialAssignmentDto]) – Layer material assignment for model to calculate the estimate on.

  • model_volume (float) – Optional, If no model volume is input the model volume will be computed from the input objects. If a geometry without a closed shell is input the model_volume has to be specified.

Returns list[float]:

List of the sabine estimated RT for each frequency range valid for materials (63, 125, 250, 500, 1k, 2k, 4k, 8k).

as_tree()

Uses the display_data module to display geometry library object as tree.