Commits

German Larrain committed 4d6552e Merge

Comments (0)

Files changed (2)

ars/model/simulator/physics.py

 	def get_mass(self):
 		return self._inner_object.getMass().mass
 	
+	def get_center_of_gravity(self):
+		return self._inner_object.getMass().c
+	
+	def get_inertia_tensor(self):
+		return self._inner_object.getMass().I
+	
 	def set_position(self, pos):
 		self._inner_object.setPosition(pos)
 	
+
+# Created on 2012.03.09
+#
+# @author: german
+
+from ars.app import Program
+
+class BodyTest1(Program):
+	def create_sim_objects(self):
+		self.sim.add_sphere(0.5, (1,10,1), density=1) # radius, center, density
+
+class BodyTest2(Program):
+	def create_sim_objects(self):
+		self.sim.add_cylinder(length=1.0, radius=1.0, center=(10,10,25), mass=4.67)
+
+def run_body_test():
+	sim_program = BodyTest1()
+	sim_program.start()
+	body = sim_program.sim.get_object("sphere").get_body()
+	print(body.get_mass())
+	print(body.get_position())
+	print(body.get_center_of_gravity())
+	print(body.get_inertia_tensor())
+	
+	sim_program = BodyTest2()
+	sim_program.start()
+	body = sim_program.sim.get_object("cylinder").get_body()
+	print(body.get_mass())
+	print(body.get_position())
+	print(body.get_center_of_gravity())
+	print(body.get_inertia_tensor())
+
+if __name__ == '__main__':
+	run_body_test()
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.