agx-openplx 0.15.10__cp312-cp312-manylinux_2_39_x86_64.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. agx_openplx-0.15.10.dist-info/METADATA +67 -0
  2. agx_openplx-0.15.10.dist-info/RECORD +41 -0
  3. agx_openplx-0.15.10.dist-info/WHEEL +4 -0
  4. agx_openplx-0.15.10.dist-info/entry_points.txt +8 -0
  5. openplx/Core.py +7781 -0
  6. openplx/DriveTrain.py +8972 -0
  7. openplx/Math.py +5372 -0
  8. openplx/Physics.py +39861 -0
  9. openplx/Physics1D.py +5534 -0
  10. openplx/Physics3D.py +39782 -0
  11. openplx/Robotics.py +14922 -0
  12. openplx/Simulation.py +1056 -0
  13. openplx/Terrain.py +3891 -0
  14. openplx/Urdf.py +654 -0
  15. openplx/Vehicles.py +8793 -0
  16. openplx/Visuals.py +3901 -0
  17. openplx/_AgxOpenPlxPyApi.cpython-312-x86_64-linux-gnu.so +0 -0
  18. openplx/_CorePythonSwig.cpython-312-x86_64-linux-gnu.so +0 -0
  19. openplx/_DriveTrainSwig.cpython-312-x86_64-linux-gnu.so +0 -0
  20. openplx/_MathSwig.cpython-312-x86_64-linux-gnu.so +0 -0
  21. openplx/_Physics1DSwig.cpython-312-x86_64-linux-gnu.so +0 -0
  22. openplx/_Physics3DSwig.cpython-312-x86_64-linux-gnu.so +0 -0
  23. openplx/_PhysicsSwig.cpython-312-x86_64-linux-gnu.so +0 -0
  24. openplx/_RoboticsSwig.cpython-312-x86_64-linux-gnu.so +0 -0
  25. openplx/_SimulationSwig.cpython-312-x86_64-linux-gnu.so +0 -0
  26. openplx/_TerrainSwig.cpython-312-x86_64-linux-gnu.so +0 -0
  27. openplx/_UrdfSwig.cpython-312-x86_64-linux-gnu.so +0 -0
  28. openplx/_VehiclesSwig.cpython-312-x86_64-linux-gnu.so +0 -0
  29. openplx/_VisualsSwig.cpython-312-x86_64-linux-gnu.so +0 -0
  30. openplx/__init__.py +55 -0
  31. openplx/agxtoopenplx.py +55 -0
  32. openplx/anytoopenplx.py +44 -0
  33. openplx/api.py +1353 -0
  34. openplx/migrate.py +190 -0
  35. openplx/migration_hint.py +14 -0
  36. openplx/migrations.py +703 -0
  37. openplx/openplx_application.py +138 -0
  38. openplx/openplx_serialize.py +35 -0
  39. openplx/openplx_validate.py +57 -0
  40. openplx/openplx_view.py +14 -0
  41. openplx/versionaction.py +11 -0
