Ticket #945 (closed task: fixed)
soy._datatypes.BodyPosition as list-like object
|Reported by:||ArcRiley||Owned by:||JonNeal|
Description (last modified by ArcRiley) (diff)
Write a datatype called BodyPosition. The __cinit__ will take the Body it's to use as a required argument and store it in self.
It will appear and work much like a Python list, except no .append .remove .pop etc (since it's size is immutable). Attempts to access or set (__getitem__ and __setitem__ python methods) dimensions > 3 will raise a IndexError: position index out of range
Setting one of it's items via BodyPosition = will set the parent instance's ._position. A similar interface could be available via BodyPosition.x (x property).
Body.position.get should return an instance of this class. Body.position.set should accept a tuple, list, or BodyPosition. The latter will copy another Body's .position at that moment.