|
10 | 10 | import org.mujoco.MuJoCoLib.mjModel; |
11 | 11 | import org.mujoco.MuJoCoLib.mjModel_; |
12 | 12 | import org.mujoco.MuJoCoLib.mjVFS; |
13 | | -import org.mujoco.MuJoCoModelManager; |
14 | 13 |
|
15 | 14 | import static org.junit.Assert.*; |
16 | 15 |
|
17 | | -import java.io.File; |
18 | | -import java.io.IOException; |
19 | 16 | import java.util.logging.Level; |
20 | 17 | import java.util.logging.Logger; |
21 | 18 |
|
|
25 | 22 |
|
26 | 23 | public class MuJoColibTest { |
27 | 24 | @Test |
28 | | - public void mujocoJNILoadTest() throws IOException { |
| 25 | + public void mujocoJNILoadTest() { |
29 | 26 | System.out.println(System.getProperty("org.bytedeco.javacpp.logger.debug")); |
30 | 27 | System.setProperty("org.bytedeco.javacpp.logger.debug", "true"); |
| 28 | + MuJoCoLib lib = new MuJoCoLib(); |
31 | 29 |
|
32 | 30 | System.out.println("Starting " + MuJoCoLib.mj_versionString().getString()); |
33 | | - |
34 | | - MuJoCoModelManager manager = new MuJoCoModelManager("humanoid/humanoid.xml"); |
35 | | - //MuJoCoModelManager manager = new MuJoCoModelManager(new File("/home/hephaestus/git/mujoco-java/model/humanoid/humanoid.xml")); |
36 | | - |
| 31 | + byte[] error = new byte[100]; |
| 32 | + int error_sz = 0; |
| 33 | + mjModel m = MuJoCoLib.mj_loadXML( |
| 34 | + "/home/hephaestus/git/mujoco-java/src/main/resources/mujoco/java/humanoid/humanoid.xml", null, error, |
| 35 | + error_sz); |
| 36 | + System.out.println("Humanoid model loaded " + m); |
| 37 | + mjData d = MuJoCoLib.mj_makeData(m); |
37 | 38 | try { |
38 | | - mjModel_ Maccessable = manager.getModel(); |
39 | | - mjData_ accessable = manager.getData(); |
40 | | - System.out.println("Run model for 10 seconds"); |
41 | | - while (accessable.time() < 10) { |
42 | | - manager.stepOne(); |
43 | | - manager.stepTwo(); |
44 | | - Thread.sleep(1); |
| 39 | + mjModel_ Maccessable = new mjModel_(m); |
| 40 | + try (mjData_ accessable = new mjData_(d)) { |
| 41 | + System.out.println("Run model for 10 seconds"); |
| 42 | + while (accessable.time() < 10) { |
| 43 | + MuJoCoLib.mj_step(m, d); |
| 44 | + Thread.sleep(1); |
| 45 | + |
| 46 | + } |
| 47 | + |
45 | 48 | } |
46 | 49 | } catch (Exception e) { |
47 | 50 | // TODO Auto-generated catch block |
48 | 51 | e.printStackTrace(); |
49 | 52 | } |
50 | 53 | System.out.println("Clean up data objects"); |
51 | | - manager.close(); |
| 54 | + |
| 55 | + MuJoCoLib.mj_deleteData(d); |
| 56 | + MuJoCoLib.mj_deleteModel(m); |
52 | 57 | } |
53 | 58 | } |
0 commit comments