Usuario:


Soluciones Simples

Storyboard

>Modelo

ID:(1079, 0)



OSP Figuras Geométricas 3D

Imagen

>Top


Se puede generar una caja (box):

en forma relativemente simple con el código:

```

/**

* www.opensourcephysics.org/

* @author Wolfgang Christian

*/

public class Box3DApp {

public static void main(String[] args) {

// create a drawing frame and a drawing panel

Display3DFrame frame = new Display3DFrame("3D Demo");

frame.setPreferredMinMax(-10, 10, -10, 10, -10, 10);

frame.setDecorationType(org.opensourcephysics.display3d.core.VisualizationHints.DECORATION_AXES);

frame.setAllowQuickRedraw(false); // use shading when rotating

Element block = new ElementBox();

block.setXYZ(0, 0, 0);

block.setSizeXYZ(6, 6, 3);

block.getStyle().setFillColor(Color.RED);

block.getStyle().setResolution(new Resolution(6, 6, 3)); // divide block into subblocks

frame.addElement(block);

frame.setVisible(true);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

```

ID:(2430, 0)



Parametrización del Display3DFrame

Descripción

>Top


La definición de tamaño se realiza con la función setPreferredMinMax y tiene el formato:

```

frame.setPreferredMinMax(minx,maxx,miny,maxy);

```

En esta clase los ejes se denominan adornos y existen diferentes alternativas. Todas ellas se pueden llamar directamente de la clase con org.opensourcephysics.display3d.core.VisualizationHints. En este caso elegimos desplegar ejes:

```

frame.setDecorationType(VisualizationHints.DECORATION_AXES);

```

Finalmente se puede parametrizar como se actualiza la imagen. En este caso evitamos el re dibujar rápido cuando rota:

```

frame.setAllowQuickRedraw(false);

```

Para terminar de definir el fram lo seteamos como visible:

```

frame.setVisible(true);

```

y le incluimos los comando de cierre

```

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

```

ID:(1226, 0)



Agregar Elementos

Descripción

>Top


Si deseamos agregar una forma la debemos crear mediante el comando ElementBox:

```

Element block = new ElementBox();

```

La ubicacion del centro de la caja se fija mediante el método setXYZ

```

block.setXYZ(0, 0, 0);

```

El tamaño de la caja se define con el método setSizeXYZ

```

block.setSizeXYZ(6, 6, 3);

```

ID:(1227, 0)



Parametrización de Elementos

Descripción

>Top


Para fijar el color del cubo (de fondo) se empela el método setFillColor:

```

block.getStyle().setFillColor(Color.RED);

```

La resolución se puede modificar con el método setResolution creando un objeto del tipo Resolution:

```

block.getStyle().setResolution(new Resolution(6, 6, 3));

```

Finalmente debe ser asociada al frame para que se muestre:

```

frame.addElement(block);

```

ID:(1228, 0)