Difference between revisions of "Mged simulation"

Line 11: Line 11:
 
|}
 
|}
 
<br style="clear: both" />
 
<br style="clear: both" />
In the mged terminal select the File menu, and then on the New... (file dialog button). A window will appear and a name for your new database will be required. For the purpose of this tutorial we will name the new database, sim1. Introduce the chosen name (sim1) in the "File name:" field and hit save.
+
In the mged terminal select the File menu, and then the New... (file dialog button). A window will appear and a name for your new database will be required. For the purpose of this tutorial we will name the new database, sim1. Introduce the chosen name (sim1) in the "File name:" field and hit save.
 
Now you have opened a new database. Next we want to add some geometry to the database. Something that we will have to simulate on.  
 
Now you have opened a new database. Next we want to add some geometry to the database. Something that we will have to simulate on.  
 
In the mged command window we will now type the following series of commands :
 
In the mged command window we will now type the following series of commands :
Line 18: Line 18:
 
  |<pre>
 
  |<pre>
 
mged> in
 
mged> in
Enter name of solid: box
+
Enter name of solid: cube
 
Enter solid type: rpp
 
Enter solid type: rpp
Enter XMIN, XMAX, YMIN, YMAX, ZMIN, ZMAX: -1 1 0 5 -1 1
+
Enter XMIN, XMAX, YMIN, YMAX, ZMIN, ZMAX: -1 1 -1 1 -1 1
 
</pre>
 
</pre>
 
|}
 
|}
 
<br style="clear: both" />
 
<br style="clear: both" />
 
 
The "in" command creates new geometry, it allows the user to type in the arguments to create a shape with the name provided by the second argument, in the example above is the name provided when "Enter name of solid:" appears on the screen. The arguments of the in command can be provided one by one, as in the example above or in one single line, like in the example below:
 
The "in" command creates new geometry, it allows the user to type in the arguments to create a shape with the name provided by the second argument, in the example above is the name provided when "Enter name of solid:" appears on the screen. The arguments of the in command can be provided one by one, as in the example above or in one single line, like in the example below:
 
 
<br>
 
<br>
 
{|align="left"
 
{|align="left"
 
  |<pre>
 
  |<pre>
mged> in box rpp -1 1 0 5 -1 1
+
mged> in cube rpp -1 1 -1 1 -1 1
 
</pre>
 
</pre>
 
|}
 
|}
 
<br style="clear: both" />
 
<br style="clear: both" />
 
 
We have so far a box, now we want to add a ground plane to our simulation.  
 
We have so far a box, now we want to add a ground plane to our simulation.  
 
 
<br>
 
<br>
 
{|align="left"
 
{|align="left"
 
  |<pre>
 
  |<pre>
mged> in ground rpp -15 15 -1 1 -15 15
+
mged> in gp rpp -15 15 -15 15 -1 1
 
</pre>
 
</pre>
 
|}
 
|}
 
<br style="clear: both" />
 
<br style="clear: both" />
 
 
You should see now 2 boxes on your screen, one perpendicular on the other one, with a little overlap between them.  
 
You should see now 2 boxes on your screen, one perpendicular on the other one, with a little overlap between them.  
 
Using the sed command we will select the box and translate it 100 units on the Y axis.
 
Using the sed command we will select the box and translate it 100 units on the Y axis.
 
 
<br>
 
<br>
 
