En este ejercicio se crea la clase cone por medio del editor visual. La clase cone representa un cono tridimensional.
En el ejercicio anterior se han utilizado las herramientas de modelado de UML para ampliar las clases circle y sphere. En este ejercicio va a utilizar las herramientas de modelado de UML para añadir la clase cone al proyecto. La clase cone, que hereda de la clase shape3d, calcula y muestra el área de superficie y el volumen en base al radio y la altura del cono. Puede añadir las herramientas de modelado de UML para añadir una clase al proyecto, y para añadir un atributo a una clase. Para editar el cuerpo del método, efectúe una doble pulsación en el método en el diagrama y edite el código fuente en el editor de código.
Puede añadir la clase al proyecto por medio de la vista Explorador de proyectos de C/C++. Puede identificar cualquier relación de herencia utilizando el asistente de Nueva clase/C++.
Ha añadido la clase cone al proyecto Shapes. Ahora puede utilizar las herramientas de modelado de UML para añadir clases y atributos a la nueva clase. El diagrama debe presentar un aspecto similar al de la figura siguiente:
La clase cone implementa los métodos getColor y setColor que define la clase shape básica.
Ha añadido los métodos getColor y setColor a la clase cone.
La clase cone implementa los métodos getSize y setSize que define la clase shape básica. El campo de tamaño almacena la altura del cono.
Acaba de añadir los métodos getSize y setSize a la clase cone.
La clase cone implementa los métodos getRadius y setRadius que define la clase shape básica. El campo de radio almacena el radio de la base del cono. La aplicación utiliza el radio para calcular la circunferencia y el volumen del cono.
Ha añadido los métodos getRadius y setRadius a la clase cone.
La clase cone implementa los métodos surfaceArea y volume que define la clase shapes3d. La fórmula que se utiliza para calcular el área de superficie de un cono es pi * r * (r + (r2 + h2)1/2), y la fórmula para calcular el volumen de un cono es 1/3 x pi x r2 h.
Ha añadido los métodos surfaceArea y volume a la clase cone.
La clase cone implementa los métodos set y print que define la clase shape básica.
{ cout << "Cone:" << "\n\tLength = " << getSize() << "\n\tArea = " << surfaceArea() << "\n\tVolume = " << volume() << "\n\tColor = " << getColor() << "\n\n"; };
Ha añadido los métodos print y set a la clase cone.
El archivo de clase cone.cpp contiene la implementación del método set, así como el constructor y el destructor. El debe modificar el cuerpo del método set para solicitar al usuario que entre el tamaño y el radio del cono. También debe editar el constructor por omisión para establecer los valores iniciales de la nueva clase cone.
void cone::set() { double size; double radius; string color; cout << "Entrar la altura del cono: "; cin >> size; setSize(size); cout << "Entrar el radio de la base del cone: "; cin >> radius; setRadius(radius); cout << "Entrar el color del cono: "; cin >> color; setColor(color); }
Ha completado el proyecto Shapes al añadir el método set al archivo de clase cone.cpp.
Antes de ejecutar la aplicación, debe añadir la sentencia de inclusión en la clase main.cpp para incluir la nueva clase cone. Puede ejecutar la aplicación y crear instancias de la nueva clase cone modificando la clase main.cpp.
//crear una instancia y ejecutar la clase cone cone c; c.print(); c.set(); c.print();
El programa muestra el tamaño, el color, el área de superficie y el volumen de la forma de cono y le solicita que especifique valores para la nueva instancia del cono.