usd_object
USDObject
Bases: StatefulObject
USDObjects are instantiated from a USD file. They can be composed of one or more links and joints. They may or may not be passive.
Source code in omnigibson/objects/usd_object.py
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
|
usd_path
property
Returns:
Name | Type | Description |
---|---|---|
str | absolute path to this model's USD file. By default, this is the loaded usd path passed in as an argument |
__init__(name, usd_path, prim_path=None, category='object', class_id=None, uuid=None, scale=None, visible=True, fixed_base=False, visual_only=False, self_collisions=False, prim_type=PrimType.RIGID, load_config=None, abilities=None, include_default_states=True, **kwargs)
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name |
str
|
Name for the object. Names need to be unique per scene |
required |
usd_path |
str
|
global path to the USD file to load |
required |
prim_path |
None or str
|
global path in the stage to this object. If not specified, will automatically be
created at /World/ |
None
|
category |
str
|
Category for the object. Defaults to "object". |
'object'
|
class_id |
None or int
|
What class ID the object should be assigned in semantic segmentation rendering mode. If None, the ID will be inferred from this object's category. |
None
|
uuid |
None or int
|
Unique unsigned-integer identifier to assign to this object (max 8-numbers). If None is specified, then it will be auto-generated |
None
|
scale |
None or float or 3-array
|
if specified, sets either the uniform (float) or x,y,z (3-array) scale for this object. A single number corresponds to uniform scaling along the x,y,z axes, whereas a 3-array specifies per-axis scaling. |
None
|
visible |
bool
|
whether to render this object or not in the stage |
True
|
fixed_base |
bool
|
whether to fix the base of this object or not |
False
|
visual_only |
bool
|
Whether this object should be visual only (and not collide with any other objects) |
False
|
self_collisions |
bool
|
Whether to enable self collisions for this object |
False
|
prim_type |
PrimType
|
Which type of prim the object is, Valid options are: {PrimType.RIGID, PrimType.CLOTH} |
PrimType.RIGID
|
load_config |
None or dict
|
If specified, should contain keyword-mapped values that are relevant for loading this prim at runtime. |
None
|
abilities |
None or dict
|
If specified, manually adds specific object states to this object. It should be a dict in the form of {ability: {param: value}} containing object abilities and parameters to pass to the object state instance constructor. |
None
|
include_default_states |
bool
|
whether to include the default object states from @get_default_states |
True
|
kwargs |
dict
|
Additional keyword arguments that are used for other super() calls from subclasses, allowing for flexible compositions of various object subclasses (e.g.: Robot is USDObject + ControllableObject). Note that this base object does NOT pass kwargs down into the Prim-type super() classes, and we assume that kwargs are only shared between all SUBclasses (children), not SUPERclasses (parents). |
{}
|