{|align="left"
 
{|align="left"
 
  |<pre>
 
  |<pre>
 
mged> sed box
 
mged> sed box
mged> tra 0 100 0
+
mged> tra 0 0 100
 
mged> accept
 
mged> accept
 
</pre>
 
</pre>
Line 63: Line 57:
 
{|align="left"
 
{|align="left"
 
  |<pre>
 
  |<pre>
mged> r region1.r u box
+
mged> r cube.r u cube
mged> r region2.r u ground
+
mged> r gp.r u gp
 
</pre>
 
</pre>
 
|}
 
|}
 
<br style="clear: both" />
 
<br style="clear: both" />
 
 
Now we are ready to run the simulate command:
 
Now we are ready to run the simulate command:
 
 
<br>
 
<br>
 
{|align="left"
 
{|align="left"
Line 78: Line 70:
 
|}
 
|}
 
<br style="clear: both" />
 
<br style="clear: both" />
 
 
After the simulation runs its course, we will use the "who" command to find out what objects are being displayed.
 
After the simulation runs its course, we will use the "who" command to find out what objects are being displayed.
 
 
<br>
 
<br>
 
{|align="left"
 
{|align="left"
Line 88: Line 78:
 
|}
 
|}
 
<br style="clear: both" />
 
<br style="clear: both" />
 
 
You should get the following answer:
 
You should get the following answer:
 
 
<br>
 
<br>
 
{|align="left"
 
{|align="left"
Line 98: Line 86:
 
|}
 
|}
 
<br style="clear: both" />
 
<br style="clear: both" />
 
 
Now, we don't really want to display the box and the ground shapes, we already have them in the sim.c group so we will unload all the geometry(using the "Z" command) and will load only the simulate geometry(using the "draw sim.c" command).
 
Now, we don't really want to display the box and the ground shapes, we already have them in the sim.c group so we will unload all the geometry(using the "Z" command) and will load only the simulate geometry(using the "draw sim.c" command).
 
 
<br>
 
<br>
 
{|align="left"
 
{|align="left"
Line 109: Line 95:
 
|}
 
|}
 
<br style="clear: both" />
 
<br style="clear: both" />
 
 
Now to actually see the simulation we will raytrace it, using the "rt" command.
 
Now to actually see the simulation we will raytrace it, using the "rt" command.
 
 
<br>
 
<br>
 
{|align="left"
 
{|align="left"
Line 119: Line 103:
 
|}
 
|}
 
<br style="clear: both" />
 
<br style="clear: both" />
 +
To see the initial position of the cube just type :
 +
<br>
 +
{|align="left"
 +
|<pre>
 +
mged> draw cube.r
 +
</pre>
 +
|}

Revision as of 07:31, 11 September 2012


BRL-CAD recently integrated a new command in its mged tool, the simulate command. Those are the steps one should follow in order to run a simulation in the mged tool.

First open the mged tool, if you have BRL-CAD installed on your Linux system it should be easy, just type mged in a terminal and a mged terminal should open.

brlcad@brlcad: mged


In the mged terminal select the File menu, and then the New... (file dialog button). A window will appear and a name for your new database will be required. For the purpose of this tutorial we will name the new database, sim1. Introduce the chosen name (sim1) in the "File name:" field and hit save. Now you have opened a new database. Next we want to add some geometry to the database. Something that we will have to simulate on. In the mged command window we will now type the following series of commands :

mged> in
Enter name of solid: cube
Enter solid type: rpp
Enter XMIN, XMAX, YMIN, YMAX, ZMIN, ZMAX: -1 1 -1 1 -1 1


The "in" command creates new geometry, it allows the user to type in the arguments to create a shape with the name provided by the second argument, in the example above is the name provided when "Enter name of solid:" appears on the screen. The arguments of the in command can be provided one by one, as in the example above or in one single line, like in the example below:

mged> in cube rpp -1 1 -1 1 -1 1


We have so far a box, now we want to add a ground plane to our simulation.

mged> in gp rpp -15 15 -15 15 -1 1


You should see now 2 boxes on your screen, one perpendicular on the other one, with a little overlap between them. Using the sed command we will select the box and translate it 100 units on the Y axis.

mged> sed box
mged> tra 0 0 100
mged> accept


To be able to run the simulate command our geometry shapes should be grouped in regions to do this we will use the "r" command and create 2 regions for the box and the ground shapes.


mged> r cube.r u cube
mged> r gp.r u gp


Now we are ready to run the simulate command:

mged> simulate 100


After the simulation runs its course, we will use the "who" command to find out what objects are being displayed.

mged> who


You should get the following answer:

box ground sim.c


Now, we don't really want to display the box and the ground shapes, we already have them in the sim.c group so we will unload all the geometry(using the "Z" command) and will load only the simulate geometry(using the "draw sim.c" command).

mged> Z
mged> draw sim.c


Now to actually see the simulation we will raytrace it, using the "rt" command.

mged> rt


To see the initial position of the cube just type :

mged> draw cube.r