robokudo.io.semantic_digital_twin ================================= .. py:module:: robokudo.io.semantic_digital_twin Classes ------- .. autoapisummary:: robokudo.io.semantic_digital_twin.Object robokudo.io.semantic_digital_twin.TrackedObject robokudo.io.semantic_digital_twin.UpdateSemanticAnnotationCommand robokudo.io.semantic_digital_twin.AddCollisionCommand robokudo.io.semantic_digital_twin.UpdateCollisionCommand robokudo.io.semantic_digital_twin.RemoveCollisionCommand robokudo.io.semantic_digital_twin.AddObjectDiff robokudo.io.semantic_digital_twin.UpdateObjectDiff robokudo.io.semantic_digital_twin.RemoveObjectDiff robokudo.io.semantic_digital_twin.SemanticDigitalTwinAdapter Functions --------- .. autoapisummary:: robokudo.io.semantic_digital_twin.load_semantic_annotation_extensions Module Contents --------------- .. py:class:: Object .. py:attribute:: data :type: dict .. py:class:: TrackedObject .. py:attribute:: obj :type: Object .. py:attribute:: body :type: semantic_digital_twin.world_description.world_entity.Body .. py:attribute:: semantic_annotations :type: list .. py:attribute:: conns :type: list .. py:attribute:: uid :type: uuid.UUID .. py:class:: UpdateSemanticAnnotationCommand(adapter: SemanticDigitalTwinAdapter, old_semantic_annotation: semantic_digital_twin.world_description.world_entity.SemanticAnnotation, new_semantic_annotation: semantic_digital_twin.world_description.world_entity.SemanticAnnotation) .. py:attribute:: adapter .. py:attribute:: semantic_annotation .. py:attribute:: old_semantic_annotation .. py:attribute:: new_semantic_annotation .. py:method:: apply(world) :abstractmethod: .. py:method:: undo(world) :abstractmethod: .. py:class:: AddCollisionCommand(adapter: SemanticDigitalTwinAdapter, body: semantic_digital_twin.world_description.world_entity.Body, new_collision: semantic_digital_twin.world_description.geometry.Shape) .. py:attribute:: adapter .. py:attribute:: body .. py:attribute:: new_collision .. py:method:: apply(world) .. py:method:: undo(world) .. py:class:: UpdateCollisionCommand(adapter: SemanticDigitalTwinAdapter, old_collision: semantic_digital_twin.world_description.geometry.Shape, new_collision: semantic_digital_twin.world_description.geometry.Shape) .. py:attribute:: adapter .. py:attribute:: collision .. py:attribute:: old_collision .. py:attribute:: new_collision .. py:method:: apply(world) .. py:method:: undo(world) .. py:class:: RemoveCollisionCommand(adapter: SemanticDigitalTwinAdapter, body: semantic_digital_twin.world_description.world_entity.Body, old_collision: semantic_digital_twin.world_description.geometry.Shape) .. py:attribute:: adapter .. py:attribute:: body .. py:attribute:: old_collision .. py:method:: apply(world) .. py:method:: undo(world) .. py:class:: AddObjectDiff(adapter: SemanticDigitalTwinAdapter, new_object: Object) .. py:attribute:: adapter .. py:attribute:: new_object .. py:attribute:: tracked_object .. py:attribute:: commands :value: [] .. py:method:: apply() .. py:method:: undo() .. py:class:: UpdateObjectDiff(adapter: SemanticDigitalTwinAdapter, old_object: TrackedObject, new_object: Object) .. py:attribute:: adapter .. py:attribute:: old_object .. py:attribute:: new_object .. py:attribute:: tracked_object .. py:attribute:: commands :value: [] .. py:method:: apply() .. py:method:: undo() .. py:class:: RemoveObjectDiff(adapter: SemanticDigitalTwinAdapter, old_object: TrackedObject) .. py:attribute:: adapter .. py:attribute:: old_object .. py:attribute:: commands :value: [] .. py:method:: apply() .. py:method:: undo() .. py:function:: load_semantic_annotation_extensions() .. py:class:: SemanticDigitalTwinAdapter(cas, urdf_path: str = None, semantic_annotation_sources: list = None) Class to convert RoboKudo concepts to the SemanticWorld. .. py:attribute:: cas .. py:attribute:: tracked_objects :type: list[TrackedObject] :value: [] .. py:attribute:: comparators .. py:attribute:: semantic_color_to_rgb .. py:method:: compute_diffs(new_objects: list[Object]) -> list .. py:method:: compute_obj_diff(old_object: Object, new_object: Object) -> float .. py:method:: object_to_tracked_object(obj: Object) -> TrackedObject Creates a TrackedObject from a RoboKudo object. .. py:method:: class_to_semantic_annotation(class_name: str, **kwargs) -> semantic_digital_twin.world_description.world_entity.SemanticAnnotation :staticmethod: Convert a classification name to a SemanticWorld SemanticAnnotation. .. py:method:: apply_diffs(diffs: list) :staticmethod: