imt-ring 1.6.26__tar.gz → 1.6.28__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {imt_ring-1.6.26 → imt_ring-1.6.28}/PKG-INFO +5 -1
- {imt_ring-1.6.26 → imt_ring-1.6.28}/pyproject.toml +1 -1
- {imt_ring-1.6.26 → imt_ring-1.6.28}/readme.md +4 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/imt_ring.egg-info/PKG-INFO +5 -1
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/__init__.py +4 -1
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/generator/base.py +10 -1
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/xml/from_xml.py +5 -1
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/rendering/mujoco_render.py +11 -2
- {imt_ring-1.6.26 → imt_ring-1.6.28}/setup.cfg +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/imt_ring.egg-info/SOURCES.txt +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/imt_ring.egg-info/dependency_links.txt +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/imt_ring.egg-info/requires.txt +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/imt_ring.egg-info/top_level.txt +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algebra.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/__init__.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/_random.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/custom_joints/__init__.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/custom_joints/rr_imp_joint.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/custom_joints/rr_joint.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/custom_joints/rsaddle_joint.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/custom_joints/suntay.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/dynamics.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/generator/__init__.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/generator/batch.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/generator/finalize_fns.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/generator/motion_artifacts.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/generator/pd_control.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/generator/setup_fns.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/generator/types.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/jcalc.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/kinematics.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/algorithms/sensors.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/base.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/__init__.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/branched.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/exclude/knee_trans_dof.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/exclude/standard_sys.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/exclude/standard_sys_rr_imp.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/inv_pendulum.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/knee_flexible_imus.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/spherical_stiff.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/symmetric.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_all_1.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_all_2.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_ang0_pos0.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_control.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_double_pendulum.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_free.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_kinematics.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_morph_system/four_seg_seg1.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_morph_system/four_seg_seg3.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_randomize_position.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_sensors.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_three_seg_seg2.xml +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/test_examples.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/xml/__init__.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/xml/abstract.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/xml/test_from_xml.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/xml/test_to_xml.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/xml/to_xml.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/maths.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/ml/__init__.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/ml/base.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/ml/callbacks.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/ml/ml_utils.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/ml/optimizer.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/ml/params/0x13e3518065c21cd8.pickle +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/ml/params/0x1d76628065a71e0f.pickle +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/ml/ringnet.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/ml/rnno_v1.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/ml/train.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/ml/training_loop.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/rendering/__init__.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/rendering/base_render.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/rendering/vispy_render.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/rendering/vispy_visuals.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/sim2real/__init__.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/sim2real/sim2real.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/spatial.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/sys_composer/__init__.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/sys_composer/delete_sys.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/sys_composer/inject_sys.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/sys_composer/morph_sys.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/__init__.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/backend.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/batchsize.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/colab.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/dataloader.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/dataloader_torch.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/hdf5.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/normalizer.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/path.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/randomize_sys.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/register_gym_envs/__init__.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/register_gym_envs/saddle.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/utils/utils.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_algebra.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_base.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_custom_joints.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_dynamics.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_generator.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_jcalc.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_jit.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_kinematics.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_maths.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_ml_utils.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_motion_artifacts.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_pd_control.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_quickstart_example.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_random.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_randomize.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_rcmg.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_render.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_sensors.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_sim2real.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_sys_composer.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_train.py +0 -0
- {imt_ring-1.6.26 → imt_ring-1.6.28}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: imt-ring
|
3
|
-
Version: 1.6.
|
3
|
+
Version: 1.6.28
|
4
4
|
Summary: RING: Recurrent Inertial Graph-based Estimator
|
5
5
|
Author-email: Simon Bachhuber <simon.bachhuber@fau.de>
|
6
6
|
Project-URL: Homepage, https://github.com/SimiPixel/ring
|
@@ -38,6 +38,10 @@ Requires-Dist: nbmake; extra == "dev"
|
|
38
38
|
# Recurrent Inertial Graph-based Estimator (RING)
|
39
39
|
<img src="https://raw.githubusercontent.com/simon-bachhuber/ring/main/docs/img/coverage_badge.svg" height="20" />
|
40
40
|
|
41
|
+
> **ℹ️ Tip:**
|
42
|
+
>
|
43
|
+
> Check out my new plug-and-play interface for inertial motion tracking (RING included) [here](https://github.com/simon-bachhuber/imt.git).
|
44
|
+
|
41
45
|
## Installation
|
42
46
|
|
43
47
|
Supports `Python=3.10/3.11/3.12` (tested).
|
@@ -5,6 +5,10 @@
|
|
5
5
|
# Recurrent Inertial Graph-based Estimator (RING)
|
6
6
|
<img src="https://raw.githubusercontent.com/simon-bachhuber/ring/main/docs/img/coverage_badge.svg" height="20" />
|
7
7
|
|
8
|
+
> **ℹ️ Tip:**
|
9
|
+
>
|
10
|
+
> Check out my new plug-and-play interface for inertial motion tracking (RING included) [here](https://github.com/simon-bachhuber/imt.git).
|
11
|
+
|
8
12
|
## Installation
|
9
13
|
|
10
14
|
Supports `Python=3.10/3.11/3.12` (tested).
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: imt-ring
|
3
|
-
Version: 1.6.
|
3
|
+
Version: 1.6.28
|
4
4
|
Summary: RING: Recurrent Inertial Graph-based Estimator
|
5
5
|
Author-email: Simon Bachhuber <simon.bachhuber@fau.de>
|
6
6
|
Project-URL: Homepage, https://github.com/SimiPixel/ring
|
@@ -38,6 +38,10 @@ Requires-Dist: nbmake; extra == "dev"
|
|
38
38
|
# Recurrent Inertial Graph-based Estimator (RING)
|
39
39
|
<img src="https://raw.githubusercontent.com/simon-bachhuber/ring/main/docs/img/coverage_badge.svg" height="20" />
|
40
40
|
|
41
|
+
> **ℹ️ Tip:**
|
42
|
+
>
|
43
|
+
> Check out my new plug-and-play interface for inertial motion tracking (RING included) [here](https://github.com/simon-bachhuber/imt.git).
|
44
|
+
|
41
45
|
## Installation
|
42
46
|
|
43
47
|
Supports `Python=3.10/3.11/3.12` (tested).
|
@@ -98,7 +98,10 @@ def RING(lam: list[int] | None, Ts: float | None, **kwargs) -> ml.AbstractFilter
|
|
98
98
|
add_Ts = True
|
99
99
|
|
100
100
|
ringnet = ml.RING(
|
101
|
-
params=params,
|
101
|
+
params=params,
|
102
|
+
lam=None if lam is None else tuple(lam),
|
103
|
+
jit=config.pop("jit", False),
|
104
|
+
name="RING",
|
102
105
|
)
|
103
106
|
ringnet = ml.base.ScaleX_FilterWrapper(ringnet)
|
104
107
|
if config["use_lpf"]:
|
@@ -55,6 +55,11 @@ class RCMG:
|
|
55
55
|
) -> None:
|
56
56
|
"Random Chain Motion Generator"
|
57
57
|
|
58
|
+
# add some default values
|
59
|
+
randomize_hz_kwargs_defaults = dict(add_dt=True)
|
60
|
+
randomize_hz_kwargs_defaults.update(randomize_hz_kwargs)
|
61
|
+
randomize_hz_kwargs = randomize_hz_kwargs_defaults
|
62
|
+
|
58
63
|
sys, config = utils.to_list(sys), utils.to_list(config)
|
59
64
|
sys_ml = sys[0] if sys_ml is None else sys_ml
|
60
65
|
|
@@ -409,7 +414,11 @@ def _build_mconfig_batched_generator(
|
|
409
414
|
@jax.vmap
|
410
415
|
def _vmapped_context(key, q, sys):
|
411
416
|
x, _ = jax.vmap(kinematics.forward_kinematics_transforms, (None, 0))(sys, q)
|
412
|
-
X =
|
417
|
+
X = (
|
418
|
+
{"dt": jnp.array(sys.dt)}
|
419
|
+
if (randomize_hz and randomize_hz_kwargs["add_dt"])
|
420
|
+
else {}
|
421
|
+
)
|
413
422
|
Xy, extras = (X, {}), (key, q, x, sys)
|
414
423
|
return _finalize_fn(Xy, extras)
|
415
424
|
|
@@ -2,6 +2,7 @@ from xml.etree import ElementTree
|
|
2
2
|
|
3
3
|
import jax
|
4
4
|
import numpy as np
|
5
|
+
|
5
6
|
from ring import base
|
6
7
|
from ring.algorithms import jcalc
|
7
8
|
from ring.utils import parse_path
|
@@ -181,7 +182,10 @@ def load_sys_from_str(xml_str: str, seed: int = 1) -> base.System:
|
|
181
182
|
|
182
183
|
link_parents[current_link_idx] = parent
|
183
184
|
link_types[current_link_idx] = current_link_typ
|
184
|
-
|
185
|
+
current_name = body.attrib["name"]
|
186
|
+
link_names[current_link_idx] = (
|
187
|
+
current_name if isinstance(current_name, str) else str(int(current_name))
|
188
|
+
)
|
185
189
|
|
186
190
|
transform = abstract.AbsTrans.from_xml(body.attrib)
|
187
191
|
pos_min, pos_max = abstract.AbsPosMinMax.from_xml(body.attrib, transform.pos)
|
@@ -8,7 +8,10 @@ from ring import maths
|
|
8
8
|
|
9
9
|
_skybox = """<texture name="skybox" type="skybox" builtin="gradient" rgb1=".4 .6 .8" rgb2="0 0 0" width="800" height="800" mark="random" markrgb="1 1 1"/>""" # noqa: E501
|
10
10
|
_skybox_white = """<texture name="skybox" type="skybox" builtin="gradient" rgb1="1 1 1" rgb2="1 1 1" width="800" height="800" mark="random" markrgb="1 1 1"/>""" # noqa: E501
|
11
|
-
|
11
|
+
|
12
|
+
|
13
|
+
def _floor(floor_z: float) -> str:
|
14
|
+
return f"""<geom name="floor" pos="0 0 {floor_z}" size="0 0 1" type="plane" material="matplane" mass="0"/>""" # noqa: E501
|
12
15
|
|
13
16
|
|
14
17
|
def _build_model_of_geoms(
|
@@ -16,6 +19,7 @@ def _build_model_of_geoms(
|
|
16
19
|
cameras: dict[int, Sequence[str]],
|
17
20
|
lights: dict[int, Sequence[str]],
|
18
21
|
floor: bool,
|
22
|
+
floor_z: float,
|
19
23
|
stars: bool,
|
20
24
|
debug: bool,
|
21
25
|
) -> mujoco.MjModel:
|
@@ -75,6 +79,8 @@ def _build_model_of_geoms(
|
|
75
79
|
<asset>
|
76
80
|
<texture name="texplane" type="2d" builtin="checker" rgb1=".25 .25 .25" rgb2=".3 .3 .3" width="512" height="512" mark="cross" markrgb=".8 .8 .8"/>
|
77
81
|
<material name="matplane" reflectance="0.3" texture="texplane" texrepeat="1 1" texuniform="true"/>
|
82
|
+
<texture type="2d" name="groundplane" builtin="checker" mark="edge" rgb1="0.2 0.3 0.4" rgb2="0.1 0.2 0.3" markrgb="0.8 0.8 0.8" width="300" height="300"/>
|
83
|
+
<material name="groundplane" texture="groundplane" texuniform="true" texrepeat="2 2" reflectance="0.2"/>
|
78
84
|
{_skybox if stars else ''}
|
79
85
|
<texture name="grid" type="2d" builtin="checker" rgb1=".1 .2 .3" rgb2=".2 .3 .4" width="300" height="300" mark="edge" markrgb=".2 .3 .4"/>
|
80
86
|
<material name="grid" texture="grid" texrepeat="1 1" texuniform="true" reflectance=".2"/>
|
@@ -92,7 +98,7 @@ def _build_model_of_geoms(
|
|
92
98
|
<camera pos="0 -1 1" name="target" mode="targetbodycom" target="{targetbody}"/>
|
93
99
|
<camera pos="0 -3 3" name="targetfar" mode="targetbodycom" target="{targetbody}"/>
|
94
100
|
<camera pos="0 -5 5" name="targetFar" mode="targetbodycom" target="{targetbody}"/>
|
95
|
-
{_floor if floor else ''}
|
101
|
+
{_floor(floor_z) if floor else ''}
|
96
102
|
{inside_worldbody_cameras}
|
97
103
|
{inside_worldbody_lights}
|
98
104
|
{inside_worldbody}
|
@@ -169,6 +175,7 @@ class MujocoScene:
|
|
169
175
|
add_lights: dict[int, str | Sequence[str]] = _default_lights,
|
170
176
|
show_stars: bool = True,
|
171
177
|
show_floor: bool = True,
|
178
|
+
floor_z: float = -0.84,
|
172
179
|
debug: bool = False,
|
173
180
|
) -> None:
|
174
181
|
self.debug = debug
|
@@ -183,6 +190,7 @@ class MujocoScene:
|
|
183
190
|
self.add_cameras, self.add_lights = to_list(add_cameras), to_list(add_lights)
|
184
191
|
self.show_stars = show_stars
|
185
192
|
self.show_floor = show_floor
|
193
|
+
self.floor_z = floor_z
|
186
194
|
|
187
195
|
def init(self, geoms: list[base.Geometry]):
|
188
196
|
self._parent_ids = list(set([geom.link_idx for geom in geoms]))
|
@@ -191,6 +199,7 @@ class MujocoScene:
|
|
191
199
|
self.add_cameras,
|
192
200
|
self.add_lights,
|
193
201
|
floor=self.show_floor,
|
202
|
+
floor_z=self.floor_z,
|
194
203
|
stars=self.show_stars,
|
195
204
|
debug=self.debug,
|
196
205
|
)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_morph_system/four_seg_seg1.xml
RENAMED
File without changes
|
{imt_ring-1.6.26 → imt_ring-1.6.28}/src/ring/io/examples/test_morph_system/four_seg_seg3.xml
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|