openplx/api.py ADDED
@@ -0,0 +1,1353 @@
1
+ # This file was automatically generated by SWIG (http://www.swig.org).
2
+ # Version 4.0.2
3
+ #
4
+ # Do not make changes to this file unless you know what you are doing--modify
5
+ # the SWIG interface file instead.
6
+
7
+ from sys import version_info as _swig_python_version_info
8
+ if _swig_python_version_info < (2, 7, 0):
9
+ raise RuntimeError("Python 2.7 or later required")
10
+
11
+
12
+
13
+ def _add_paths():
14
+ import os
15
+ result = []
16
+
17
+ if hasattr(os, 'add_dll_directory'):
18
+ for path in os.environ.get('PATH', '').split(';'):
19
+ if os.path.isabs(path) and os.path.exists(path):
20
+ result.append(os.add_dll_directory(path))
21
+
22
+ return result
23
+
24
+ _extra_paths = _add_paths()
25
+
26
+ if __package__ or '.' in __name__:
27
+ from . import _AgxOpenPlxPyApi
28
+ else:
29
+ import _AgxOpenPlxPyApi
30
+
31
+ for path in _extra_paths:
32
+ path.close()
33
+
34
+ del _extra_paths
35
+ del _add_paths
36
+
37
+
38
+
39
+ try:
40
+ import builtins as __builtin__
41
+ except ImportError:
42
+ import __builtin__
43
+
44
+ def _swig_repr(self):
45
+ try:
46
+ strthis = "proxy of " + self.this.__repr__()
47
+ except __builtin__.Exception:
48
+ strthis = ""
49
+ return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
50
+
51
+
52
+ def _swig_setattr_nondynamic_instance_variable(set):
53
+ def set_instance_attr(self, name, value):
54
+ if name == "thisown":
55
+ self.this.own(value)
56
+ elif name == "this":
57
+ set(self, name, value)
58
+ elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
59
+ set(self, name, value)
60
+ else:
61
+ raise AttributeError("You cannot add instance attributes to %s" % self)
62
+ return set_instance_attr
63
+
64
+
65
+ def _swig_setattr_nondynamic_class_variable(set):
66
+ def set_class_attr(cls, name, value):
67
+ if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
68
+ set(cls, name, value)
69
+ else:
70
+ raise AttributeError("You cannot add class attributes to %s" % cls)
71
+ return set_class_attr
72
+
73
+
74
+ def _swig_add_metaclass(metaclass):
75
+ """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
76
+ def wrapper(cls):
77
+ return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
78
+ return wrapper
79
+
80
+
81
+ class _SwigNonDynamicMeta(type):
82
+ """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
83
+ __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)
84
+
85
+
86
+ import weakref
87
+
88
+ SHARED_PTR_DISOWN = _AgxOpenPlxPyApi.SHARED_PTR_DISOWN
89
+ class SwigPyIterator(object):
90
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
91
+
92
+ def __init__(self, *args, **kwargs):
93
+ raise AttributeError("No constructor defined - class is abstract")
94
+ __repr__ = _swig_repr
95
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_SwigPyIterator
96
+
97
+ def value(self):
98
+ return _AgxOpenPlxPyApi.SwigPyIterator_value(self)
99
+
100
+ def incr(self, n=1):
101
+ return _AgxOpenPlxPyApi.SwigPyIterator_incr(self, n)
102
+
103
+ def decr(self, n=1):
104
+ return _AgxOpenPlxPyApi.SwigPyIterator_decr(self, n)
105
+
106
+ def distance(self, x):
107
+ return _AgxOpenPlxPyApi.SwigPyIterator_distance(self, x)
108
+
109
+ def equal(self, x):
110
+ return _AgxOpenPlxPyApi.SwigPyIterator_equal(self, x)
111
+
112
+ def copy(self):
113
+ return _AgxOpenPlxPyApi.SwigPyIterator_copy(self)
114
+
115
+ def next(self):
116
+ return _AgxOpenPlxPyApi.SwigPyIterator_next(self)
117
+
118
+ def __next__(self):
119
+ return _AgxOpenPlxPyApi.SwigPyIterator___next__(self)
120
+
121
+ def previous(self):
122
+ return _AgxOpenPlxPyApi.SwigPyIterator_previous(self)
123
+
124
+ def advance(self, n):
125
+ return _AgxOpenPlxPyApi.SwigPyIterator_advance(self, n)
126
+
127
+ def __eq__(self, x):
128
+ return _AgxOpenPlxPyApi.SwigPyIterator___eq__(self, x)
129
+
130
+ def __ne__(self, x):
131
+ return _AgxOpenPlxPyApi.SwigPyIterator___ne__(self, x)
132
+
133
+ def __iadd__(self, n):
134
+ return _AgxOpenPlxPyApi.SwigPyIterator___iadd__(self, n)
135
+
136
+ def __isub__(self, n):
137
+ return _AgxOpenPlxPyApi.SwigPyIterator___isub__(self, n)
138
+
139
+ def __add__(self, n):
140
+ return _AgxOpenPlxPyApi.SwigPyIterator___add__(self, n)
141
+
142
+ def __sub__(self, *args):
143
+ return _AgxOpenPlxPyApi.SwigPyIterator___sub__(self, *args)
144
+ def __iter__(self):
145
+ return self
146
+
147
+ # Register SwigPyIterator in _AgxOpenPlxPyApi:
148
+ _AgxOpenPlxPyApi.SwigPyIterator_swigregister(SwigPyIterator)
149
+
150
+ import openplx.Core
151
+ import openplx.Math
152
+ import openplx.Physics
153
+ import openplx.Physics1D
154
+ import openplx.Physics3D
155
+ import openplx.DriveTrain
156
+ import openplx.Robotics
157
+ import openplx.Simulation
158
+ import agxSDK
159
+ import agx
160
+ import agxData
161
+ import agxStream
162
+ import agxCollide
163
+ import agxRender
164
+ class OpenPlxToAgxMapper(object):
165
+ r"""Proxy of C++ agxopenplx::OpenPlxToAgxMapper class."""
166
+
167
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
168
+ __repr__ = _swig_repr
169
+
170
+ def __init__(self, *args):
171
+ r"""
172
+ __init__(OpenPlxToAgxMapper self, Simulation simulation, std::string const & source_id, std::shared_ptr< agxopenplx::AgxCache > agx_cache=0, std::shared_ptr< agxopenplx::OpenPlxMaterialManager > material_manager=0, std::shared_ptr< openplx::ErrorReporter > error_reporter=std::make_shared< openplx::ErrorReporter >()) -> OpenPlxToAgxMapper
173
+
174
+ Parameters
175
+ ----------
176
+ simulation: agxSDK::Simulation *
177
+ source_id: std::string const &
178
+ agx_cache: std::shared_ptr< agxopenplx::AgxCache >
179
+ material_manager: std::shared_ptr< agxopenplx::OpenPlxMaterialManager >
180
+ error_reporter: std::shared_ptr< openplx::ErrorReporter >
181
+
182
+ """
183
+ _AgxOpenPlxPyApi.OpenPlxToAgxMapper_swiginit(self, _AgxOpenPlxPyApi.new_OpenPlxToAgxMapper(*args))
184
+
185
+ def mapObject(self, object):
186
+ r"""
187
+ mapObject(OpenPlxToAgxMapper self, std::shared_ptr< openplx::Core::Object > object) -> AssemblyRef
188
+
189
+ Parameters
190
+ ----------
191
+ object: std::shared_ptr< openplx::Core::Object >
192
+
193
+ """
194
+ return _AgxOpenPlxPyApi.OpenPlxToAgxMapper_mapObject(self, object)
195
+
196
+ def getErrorReporter(self):
197
+ r"""getErrorReporter(OpenPlxToAgxMapper self) -> std::shared_ptr< openplx::ErrorReporter >"""
198
+ return _AgxOpenPlxPyApi.OpenPlxToAgxMapper_getErrorReporter(self)
199
+
200
+ def getPowerLine(self):
201
+ r"""getPowerLine(OpenPlxToAgxMapper self) -> agxPowerLine::PowerLineRef"""
202
+ return _AgxOpenPlxPyApi.OpenPlxToAgxMapper_getPowerLine(self)
203
+
204
+ def getSimulation(self):
205
+ r"""getSimulation(OpenPlxToAgxMapper self) -> Simulation"""
206
+ return _AgxOpenPlxPyApi.OpenPlxToAgxMapper_getSimulation(self)
207
+
208
+ def getAgxCache(self):
209
+ r"""getAgxCache(OpenPlxToAgxMapper self) -> std::shared_ptr< agxopenplx::AgxCache >"""
210
+ return _AgxOpenPlxPyApi.OpenPlxToAgxMapper_getAgxCache(self)
211
+
212
+ def lookupAgxRigidBody(self, rigid_body):
213
+ r"""
214
+ lookupAgxRigidBody(OpenPlxToAgxMapper self, std::shared_ptr< openplx::Physics3D::Bodies::RigidBody > const & rigid_body) -> RigidBodyRef
215
+
216
+ Parameters
217
+ ----------
218
+ rigid_body: std::shared_ptr< openplx::Physics3D::Bodies::RigidBody > const &
219
+
220
+ """
221
+ return _AgxOpenPlxPyApi.OpenPlxToAgxMapper_lookupAgxRigidBody(self, rigid_body)
222
+
223
+ def getAgxTerrainFor(self, b_terrain):
224
+ r"""
225
+ getAgxTerrainFor(OpenPlxToAgxMapper self, std::shared_ptr< openplx::Terrain::Terrain > const & b_terrain) -> agxTerrain::TerrainRef
226
+
227
+ Parameters
228
+ ----------
229
+ b_terrain: std::shared_ptr< openplx::Terrain::Terrain > const &
230
+
231
+ """
232
+ return _AgxOpenPlxPyApi.OpenPlxToAgxMapper_getAgxTerrainFor(self, b_terrain)
233
+
234
+ def getEventListeners(self):
235
+ r"""getEventListeners(OpenPlxToAgxMapper self) -> agx::Vector< agxSDK::EventListenerRef > const &"""
236
+ return _AgxOpenPlxPyApi.OpenPlxToAgxMapper_getEventListeners(self)
237
+
238
+ def getTracksMap(self):
239
+ r"""getTracksMap(OpenPlxToAgxMapper self) -> std::unordered_map< std::shared_ptr< openplx::Vehicles::Tracks::System >,agxVehicle::TrackRef > const &"""
240
+ return _AgxOpenPlxPyApi.OpenPlxToAgxMapper_getTracksMap(self)
241
+
242
+ @staticmethod
243
+ def mapGearBoxGear(gear_box, agx_gear_box, gear):
244
+ r"""
245
+ mapGearBoxGear(std::shared_ptr< openplx::DriveTrain::GearBox > const & gear_box, agxDriveTrain::GearBoxRef const & agx_gear_box, int gear) -> int
246
+
247
+ Parameters
248
+ ----------
249
+ gear_box: std::shared_ptr< openplx::DriveTrain::GearBox > const &
250
+ agx_gear_box: agxDriveTrain::GearBoxRef const &
251
+ gear: int
252
+
253
+ """
254
+ return _AgxOpenPlxPyApi.OpenPlxToAgxMapper_mapGearBoxGear(gear_box, agx_gear_box, gear)
255
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_OpenPlxToAgxMapper
256
+
257
+ # Register OpenPlxToAgxMapper in _AgxOpenPlxPyApi:
258
+ _AgxOpenPlxPyApi.OpenPlxToAgxMapper_swigregister(OpenPlxToAgxMapper)
259
+
260
+ def OpenPlxToAgxMapper_mapGearBoxGear(gear_box, agx_gear_box, gear):
261
+ r"""
262
+ OpenPlxToAgxMapper_mapGearBoxGear(std::shared_ptr< openplx::DriveTrain::GearBox > const & gear_box, agxDriveTrain::GearBoxRef const & agx_gear_box, int gear) -> int
263
+
264
+ Parameters
265
+ ----------
266
+ gear_box: std::shared_ptr< openplx::DriveTrain::GearBox > const &
267
+ agx_gear_box: agxDriveTrain::GearBoxRef const &
268
+ gear: int
269
+
270
+ """
271
+ return _AgxOpenPlxPyApi.OpenPlxToAgxMapper_mapGearBoxGear(gear_box, agx_gear_box, gear)
272
+
273
+ AgxToOpenPlxTrimeshMode_OBJ_EXPORT = _AgxOpenPlxPyApi.AgxToOpenPlxTrimeshMode_OBJ_EXPORT
274
+
275
+ AgxToOpenPlxTrimeshMode_INLINE = _AgxOpenPlxPyApi.AgxToOpenPlxTrimeshMode_INLINE
276
+
277
+ AgxToOpenPlxTrimeshMode_CACHED = _AgxOpenPlxPyApi.AgxToOpenPlxTrimeshMode_CACHED
278
+
279
+ AgxToOpenPlxMaterialNamingRule_OPENPLX_NAME = _AgxOpenPlxPyApi.AgxToOpenPlxMaterialNamingRule_OPENPLX_NAME
280
+
281
+ AgxToOpenPlxMaterialNamingRule_AGX_NAME = _AgxOpenPlxPyApi.AgxToOpenPlxMaterialNamingRule_AGX_NAME
282
+
283
+ AgxToOpenPlxMaterialNamingRule_AGX_UUID = _AgxOpenPlxPyApi.AgxToOpenPlxMaterialNamingRule_AGX_UUID
284
+
285
+ class EnsureUniqueId(object):
286
+ r"""Proxy of C++ agxopenplx::EnsureUniqueId class."""
287
+
288
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
289
+ __repr__ = _swig_repr
290
+
291
+ def ensureUniqueId(self, name, uuid, used_names):
292
+ r"""
293
+ ensureUniqueId(EnsureUniqueId self, std::string const & name, Uuid uuid, std::unordered_set< std::string > & used_names) -> std::string
294
+
295
+ Parameters
296
+ ----------
297
+ name: std::string const &
298
+ uuid: agx::Uuid const &
299
+ used_names: std::unordered_set< std::string > &
300
+
301
+ """
302
+ return _AgxOpenPlxPyApi.EnsureUniqueId_ensureUniqueId(self, name, uuid, used_names)
303
+
304
+ def lookupId(self, x_uuid):
305
+ r"""
306
+ lookupId(EnsureUniqueId self, Uuid x_uuid) -> std::string
307
+
308
+ Parameters
309
+ ----------
310
+ x_uuid: agx::Uuid const &
311
+
312
+ """
313
+ return _AgxOpenPlxPyApi.EnsureUniqueId_lookupId(self, x_uuid)
314
+
315
+ def clear(self):
316
+ r"""clear(EnsureUniqueId self)"""
317
+ return _AgxOpenPlxPyApi.EnsureUniqueId_clear(self)
318
+
319
+ def __init__(self):
320
+ r"""__init__(EnsureUniqueId self) -> EnsureUniqueId"""
321
+ _AgxOpenPlxPyApi.EnsureUniqueId_swiginit(self, _AgxOpenPlxPyApi.new_EnsureUniqueId())
322
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_EnsureUniqueId
323
+
324
+ # Register EnsureUniqueId in _AgxOpenPlxPyApi:
325
+ _AgxOpenPlxPyApi.EnsureUniqueId_swigregister(EnsureUniqueId)
326
+
327
+ class AgxToOpenPlxMapper(object):
328
+ r"""Proxy of C++ agxopenplx::AgxToOpenPlxMapper class."""
329
+
330
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
331
+ __repr__ = _swig_repr
332
+
333
+ def __init__(self, *args):
334
+ r"""
335
+ __init__(AgxToOpenPlxMapper self, Simulation simulation, agxopenplx::AgxToOpenPlxTrimeshMode trimesh_mode, uint32_t precision=6, bool discard_rigid_body_positions=False, bool regenerate_shape_uuids=False, agxopenplx::AgxToOpenPlxMaterialNamingRule material_naming_rule=AGX_NAME) -> AgxToOpenPlxMapper
336
+
337
+ Parameters
338
+ ----------
339
+ simulation: agxSDK::Simulation *
340
+ trimesh_mode: enum agxopenplx::AgxToOpenPlxTrimeshMode
341
+ precision: uint32_t
342
+ discard_rigid_body_positions: bool
343
+ regenerate_shape_uuids: bool
344
+ material_naming_rule: enum agxopenplx::AgxToOpenPlxMaterialNamingRule
345
+
346
+ __init__(AgxToOpenPlxMapper self, std::string const & export_folder, bool obj_relative_path, uint32_t precision=6, bool discard_rigid_body_positions=False, bool regenerate_shape_uuids=False) -> AgxToOpenPlxMapper
347
+
348
+ Parameters
349
+ ----------
350
+ export_folder: std::string const &
351
+ obj_relative_path: bool
352
+ precision: uint32_t
353
+ discard_rigid_body_positions: bool
354
+ regenerate_shape_uuids: bool
355
+
356
+ """
357
+ _AgxOpenPlxPyApi.AgxToOpenPlxMapper_swiginit(self, _AgxOpenPlxPyApi.new_AgxToOpenPlxMapper(*args))
358
+
359
+ def nameOrUuid(self, name, uuid):
360
+ r"""
361
+ nameOrUuid(AgxToOpenPlxMapper self, agx::Name const & name, Uuid uuid) -> std::string
362
+
363
+ Parameters
364
+ ----------
365
+ name: agx::Name const &
366
+ uuid: agx::Uuid const &
367
+
368
+ """
369
+ return _AgxOpenPlxPyApi.AgxToOpenPlxMapper_nameOrUuid(self, name, uuid)
370
+
371
+ def nameWithIndexOrUuid(self, name, index, uuid):
372
+ r"""
373
+ nameWithIndexOrUuid(AgxToOpenPlxMapper self, agx::Name const & name, size_t index, Uuid uuid) -> std::string
374
+
375
+ Parameters
376
+ ----------
377
+ name: agx::Name const &
378
+ index: size_t
379
+ uuid: agx::Uuid const &
380
+
381
+ """
382
+ return _AgxOpenPlxPyApi.AgxToOpenPlxMapper_nameWithIndexOrUuid(self, name, index, uuid)
383
+
384
+ def assemblyToDocument(self, assembly):
385
+ r"""
386
+ assemblyToDocument(AgxToOpenPlxMapper self, AssemblyRef assembly) -> openplx::DocPtr
387
+
388
+ Parameters
389
+ ----------
390
+ assembly: agxSDK::AssemblyRef const &
391
+
392
+ """
393
+ return _AgxOpenPlxPyApi.AgxToOpenPlxMapper_assemblyToDocument(self, assembly)
394
+
395
+ def assemblyToOpenPlx(self, assembly):
396
+ r"""
397
+ assemblyToOpenPlx(AgxToOpenPlxMapper self, AssemblyRef assembly) -> std::string
398
+
399
+ Parameters
400
+ ----------
401
+ assembly: agxSDK::AssemblyRef const &
402
+
403
+ """
404
+ return _AgxOpenPlxPyApi.AgxToOpenPlxMapper_assemblyToOpenPlx(self, assembly)
405
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_AgxToOpenPlxMapper
406
+
407
+ # Register AgxToOpenPlxMapper in _AgxOpenPlxPyApi:
408
+ _AgxOpenPlxPyApi.AgxToOpenPlxMapper_swigregister(AgxToOpenPlxMapper)
409
+
410
+ class InputSignalQueue(object):
411
+ r"""Proxy of C++ agxopenplx::InputSignalQueue class."""
412
+
413
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
414
+
415
+ def __init__(self, *args, **kwargs):
416
+ raise AttributeError("No constructor defined")
417
+ __repr__ = _swig_repr
418
+
419
+ @staticmethod
420
+ def create():
421
+ r"""create() -> std::shared_ptr< agxopenplx::InputSignalQueue >"""
422
+ return _AgxOpenPlxPyApi.InputSignalQueue_create()
423
+
424
+ def send(self, signal):
425
+ r"""
426
+ send(InputSignalQueue self, agxopenplx::InputSignalPtr signal)
427
+
428
+ Parameters
429
+ ----------
430
+ signal: agxopenplx::InputSignalPtr
431
+
432
+ """
433
+ return _AgxOpenPlxPyApi.InputSignalQueue_send(self, signal)
434
+
435
+ def getSignals(self):
436
+ r"""getSignals(InputSignalQueue self) -> Physics_Signals_InputSignal_Vector"""
437
+ return _AgxOpenPlxPyApi.InputSignalQueue_getSignals(self)
438
+
439
+ def popSignals(self):
440
+ r"""popSignals(InputSignalQueue self) -> Physics_Signals_InputSignal_Vector"""
441
+ return _AgxOpenPlxPyApi.InputSignalQueue_popSignals(self)
442
+
443
+ def clear(self):
444
+ r"""clear(InputSignalQueue self)"""
445
+ return _AgxOpenPlxPyApi.InputSignalQueue_clear(self)
446
+
447
+ def size(self):
448
+ r"""size(InputSignalQueue self) -> size_t"""
449
+ return _AgxOpenPlxPyApi.InputSignalQueue_size(self)
450
+
451
+ def empty(self):
452
+ r"""empty(InputSignalQueue self) -> bool"""
453
+ return _AgxOpenPlxPyApi.InputSignalQueue_empty(self)
454
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_InputSignalQueue
455
+
456
+ # Register InputSignalQueue in _AgxOpenPlxPyApi:
457
+ _AgxOpenPlxPyApi.InputSignalQueue_swigregister(InputSignalQueue)
458
+
459
+ def InputSignalQueue_create():
460
+ r"""InputSignalQueue_create() -> std::shared_ptr< agxopenplx::InputSignalQueue >"""
461
+ return _AgxOpenPlxPyApi.InputSignalQueue_create()
462
+
463
+ class OutputSignalQueue(object):
464
+ r"""Proxy of C++ agxopenplx::OutputSignalQueue class."""
465
+
466
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
467
+
468
+ def __init__(self, *args, **kwargs):
469
+ raise AttributeError("No constructor defined")
470
+ __repr__ = _swig_repr
471
+
472
+ @staticmethod
473
+ def create():
474
+ r"""create() -> std::shared_ptr< agxopenplx::OutputSignalQueue >"""
475
+ return _AgxOpenPlxPyApi.OutputSignalQueue_create()
476
+
477
+ def send(self, signal):
478
+ r"""
479
+ send(OutputSignalQueue self, agxopenplx::OutputSignalPtr signal)
480
+
481
+ Parameters
482
+ ----------
483
+ signal: agxopenplx::OutputSignalPtr
484
+
485
+ """
486
+ return _AgxOpenPlxPyApi.OutputSignalQueue_send(self, signal)
487
+
488
+ def getSignals(self):
489
+ r"""getSignals(OutputSignalQueue self) -> Physics_Signals_OutputSignal_Vector"""
490
+ return _AgxOpenPlxPyApi.OutputSignalQueue_getSignals(self)
491
+
492
+ def popSignals(self):
493
+ r"""popSignals(OutputSignalQueue self) -> Physics_Signals_OutputSignal_Vector"""
494
+ return _AgxOpenPlxPyApi.OutputSignalQueue_popSignals(self)
495
+
496
+ def clear(self):
497
+ r"""clear(OutputSignalQueue self)"""
498
+ return _AgxOpenPlxPyApi.OutputSignalQueue_clear(self)
499
+
500
+ def size(self):
501
+ r"""size(OutputSignalQueue self) -> size_t"""
502
+ return _AgxOpenPlxPyApi.OutputSignalQueue_size(self)
503
+
504
+ def empty(self):
505
+ r"""empty(OutputSignalQueue self) -> bool"""
506
+ return _AgxOpenPlxPyApi.OutputSignalQueue_empty(self)
507
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_OutputSignalQueue
508
+
509
+ # Register OutputSignalQueue in _AgxOpenPlxPyApi:
510
+ _AgxOpenPlxPyApi.OutputSignalQueue_swigregister(OutputSignalQueue)
511
+
512
+ def OutputSignalQueue_create():
513
+ r"""OutputSignalQueue_create() -> std::shared_ptr< agxopenplx::OutputSignalQueue >"""
514
+ return _AgxOpenPlxPyApi.OutputSignalQueue_create()
515
+
516
+ class InputSignalListener(agxSDK.StepEventListener):
517
+ r"""Proxy of C++ agxopenplx::InputSignalListener class."""
518
+
519
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
520
+ __repr__ = _swig_repr
521
+
522
+ def __init__(self, assembly, input_queue):
523
+ r"""
524
+ __init__(InputSignalListener self, Assembly assembly, std::shared_ptr< agxopenplx::InputSignalQueue > input_queue) -> InputSignalListener
525
+
526
+ Parameters
527
+ ----------
528
+ assembly: agxSDK::Assembly *
529
+ input_queue: std::shared_ptr< agxopenplx::InputSignalQueue >
530
+
531
+ """
532
+
533
+ if str(type(assembly)) == "<class 'agxSDK.AssemblyRef'>":
534
+ assembly = assembly.get()
535
+
536
+
537
+ _AgxOpenPlxPyApi.InputSignalListener_swiginit(self, _AgxOpenPlxPyApi.new_InputSignalListener(assembly, input_queue))
538
+
539
+ def preCollide(self, time):
540
+ r"""
541
+ preCollide(InputSignalListener self, agx::TimeStamp const & time)
542
+
543
+ Parameters
544
+ ----------
545
+ time: agx::TimeStamp const &
546
+
547
+ """
548
+ return _AgxOpenPlxPyApi.InputSignalListener_preCollide(self, time)
549
+ RECOMMENDED_PRIO = _AgxOpenPlxPyApi.InputSignalListener_RECOMMENDED_PRIO
550
+
551
+ SEND_SIGNAL_PRIO = _AgxOpenPlxPyApi.InputSignalListener_SEND_SIGNAL_PRIO
552
+
553
+
554
+ def addNotification(self):
555
+ _AgxOpenPlxPyApi.InputSignalListener_addNotification
556
+ super().addNotification()
557
+
558
+
559
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_InputSignalListener
560
+
561
+ # Register InputSignalListener in _AgxOpenPlxPyApi:
562
+ _AgxOpenPlxPyApi.InputSignalListener_swigregister(InputSignalListener)
563
+
564
+ class OutputSignalListener(agxSDK.StepEventListener):
565
+ r"""Proxy of C++ agxopenplx::OutputSignalListener class."""
566
+
567
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
568
+ __repr__ = _swig_repr
569
+
570
+ def __init__(self, assembly, openplx_scene, output_queue):
571
+ r"""
572
+ __init__(OutputSignalListener self, Assembly assembly, std::shared_ptr< openplx::Core::Object > const & openplx_scene, std::shared_ptr< agxopenplx::OutputSignalQueue > output_queue) -> OutputSignalListener
573
+
574
+ Parameters
575
+ ----------
576
+ assembly: agxSDK::Assembly *
577
+ openplx_scene: std::shared_ptr< openplx::Core::Object > const &
578
+ output_queue: std::shared_ptr< agxopenplx::OutputSignalQueue >
579
+
580
+ """
581
+
582
+ if str(type(assembly)) == "<class 'agxSDK.AssemblyRef'>":
583
+ assembly = assembly.get()
584
+
585
+
586
+ _AgxOpenPlxPyApi.OutputSignalListener_swiginit(self, _AgxOpenPlxPyApi.new_OutputSignalListener(assembly, openplx_scene, output_queue))
587
+
588
+ def syncOutputSignals(self):
589
+ r"""syncOutputSignals(OutputSignalListener self)"""
590
+ return _AgxOpenPlxPyApi.OutputSignalListener_syncOutputSignals(self)
591
+
592
+ def post(self, time):
593
+ r"""
594
+ post(OutputSignalListener self, agx::TimeStamp const & time)
595
+
596
+ Parameters
597
+ ----------
598
+ time: agx::TimeStamp const &
599
+
600
+ """
601
+ return _AgxOpenPlxPyApi.OutputSignalListener_post(self, time)
602
+ RECOMMENDED_PRIO = _AgxOpenPlxPyApi.OutputSignalListener_RECOMMENDED_PRIO
603
+
604
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_OutputSignalListener
605
+
606
+ # Register OutputSignalListener in _AgxOpenPlxPyApi:
607
+ _AgxOpenPlxPyApi.OutputSignalListener_swigregister(OutputSignalListener)
608
+
609
+ class AssemblyOpenPlxObjectPair(object):
610
+ r"""Proxy of C++ std::pair< std::shared_ptr< openplx::Core::Object >,agxSDK::AssemblyRef > class."""
611
+
612
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
613
+ __repr__ = _swig_repr
614
+
615
+ def __init__(self, *args):
616
+ r"""
617
+ __init__(AssemblyOpenPlxObjectPair self) -> AssemblyOpenPlxObjectPair
618
+ __init__(AssemblyOpenPlxObjectPair self, std::shared_ptr< openplx::Core::Object > first, AssemblyRef second) -> AssemblyOpenPlxObjectPair
619
+
620
+ Parameters
621
+ ----------
622
+ first: std::shared_ptr< openplx::Core::Object >
623
+ second: agx::ref_ptr< agxSDK::Assembly >
624
+
625
+ __init__(AssemblyOpenPlxObjectPair self, AssemblyOpenPlxObjectPair other) -> AssemblyOpenPlxObjectPair
626
+
627
+ Parameters
628
+ ----------
629
+ other: std::pair< std::shared_ptr< openplx::Core::Object >,agxSDK::AssemblyRef > const &
630
+
631
+ """
632
+ _AgxOpenPlxPyApi.AssemblyOpenPlxObjectPair_swiginit(self, _AgxOpenPlxPyApi.new_AssemblyOpenPlxObjectPair(*args))
633
+ first = property(_AgxOpenPlxPyApi.AssemblyOpenPlxObjectPair_first_get, _AgxOpenPlxPyApi.AssemblyOpenPlxObjectPair_first_set, doc=r"""first : std::shared_ptr<(openplx::Core::Object)>""")
634
+ second = property(_AgxOpenPlxPyApi.AssemblyOpenPlxObjectPair_second_get, _AgxOpenPlxPyApi.AssemblyOpenPlxObjectPair_second_set, doc=r"""second : agx::ref_ptr<(agxSDK::Assembly)>""")
635
+ def __len__(self):
636
+ return 2
637
+ def __repr__(self):
638
+ return str((self.first, self.second))
639
+ def __getitem__(self, index):
640
+ if not (index % 2):
641
+ return self.first
642
+ else:
643
+ return self.second
644
+ def __setitem__(self, index, val):
645
+ if not (index % 2):
646
+ self.first = val
647
+ else:
648
+ self.second = val
649
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_AssemblyOpenPlxObjectPair
650
+
651
+ # Register AssemblyOpenPlxObjectPair in _AgxOpenPlxPyApi:
652
+ _AgxOpenPlxPyApi.AssemblyOpenPlxObjectPair_swigregister(AssemblyOpenPlxObjectPair)
653
+
654
+ class ClickInputListener(object):
655
+ r"""Proxy of C++ agxopenplx::ClickInputListener class."""
656
+
657
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
658
+ __repr__ = _swig_repr
659
+
660
+ def __init__(self, server, openplx_scene, input_queue, time_step, autostepping_enabled):
661
+ r"""
662
+ __init__(ClickInputListener self, std::shared_ptr< click::Server > & server, std::shared_ptr< openplx::Core::Object > const & openplx_scene, std::shared_ptr< agxopenplx::InputSignalQueue > input_queue, double time_step, bool autostepping_enabled) -> ClickInputListener
663
+
664
+ Parameters
665
+ ----------
666
+ server: std::shared_ptr< click::Server > &
667
+ openplx_scene: std::shared_ptr< openplx::Core::Object > const &
668
+ input_queue: std::shared_ptr< agxopenplx::InputSignalQueue >
669
+ time_step: double
670
+ autostepping_enabled: bool
671
+
672
+ """
673
+ _AgxOpenPlxPyApi.ClickInputListener_swiginit(self, _AgxOpenPlxPyApi.new_ClickInputListener(server, openplx_scene, input_queue, time_step, autostepping_enabled))
674
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_ClickInputListener
675
+
676
+ def preFrame(self, arg2):
677
+ r"""
678
+ preFrame(ClickInputListener self, agx::TimeStamp const & arg2) -> bool
679
+
680
+ Parameters
681
+ ----------
682
+ arg2: agx::TimeStamp const &
683
+
684
+ """
685
+ return _AgxOpenPlxPyApi.ClickInputListener_preFrame(self, arg2)
686
+
687
+ def set_autostepping_enabled(self, enabled):
688
+ r"""
689
+ set_autostepping_enabled(ClickInputListener self, bool enabled)
690
+
691
+ Parameters
692
+ ----------
693
+ enabled: bool
694
+
695
+ """
696
+ return _AgxOpenPlxPyApi.ClickInputListener_set_autostepping_enabled(self, enabled)
697
+
698
+ def is_autostepping_enabled(self):
699
+ r"""is_autostepping_enabled(ClickInputListener self) -> bool"""
700
+ return _AgxOpenPlxPyApi.ClickInputListener_is_autostepping_enabled(self)
701
+
702
+ def is_click_signal_available(self):
703
+ r"""is_click_signal_available(ClickInputListener self) -> bool"""
704
+ return _AgxOpenPlxPyApi.ClickInputListener_is_click_signal_available(self)
705
+
706
+ def setSensorRequestCallback(self, callback):
707
+ r"""
708
+ setSensorRequestCallback(ClickInputListener self, std::function< void (agx::TimeStamp const &) > callback)
709
+
710
+ Parameters
711
+ ----------
712
+ callback: std::function< void (agx::TimeStamp const &) >
713
+
714
+ """
715
+ return _AgxOpenPlxPyApi.ClickInputListener_setSensorRequestCallback(self, callback)
716
+
717
+ def updateScene(self, openplx_scene):
718
+ r"""
719
+ updateScene(ClickInputListener self, std::shared_ptr< openplx::Core::Object > const & openplx_scene)
720
+
721
+ Parameters
722
+ ----------
723
+ openplx_scene: std::shared_ptr< openplx::Core::Object > const &
724
+
725
+ """
726
+ return _AgxOpenPlxPyApi.ClickInputListener_updateScene(self, openplx_scene)
727
+
728
+ def autostepOffCallback(self):
729
+ r"""autostepOffCallback(ClickInputListener self)"""
730
+ return _AgxOpenPlxPyApi.ClickInputListener_autostepOffCallback(self)
731
+
732
+ def autostepOnCallback(self):
733
+ r"""autostepOnCallback(ClickInputListener self)"""
734
+ return _AgxOpenPlxPyApi.ClickInputListener_autostepOnCallback(self)
735
+
736
+ def stopApplicationCallback(self):
737
+ r"""stopApplicationCallback(ClickInputListener self)"""
738
+ return _AgxOpenPlxPyApi.ClickInputListener_stopApplicationCallback(self)
739
+
740
+ def resetCallback(self):
741
+ r"""resetCallback(ClickInputListener self)"""
742
+ return _AgxOpenPlxPyApi.ClickInputListener_resetCallback(self)
743
+
744
+ def getScene(self):
745
+ r"""getScene(ClickInputListener self) -> std::shared_ptr< openplx::Core::Object >"""
746
+ return _AgxOpenPlxPyApi.ClickInputListener_getScene(self)
747
+
748
+ # Register ClickInputListener in _AgxOpenPlxPyApi:
749
+ _AgxOpenPlxPyApi.ClickInputListener_swigregister(ClickInputListener)
750
+
751
+ class OsgClickInputListener(ClickInputListener):
752
+ r"""Proxy of C++ agxopenplx::OsgClickInputListener class."""
753
+
754
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
755
+ __repr__ = _swig_repr
756
+
757
+ def __init__(self, server, openplx_scene, input_queue, time_step, autostepping_enabled):
758
+ r"""
759
+ __init__(OsgClickInputListener self, std::shared_ptr< click::Server > & server, std::shared_ptr< openplx::Core::Object > const & openplx_scene, std::shared_ptr< agxopenplx::InputSignalQueue > input_queue, double time_step, bool autostepping_enabled) -> OsgClickInputListener
760
+
761
+ Parameters
762
+ ----------
763
+ server: std::shared_ptr< click::Server > &
764
+ openplx_scene: std::shared_ptr< openplx::Core::Object > const &
765
+ input_queue: std::shared_ptr< agxopenplx::InputSignalQueue >
766
+ time_step: double
767
+ autostepping_enabled: bool
768
+
769
+ """
770
+ _AgxOpenPlxPyApi.OsgClickInputListener_swiginit(self, _AgxOpenPlxPyApi.new_OsgClickInputListener(server, openplx_scene, input_queue, time_step, autostepping_enabled))
771
+
772
+ def preFrame(self, app):
773
+ r"""
774
+ preFrame(OsgClickInputListener self, agxOSG::ExampleApplication * app)
775
+
776
+ Parameters
777
+ ----------
778
+ app: agxOSG::ExampleApplication *
779
+
780
+ """
781
+ return _AgxOpenPlxPyApi.OsgClickInputListener_preFrame(self, app)
782
+
783
+ def autostepOffCallback(self):
784
+ r"""autostepOffCallback(OsgClickInputListener self)"""
785
+ return _AgxOpenPlxPyApi.OsgClickInputListener_autostepOffCallback(self)
786
+
787
+ def autostepOnCallback(self):
788
+ r"""autostepOnCallback(OsgClickInputListener self)"""
789
+ return _AgxOpenPlxPyApi.OsgClickInputListener_autostepOnCallback(self)
790
+
791
+ def stopApplicationCallback(self):
792
+ r"""stopApplicationCallback(OsgClickInputListener self)"""
793
+ return _AgxOpenPlxPyApi.OsgClickInputListener_stopApplicationCallback(self)
794
+
795
+ def resetCallback(self):
796
+ r"""resetCallback(OsgClickInputListener self)"""
797
+ return _AgxOpenPlxPyApi.OsgClickInputListener_resetCallback(self)
798
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_OsgClickInputListener
799
+
800
+ # Register OsgClickInputListener in _AgxOpenPlxPyApi:
801
+ _AgxOpenPlxPyApi.OsgClickInputListener_swigregister(OsgClickInputListener)
802
+
803
+ class ClickOutputListener(agxSDK.StepEventListener):
804
+ r"""Proxy of C++ agxopenplx::ClickOutputListener class."""
805
+
806
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
807
+ __repr__ = _swig_repr
808
+
809
+ def __init__(self, server, output_queue):
810
+ r"""
811
+ __init__(ClickOutputListener self, std::shared_ptr< click::Server > & server, std::shared_ptr< agxopenplx::OutputSignalQueue > output_queue) -> ClickOutputListener
812
+
813
+ Parameters
814
+ ----------
815
+ server: std::shared_ptr< click::Server > &
816
+ output_queue: std::shared_ptr< agxopenplx::OutputSignalQueue >
817
+
818
+ """
819
+ _AgxOpenPlxPyApi.ClickOutputListener_swiginit(self, _AgxOpenPlxPyApi.new_ClickOutputListener(server, output_queue))
820
+
821
+ def post(self, prev_step):
822
+ r"""
823
+ post(ClickOutputListener self, agx::TimeStamp const & prev_step)
824
+
825
+ Parameters
826
+ ----------
827
+ prev_step: agx::TimeStamp const &
828
+
829
+ """
830
+ return _AgxOpenPlxPyApi.ClickOutputListener_post(self, prev_step)
831
+
832
+ def last(self, simulated_time):
833
+ r"""
834
+ last(ClickOutputListener self, agx::TimeStamp const & simulated_time)
835
+
836
+ Parameters
837
+ ----------
838
+ simulated_time: agx::TimeStamp const &
839
+
840
+ """
841
+ return _AgxOpenPlxPyApi.ClickOutputListener_last(self, simulated_time)
842
+ RECOMMENDED_PRIO = _AgxOpenPlxPyApi.ClickOutputListener_RECOMMENDED_PRIO
843
+
844
+
845
+ def sendResetMessage(self):
846
+ r"""sendResetMessage(ClickOutputListener self)"""
847
+ return _AgxOpenPlxPyApi.ClickOutputListener_sendResetMessage(self)
848
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_ClickOutputListener
849
+
850
+ # Register ClickOutputListener in _AgxOpenPlxPyApi:
851
+ _AgxOpenPlxPyApi.ClickOutputListener_swigregister(ClickOutputListener)
852
+
853
+ class ClickKeyboardEventListener(agxSDK.GuiEventListener):
854
+ r"""Proxy of C++ agxopenplx::ClickKeyboardEventListener class."""
855
+
856
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
857
+ __repr__ = _swig_repr
858
+
859
+ def __init__(self, click_input_listener, app, click_adapter):
860
+ r"""
861
+ __init__(ClickKeyboardEventListener self, std::shared_ptr< agxopenplx::ClickInputListener > click_input_listener, agxOSG::ExampleApplication * app, OsgClickAdapter click_adapter) -> ClickKeyboardEventListener
862
+
863
+ Parameters
864
+ ----------
865
+ click_input_listener: std::shared_ptr< agxopenplx::ClickInputListener >
866
+ app: agxOSG::ExampleApplication *
867
+ click_adapter: agxopenplx::OsgClickAdapter *
868
+
869
+ """
870
+ _AgxOpenPlxPyApi.ClickKeyboardEventListener_swiginit(self, _AgxOpenPlxPyApi.new_ClickKeyboardEventListener(click_input_listener, app, click_adapter))
871
+
872
+ def keyboard(self, key, modkeyMask, x, y, keyDown):
873
+ r"""
874
+ keyboard(ClickKeyboardEventListener self, int key, unsigned int modkeyMask, float x, float y, bool keyDown) -> bool
875
+
876
+ Parameters
877
+ ----------
878
+ key: int
879
+ modkeyMask: unsigned int
880
+ x: float
881
+ y: float
882
+ keyDown: bool
883
+
884
+ """
885
+ return _AgxOpenPlxPyApi.ClickKeyboardEventListener_keyboard(self, key, modkeyMask, x, y, keyDown)
886
+ RECOMMENDED_PRIO = _AgxOpenPlxPyApi.ClickKeyboardEventListener_RECOMMENDED_PRIO
887
+
888
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_ClickKeyboardEventListener
889
+
890
+ # Register ClickKeyboardEventListener in _AgxOpenPlxPyApi:
891
+ _AgxOpenPlxPyApi.ClickKeyboardEventListener_swigregister(ClickKeyboardEventListener)
892
+
893
+ class OsgClickAdapter(object):
894
+ r"""Proxy of C++ agxopenplx::OsgClickAdapter class."""
895
+
896
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
897
+ __repr__ = _swig_repr
898
+
899
+ def sendResetMessage(self):
900
+ r"""sendResetMessage(OsgClickAdapter self)"""
901
+ return _AgxOpenPlxPyApi.OsgClickAdapter_sendResetMessage(self)
902
+
903
+ def willSendResetMessage(self):
904
+ r"""willSendResetMessage(OsgClickAdapter self) -> bool"""
905
+ return _AgxOpenPlxPyApi.OsgClickAdapter_willSendResetMessage(self)
906
+
907
+ def add_listeners(self, app, simulation, click_server_addr, openplx_scene, input_queue, output_queue, output_signal_listener):
908
+ r"""
909
+ add_listeners(OsgClickAdapter self, agxOSG::ExampleApplication * app, Simulation simulation, std::string const & click_server_addr, std::shared_ptr< openplx::Core::Object > const & openplx_scene, std::shared_ptr< agxopenplx::InputSignalQueue > input_queue, std::shared_ptr< agxopenplx::OutputSignalQueue > output_queue, OutputSignalListener output_signal_listener)
910
+
911
+ Parameters
912
+ ----------
913
+ app: agxOSG::ExampleApplication *
914
+ simulation: agxSDK::Simulation *
915
+ click_server_addr: std::string const &
916
+ openplx_scene: std::shared_ptr< openplx::Core::Object > const &
917
+ input_queue: std::shared_ptr< agxopenplx::InputSignalQueue >
918
+ output_queue: std::shared_ptr< agxopenplx::OutputSignalQueue >
919
+ output_signal_listener: agxopenplx::OutputSignalListener *
920
+
921
+ """
922
+ return _AgxOpenPlxPyApi.OsgClickAdapter_add_listeners(self, app, simulation, click_server_addr, openplx_scene, input_queue, output_queue, output_signal_listener)
923
+
924
+ def createClickInputListener(self, openplx_scene, input_queue, time_step, auto_stepping):
925
+ r"""
926
+ createClickInputListener(OsgClickAdapter self, std::shared_ptr< openplx::Core::Object > const & openplx_scene, std::shared_ptr< agxopenplx::InputSignalQueue > input_queue, double time_step, bool auto_stepping) -> std::shared_ptr< agxopenplx::ClickInputListener >
927
+
928
+ Parameters
929
+ ----------
930
+ openplx_scene: std::shared_ptr< openplx::Core::Object > const &
931
+ input_queue: std::shared_ptr< agxopenplx::InputSignalQueue >
932
+ time_step: double
933
+ auto_stepping: bool
934
+
935
+ """
936
+ return _AgxOpenPlxPyApi.OsgClickAdapter_createClickInputListener(self, openplx_scene, input_queue, time_step, auto_stepping)
937
+
938
+ def __init__(self):
939
+ r"""__init__(OsgClickAdapter self) -> OsgClickAdapter"""
940
+ _AgxOpenPlxPyApi.OsgClickAdapter_swiginit(self, _AgxOpenPlxPyApi.new_OsgClickAdapter())
941
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_OsgClickAdapter
942
+
943
+ # Register OsgClickAdapter in _AgxOpenPlxPyApi:
944
+ _AgxOpenPlxPyApi.OsgClickAdapter_swigregister(OsgClickAdapter)
945
+
946
+ class AgxCache(object):
947
+ r"""Proxy of C++ agxopenplx::AgxCache class."""
948
+
949
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
950
+ __repr__ = _swig_repr
951
+
952
+ def __init__(self):
953
+ r"""__init__(AgxCache self) -> AgxCache"""
954
+ _AgxOpenPlxPyApi.AgxCache_swiginit(self, _AgxOpenPlxPyApi.new_AgxCache())
955
+
956
+ def readCollisionShape(self, uuid):
957
+ r"""
958
+ readCollisionShape(AgxCache self, std::string const & uuid) -> std::optional< agxCollide::ShapeRef >
959
+
960
+ Parameters
961
+ ----------
962
+ uuid: std::string const &
963
+
964
+ """
965
+ return _AgxOpenPlxPyApi.AgxCache_readCollisionShape(self, uuid)
966
+
967
+ def readCollisionShapeAndTransform(self, uuid):
968
+ r"""
969
+ readCollisionShapeAndTransform(AgxCache self, std::string const & uuid) -> std::optional< std::pair< agxCollide::ShapeRef,agx::AffineMatrix4x4 > >
970
+
971
+ Parameters
972
+ ----------
973
+ uuid: std::string const &
974
+
975
+ """
976
+ return _AgxOpenPlxPyApi.AgxCache_readCollisionShapeAndTransform(self, uuid)
977
+
978
+ def writeCollisionShape(self, shape):
979
+ r"""
980
+ writeCollisionShape(AgxCache self, ShapeRef shape)
981
+
982
+ Parameters
983
+ ----------
984
+ shape: agxCollide::ShapeRef const &
985
+
986
+ """
987
+ return _AgxOpenPlxPyApi.AgxCache_writeCollisionShape(self, shape)
988
+
989
+ def cacheShapes(self, assembly):
990
+ r"""
991
+ cacheShapes(AgxCache self, AssemblyRef assembly)
992
+
993
+ Parameters
994
+ ----------
995
+ assembly: agxSDK::AssemblyRef const &
996
+
997
+ """
998
+ return _AgxOpenPlxPyApi.AgxCache_cacheShapes(self, assembly)
999
+
1000
+ def flagAsConsumed(self, uuid):
1001
+ r"""
1002
+ flagAsConsumed(AgxCache self, std::string const & uuid)
1003
+
1004
+ Parameters
1005
+ ----------
1006
+ uuid: std::string const &
1007
+
1008
+ """
1009
+ return _AgxOpenPlxPyApi.AgxCache_flagAsConsumed(self, uuid)
1010
+
1011
+ def isConsumed(self, uuid):
1012
+ r"""
1013
+ isConsumed(AgxCache self, std::string const & uuid) -> bool
1014
+
1015
+ Parameters
1016
+ ----------
1017
+ uuid: std::string const &
1018
+
1019
+ """
1020
+ return _AgxOpenPlxPyApi.AgxCache_isConsumed(self, uuid)
1021
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_AgxCache
1022
+
1023
+ # Register AgxCache in _AgxOpenPlxPyApi:
1024
+ _AgxOpenPlxPyApi.AgxCache_swigregister(AgxCache)
1025
+
1026
+ class OpenPlxMaterialManager(object):
1027
+ r"""Proxy of C++ agxopenplx::OpenPlxMaterialManager class."""
1028
+
1029
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1030
+ __repr__ = _swig_repr
1031
+
1032
+ def __init__(self):
1033
+ r"""__init__(OpenPlxMaterialManager self) -> OpenPlxMaterialManager"""
1034
+ _AgxOpenPlxPyApi.OpenPlxMaterialManager_swiginit(self, _AgxOpenPlxPyApi.new_OpenPlxMaterialManager())
1035
+
1036
+ def registerAndMergeScene(self, scene):
1037
+ r"""
1038
+ registerAndMergeScene(OpenPlxMaterialManager self, System scene) -> bool
1039
+
1040
+ Parameters
1041
+ ----------
1042
+ scene: openplx::Physics3D::System const &
1043
+
1044
+ """
1045
+ return _AgxOpenPlxPyApi.OpenPlxMaterialManager_registerAndMergeScene(self, scene)
1046
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_OpenPlxMaterialManager
1047
+
1048
+ # Register OpenPlxMaterialManager in _AgxOpenPlxPyApi:
1049
+ _AgxOpenPlxPyApi.OpenPlxMaterialManager_swigregister(OpenPlxMaterialManager)
1050
+
1051
+ class Result(object):
1052
+ r"""Proxy of C++ agxopenplx::Result class."""
1053
+
1054
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1055
+ __repr__ = _swig_repr
1056
+
1057
+ def __init__(self, assembly, scene, errors, to_agx_mapper):
1058
+ r"""
1059
+ __init__(Result self, Assembly assembly, std::shared_ptr< openplx::Core::Object > scene, ErrorVector errors, std::shared_ptr< agxopenplx::OpenPlxToAgxMapper > to_agx_mapper) -> Result
1060
+
1061
+ Parameters
1062
+ ----------
1063
+ assembly: agxSDK::Assembly *
1064
+ scene: std::shared_ptr< openplx::Core::Object >
1065
+ errors: openplx::Errors
1066
+ to_agx_mapper: std::shared_ptr< agxopenplx::OpenPlxToAgxMapper >
1067
+
1068
+ """
1069
+ _AgxOpenPlxPyApi.Result_swiginit(self, _AgxOpenPlxPyApi.new_Result(assembly, scene, errors, to_agx_mapper))
1070
+
1071
+ def assembly(self):
1072
+ r"""assembly(Result self) -> Assembly"""
1073
+ return _AgxOpenPlxPyApi.Result_assembly(self)
1074
+
1075
+ def scene(self):
1076
+ r"""scene(Result self) -> std::shared_ptr< openplx::Core::Object >"""
1077
+ return _AgxOpenPlxPyApi.Result_scene(self)
1078
+
1079
+ def errors(self):
1080
+ r"""errors(Result self) -> ErrorVector"""
1081
+ return _AgxOpenPlxPyApi.Result_errors(self)
1082
+
1083
+ def to_agx_mapper(self):
1084
+ r"""to_agx_mapper(Result self) -> std::shared_ptr< agxopenplx::OpenPlxToAgxMapper >"""
1085
+ return _AgxOpenPlxPyApi.Result_to_agx_mapper(self)
1086
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_Result
1087
+
1088
+ # Register Result in _AgxOpenPlxPyApi:
1089
+ _AgxOpenPlxPyApi.Result_swigregister(Result)
1090
+
1091
+ class OptParams(object):
1092
+ r"""Proxy of C++ agxopenplx::OptParams class."""
1093
+
1094
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1095
+ __repr__ = _swig_repr
1096
+
1097
+ def with_model_name(self, model_name):
1098
+ r"""
1099
+ with_model_name(OptParams self, std::string model_name) -> OptParams
1100
+
1101
+ Parameters
1102
+ ----------
1103
+ model_name: std::string
1104
+
1105
+ """
1106
+ return _AgxOpenPlxPyApi.OptParams_with_model_name(self, model_name)
1107
+
1108
+ def with_uuidv5(self, uuidv5_namespace_id):
1109
+ r"""
1110
+ with_uuidv5(OptParams self, std::string uuidv5_namespace_id) -> OptParams
1111
+
1112
+ Parameters
1113
+ ----------
1114
+ uuidv5_namespace_id: std::string
1115
+
1116
+ """
1117
+ return _AgxOpenPlxPyApi.OptParams_with_uuidv5(self, uuidv5_namespace_id)
1118
+
1119
+ def model_name(self):
1120
+ r"""model_name(OptParams self) -> std::optional< std::string > const &"""
1121
+ return _AgxOpenPlxPyApi.OptParams_model_name(self)
1122
+
1123
+ def uuidv5_namespace_id(self):
1124
+ r"""uuidv5_namespace_id(OptParams self) -> std::optional< std::string > const &"""
1125
+ return _AgxOpenPlxPyApi.OptParams_uuidv5_namespace_id(self)
1126
+
1127
+ def __init__(self):
1128
+ r"""__init__(OptParams self) -> OptParams"""
1129
+ _AgxOpenPlxPyApi.OptParams_swiginit(self, _AgxOpenPlxPyApi.new_OptParams())
1130
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_OptParams
1131
+
1132
+ # Register OptParams in _AgxOpenPlxPyApi:
1133
+ _AgxOpenPlxPyApi.OptParams_swigregister(OptParams)
1134
+
1135
+
1136
+ def load_from_string(*args):
1137
+ r"""
1138
+ load_from_string(Simulation simulation, std::string const & source, std::string const & bundle_paths, OptParams optional_parameters=agxopenplx::OptParams()) -> Result
1139
+
1140
+ Parameters
1141
+ ----------
1142
+ simulation: agxSDK::Simulation *
1143
+ source: std::string const &
1144
+ bundle_paths: std::string const &
1145
+ optional_parameters: agxopenplx::OptParams
1146
+
1147
+ """
1148
+ return _AgxOpenPlxPyApi.load_from_string(*args)
1149
+
1150
+ def load_from_file(*args):
1151
+ r"""
1152
+ load_from_file(openplx_file:str, bundle_paths:str, modelname:str=) -> Result { assembly(), openplx_object(), errors() }
1153
+
1154
+ Load openplxfile and return the OpenPLX model and corresponding AGX assembly
1155
+
1156
+ Parameters
1157
+ ----------
1158
+ openplx_file: path to the OpenPLX file
1159
+ openplx_file: path to the OpenPLX file
1160
+ bundle_paths: semicolon separated list of file paths to bundles
1161
+ optional_parameters: OptParams object, for example: OptParams().with_model_name(...).with_uuidv5(...)
1162
+
1163
+ load_from_file(openplx_file:str, bundle_paths:str, modelname:str=) -> Result { assembly(), openplx_object(), errors() }
1164
+
1165
+ Load openplxfile and return the OpenPLX model and corresponding AGX assembly
1166
+
1167
+ Parameters
1168
+ ----------
1169
+ openplx_file: path to the OpenPLX file
1170
+ openplx_file: path to the OpenPLX file
1171
+ bundle_paths: semicolon separated list of file paths to bundles
1172
+ optional_parameters: OptParams object, for example: OptParams().with_model_name(...).with_uuidv5(...)
1173
+
1174
+
1175
+ """
1176
+ return _AgxOpenPlxPyApi.load_from_file(*args)
1177
+
1178
+ def serialize_file(*args):
1179
+ r"""
1180
+ serialize_file(std::string const & path, std::string const & bundle_paths, OptParams optional_parameters=agxopenplx::OptParams()) -> std::string
1181
+
1182
+ Parameters
1183
+ ----------
1184
+ path: std::string const &
1185
+ bundle_paths: std::string const &
1186
+ optional_parameters: agxopenplx::OptParams
1187
+
1188
+ """
1189
+ return _AgxOpenPlxPyApi.serialize_file(*args)
1190
+
1191
+ def register_bundles(ctx):
1192
+ r"""
1193
+ register_bundles(OpenPlxContext ctx)
1194
+
1195
+ Parameters
1196
+ ----------
1197
+ ctx: openplx::Core::Api::OpenPlxContext &
1198
+
1199
+ """
1200
+ return _AgxOpenPlxPyApi.register_bundles(ctx)
1201
+
1202
+ def register_plugins(ctx, cache=0):
1203
+ r"""
1204
+ register_plugins(OpenPlxContext ctx, std::shared_ptr< agxopenplx::AgxCache > cache=0)
1205
+
1206
+ Parameters
1207
+ ----------
1208
+ ctx: openplx::Core::Api::OpenPlxContext &
1209
+ cache: std::shared_ptr< agxopenplx::AgxCache >
1210
+
1211
+ """
1212
+ return _AgxOpenPlxPyApi.register_plugins(ctx, cache)
1213
+
1214
+ def set_log_level(log_level_name):
1215
+ r"""
1216
+ set_log_level(std::string const & log_level_name)
1217
+
1218
+ Parameters
1219
+ ----------
1220
+ log_level_name: std::string const &
1221
+
1222
+ """
1223
+ return _AgxOpenPlxPyApi.set_log_level(log_level_name)
1224
+
1225
+ def check_if_migrate_hint_is_justified(current_version, errors):
1226
+ r"""
1227
+ check_if_migrate_hint_is_justified(std::string const & current_version, ErrorVector errors) -> std::string
1228
+
1229
+ Parameters
1230
+ ----------
1231
+ current_version: std::string const &
1232
+ errors: openplx::Errors const &
1233
+
1234
+ """
1235
+ return _AgxOpenPlxPyApi.check_if_migrate_hint_is_justified(current_version, errors)
1236
+
1237
+ def parse_and_evaluate_string(bundle_paths, source, modelname):
1238
+ r"""
1239
+ parse_and_evaluate_string(std::string const & bundle_paths, std::string const & source, std::string const & modelname) -> std::pair< std::shared_ptr< openplx::Core::Object >,openplx::Errors >
1240
+
1241
+ Parameters
1242
+ ----------
1243
+ bundle_paths: std::string const &
1244
+ source: std::string const &
1245
+ modelname: std::string const &
1246
+
1247
+ """
1248
+ return _AgxOpenPlxPyApi.parse_and_evaluate_string(bundle_paths, source, modelname)
1249
+
1250
+ def parseWithPlugin(arg1, key):
1251
+ r"""
1252
+ parseWithPlugin(std::shared_ptr< openplx::Plugin > arg1, std::string const & key) -> std::string
1253
+
1254
+ Parameters
1255
+ ----------
1256
+ arg1: std::shared_ptr< openplx::Plugin >
1257
+ key: std::string const &
1258
+
1259
+ """
1260
+ return _AgxOpenPlxPyApi.parseWithPlugin(arg1, key)
1261
+
1262
+ def get_error_strings(errors):
1263
+ r"""
1264
+ get_error_strings(ErrorVector errors) -> StringVector
1265
+
1266
+ Parameters
1267
+ ----------
1268
+ errors: openplx::Errors const &
1269
+
1270
+ """
1271
+ return _AgxOpenPlxPyApi.get_error_strings(errors)
1272
+
1273
+ def addVisuals(result, osg_root, debug_render_frames=False):
1274
+ r"""
1275
+ addVisuals(Result result, osg::Group * osg_root, bool debug_render_frames=False) -> bool
1276
+
1277
+ Parameters
1278
+ ----------
1279
+ result: agxopenplx::Result
1280
+ osg_root: osg::Group *
1281
+ debug_render_frames: bool
1282
+
1283
+ """
1284
+ return _AgxOpenPlxPyApi.addVisuals(result, osg_root, debug_render_frames)
1285
+
1286
+ def addDeformableVisualUpdaters(result, osg_root):
1287
+ r"""
1288
+ addDeformableVisualUpdaters(Result result, osg::Group * osg_root)
1289
+
1290
+ Parameters
1291
+ ----------
1292
+ result: agxopenplx::Result
1293
+ osg_root: osg::Group *
1294
+
1295
+ """
1296
+ return _AgxOpenPlxPyApi.addDeformableVisualUpdaters(result, osg_root)
1297
+
1298
+ def add_file_changed_listener(app, openplxfile):
1299
+ r"""
1300
+ add_file_changed_listener(agxOSG::ExampleApplication * app, std::string const & openplxfile)
1301
+
1302
+ Parameters
1303
+ ----------
1304
+ app: agxOSG::ExampleApplication *
1305
+ openplxfile: std::string const &
1306
+
1307
+ """
1308
+ return _AgxOpenPlxPyApi.add_file_changed_listener(app, openplxfile)
1309
+ class FileChangedListener(object):
1310
+ r"""Proxy of C++ agxopenplx::FileChangedListener class."""
1311
+
1312
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1313
+ __repr__ = _swig_repr
1314
+
1315
+ def __init__(self, file_to_track):
1316
+ r"""
1317
+ __init__(FileChangedListener self, std::string file_to_track) -> FileChangedListener
1318
+
1319
+ Parameters
1320
+ ----------
1321
+ file_to_track: std::string
1322
+
1323
+ """
1324
+ _AgxOpenPlxPyApi.FileChangedListener_swiginit(self, _AgxOpenPlxPyApi.new_FileChangedListener(file_to_track))
1325
+
1326
+ def preFrame(self, app):
1327
+ r"""
1328
+ preFrame(FileChangedListener self, agxOSG::ExampleApplication * app)
1329
+
1330
+ Parameters
1331
+ ----------
1332
+ app: agxOSG::ExampleApplication *
1333
+
1334
+ """
1335
+ return _AgxOpenPlxPyApi.FileChangedListener_preFrame(self, app)
1336
+
1337
+ def postFrame(self, arg2):
1338
+ r"""
1339
+ postFrame(FileChangedListener self, agxOSG::ExampleApplication * arg2)
1340
+
1341
+ Parameters
1342
+ ----------
1343
+ arg2: agxOSG::ExampleApplication *
1344
+
1345
+ """
1346
+ return _AgxOpenPlxPyApi.FileChangedListener_postFrame(self, arg2)
1347
+ __swig_destroy__ = _AgxOpenPlxPyApi.delete_FileChangedListener
1348
+
1349
+ # Register FileChangedListener in _AgxOpenPlxPyApi:
1350
+ _AgxOpenPlxPyApi.FileChangedListener_swigregister(FileChangedListener)
1351
+
1352
+
1353
+