py3dtiles.tileset.content.b3dm_feature_table module

class py3dtiles.tileset.content.b3dm_feature_table.B3dmFeatureTable[source]

Bases: FeatureTable[B3dmFeatureTableHeader, B3dmFeatureTableBody]

Only the JSON header has been implemented for now. According to the feature table documentation, the binary body is useful for storing long arrays of data (better performances)

add_property_as_binary(property_name: str, array: ndarray[Any, dtype[int8 | uint8 | int16 | uint16 | int32 | uint32 | float32 | float64]], component_type: Literal['BYTE', 'UNSIGNED_BYTE', 'SHORT', 'UNSIGNED_SHORT', 'INT', 'UNSIGNED_INT', 'FLOAT', 'DOUBLE'], property_type: Literal['SCALAR', 'VEC2', 'VEC3', 'VEC4']) None[source]
add_property_as_json(property_name: str, array: list[Any]) None[source]
static from_array(tile_header: TileContentHeader, array: npt.NDArray[np.uint8], feature_len: int = 0) B3dmFeatureTable[source]
get_batch_length() Any | int[source]
get_binary_property(property_name_to_fetch: str) ndarray[Any, dtype[int8 | uint8 | int16 | uint16 | int32 | uint32 | float32 | float64]][source]
set_batch_length(batch_length: Any) None[source]
to_array() ndarray[Any, dtype[uint8]][source]
class py3dtiles.tileset.content.b3dm_feature_table.B3dmFeatureTableBody(data: list[ndarray[Any, dtype[int8 | uint8 | int16 | uint16 | int32 | uint32 | float32 | float64]]] | None = None)[source]

Bases: FeatureTableBody

to_array() ndarray[Any, dtype[uint8]][source]
class py3dtiles.tileset.content.b3dm_feature_table.B3dmFeatureTableHeader(data: dict[str, list[Any] | dict[str, Any]] | None = None)[source]

Bases: FeatureTableHeader

to_array() ndarray[Any, dtype[uint8]][source]